Пример мигания ATmega328P-PU не работает

atmega328 wires prototype

Я перешел с Arduino на голый ATmega328P-PU (для экономии энергии). Сначала я хотел запустить блинк-скрипт, чтобы убедиться, что все работает. Для этого я прошил загрузчик и залил на микропроцессор блинк-скрипт. На ардуино внутренний пин успешно мигал. Затем я размонтировал ATmega и вставил ее в макетную плату.

Я все подключил. Светодиод к GND и контакту 13, с другой стороны я подключил 5V от батареи и GND, конечно. Между светодиодом и GND я добавил 220 Ом, и, что удивительно, если я запитываю его от батареи внутри Arduino, внутренний светодиод мигает, а мой собственный светодиод (тот, что с 220 Ом) - нет. Если я включаю Arduino через USB, они оба мигают.

Есть ли у вас идеи, как это исправить?

, 👍-1

Обсуждение

Вы подключали к Атмеге на макетной плате Кристалл 16МГц с конденсаторами 22 Пикофарад??? Это важно, а вы не упомянули об этом., @Shams M.Monem

Пожалуйста, добавьте свою схему подключения в обоих состояниях, когда она успешно мигает и когда нет, потому что не очень понятно, что вы имеете в виду., @Shams M.Monem

Я сделаю это, как только снова буду дома. И нет, я еще не добавил ни одну из этих частей. Но разве у ATmega нет внутренней тактовой частоты 8 МГц? Как я могу использовать это?, @Cowboy_Patrick

Вам нужно будет «записать загрузчик», чтобы настроить предохранители для использования внутренних 8 МГц, но если вы запрограммировали ATMega328 как Arduino Uno, вам нужно будет подключить эти компоненты., @Shams M.Monem


1 ответ


Лучший ответ:

2

Это может вам очень помочь

ATMega328 — это 8-битный AVR-микроконтроллер с широким набором функций. Для того, чтобы эта микросхема работала, необходимо иметь «источник тактовой частоты». По умолчанию в Arduino UNO используется кварцевый осциллятор 16 МГц с двумя конденсаторами емкостью 22 пФ. для генерации тактового сигнала, поэтому, если вы взяли ATMega328 из Arduino и поместили его в макетную плату, вы должны подключить эти компоненты, чтобы он работал, а также подтянуть контакт RESET к VCC.

Atmega328 имеет много внутренних калиброванных генераторов, из них 8МГц и 1МГц и многое другое, но для того, чтобы они работали, вам нужно сначала настроить их, настроив так называемые "высокие предохранители и низкие предохранители", которые управляют много чего в микроконтроллере от них они определяют источник тактирования.

Поскольку как прожечь загрузчик для установки фьюзов - это не тема вопроса, я не буду вдаваться в подробности.

,

Относительно «множества внутренних калиброванных генераторов»: на самом деле это один генератор с программируемым предварительным делителем (т.е. делителем частоты)., @Edgar Bonet

@EdgarBonet Хорошо, может быть, я пропустил это ... Спасибо за заметку. Должен ли я отредактировать ответ или оставить его?, @Shams M.Monem

Вы можете редактировать, если хотите. В противном случае не беспокойтесь: я просто придираюсь, а ваш ответ — отличный., @Edgar Bonet