Все мы знаем микроконтроллер Arduino, но не многие знают, что есть более дешевые микроконтроллеры, которые продаются без “обвески” а просто микросхемой. Но такие контроллеры потребляют гораздо меньше энергии и их может хватать вполне для определенных нужд. В этой же статье мы и рассмотрим ATtiny84.
Микроконтроллер ATtiny84 выглядит следующим образом:
Прежде чем приступить к материалу, я Вас попрошу, если нравится то, что я делаю и хотите следить за моей деятельностью, то рекомендую подписаться на мой телеграмм канал: https://t.me/ypavla
Там я публикую новости о вышедших видео, статьях и разные устройства для умного дома и не только показываю.
Спасибо за внимание, теперь продолжим.
Его можно приобрести в во многих магазинах электронных компонентов, но он также есть и на Aliexpress: http://ali.pub/2uqzgp
Распиновка данной микросхемы выглядит таким образом:
В данной схеме все очень подробно показано. Думаю не стоит объяснять сколько в данной плате пинов ввода-вывода и какой у нее потенциал.
Ну чтож давайте перейдем к программированию данного контроллера. Программировать будем с помощью arduino uno, точно также как программировали attiny13 в данной статье тут.
Чтоб запрограммировать Attiny84 или Attiny84a не важно они одинаково программируются. Нужно подключить микроконтроллер к Arduino таким образом:
Программируется Attiny84 как видно из схемы по тем же 6 пинам что и Attiny13. Конденсатор в данной схеме не обязателен, но его рекомендуют, я программирую без него.
Для программирования через Arduino, в саму плату Arduino должен быть залит скетч ArduinoISP который берется из стандартных примеров.
После заливки скетча ArduinoISP нужно добавить наш микроконтроллер в среду программирования Arduino IDE. Чтоб это сделать, нужно перейти в Файл -> Настройки. В поле настройки в графе “Дополнительные ссылки для Менеджера плат:” нужно добавить следующую ссылку: http://drazzy.com/package_drazzy.com_index.json
После этого нужно зайти Инструменты -> Плата -> Менеджер Плат и в открывшемся окне набрать Attiny и установить ATTinyCore.
После установки ATTinyCore мы сможем выбрать в меню Инструменты -> плата: Attiny84
Все, теперь для заливки любого скетча нужно выбирать вот такие параметры, как показаны на картинке:
После всех данных манипуляций и выбора правильных параметров в вкладке инструменты, у нас все должно загрузиться без проблем.
Вот пример Blink для демонстрации.
/* Blink (modified slightly for ATTiny84/44 ICs Turns on an LED on for one second, then off for one second, repeatedly. This example code is in the public domain. */ // ATTIny84 / 44 does not have Pin 13, so we use pin 7 instead. // A current limiting resistor should be connected in line with the LED. int led = 0; // the setup routine runs once when you press reset: void setup() { // initialize the digital pin as an output. pinMode(led, OUTPUT); } // the loop routine runs over and over again forever: void loop() { digitalWrite(led, HIGH); // turn the LED on (HIGH is the voltage level) delay(1000); // wait for a second digitalWrite(led, LOW); // turn the LED off by making the voltage LOW delay(1000); // wait for a second }
Вот схема подключения к данному скетчу. Заместо ардуино можно использовать любой источник питания 5V.
Думаю теперь у Вас не должно возникнуть никаких проблем, если все же возникнут, не стесняйтесь пишите в комментариях обязательно помогу.