Съдържание:
Видео: Програмиране на ATTiny85, ATTiny84 и ATMega328P: Arduino като ISP: 9 стъпки (със снимки)
2024 Автор: John Day | [email protected]. Последно модифициран: 2024-01-30 07:54
Предговор
Наскоро разработвах няколко проекта за IoT, базирани на ESP8266, и открих, че основният процесор се бори да изпълни всички задачи, от които се нуждаеше, за да управлява, затова реших да разпределя някои от по -малко важните дейности на различен микроконтролер (и) в по този начин освобождавайки ESP8266, за да се заеме с работата си като IoT устройство.
Като се има предвид, че исках да публикувам проекта си на възможно най -широка аудитория, реших да използвам Arduino IDE като избрана платформа за разработка, тъй като има толкова широко поддържана общност.
Ограничения при проектирането
За да осигуря разумно разпространение на целеви устройства, позволяващи избор на подходящ микроконтролер за конкретното приложение, се спрях на следните части на Atmel; ATMega328P, ATTiny84 и ATTiny85. За да огранича сложността на необходимия програмист, ограничих избора на часовник до вътрешен за всички устройства и 16 MHz външен само за ATMega328P и ATTiny84.
Това, което следва, е колекция от бележки за програмиране с Arduino и описание на това как съставих прост програмист, базиран на Arduino Uno за тези устройства (Снимки по -горе).
Какви части са ми необходими?
За да изградите програмиста, ще ви трябват следните части
- 1 от Arduino Uno
- 2 изключени 28 -пинови DIP гнезда с нулева сила на вмъкване (ZIF) (за задържане на ATMega328P, ATTiny85, ATTiny84)
- 1 от прототипен щит на Arduino (имам моя тук;
- 2 изключени 5 мм светодиода
- 2 изключени 1K резистора
- 1 от 10K резистор
- 4 от 22pF керамични кондензатори
- 2 изключени кристала на 16MHz
- 3 от 0,1uF керамични кондензатори
- 1 от 47uF електролитен кондензатор
- 1 от 10uF електролитен кондензатор
- Тел за опаковане с различни дължини.
Какъв софтуер ми трябва?
Arduino IDE 1.6.9
Какви умения са ми необходими?
- Познаване на Arduino IDE
- Известни познания по електроника и как да запоявате
- Голяма ръчна сръчност
- Товарене на търпение и добро зрение
Обхванати теми
- Общо въведение в програмирането на микроконтролери Atmel
- ISP или Bootloader: Всичко е малко объркващо
- Преглед на веригата
- Настройване на вашия програмист
- Използване на вашия Arduino ISP програмист
- Разработване на код в целевата ви система
- Разбрах
- Заключение
- Използвани препратки
Опровержение
Както винаги, вие използвате тези инструкции на свой собствен риск и те не се подкрепят
Стъпка 1: Общо въведение в програмирането на микроконтролери Atmel
Има два метода за програмиране на микроконтролери Atmel;
- В системното програмиране (ISP),
- Самопрограмиране (чрез буутлоудър).
Първият метод (1) директно програмира микроконтролера чрез SPI интерфейса след първо пускане на устройството в нулиране. Освен ако не е указано друго, компилирана изпълнима програма -източник се записва на устройството постепенно в кодовата памет, откъдето се изпълнява при стартиране. Има много ISP устройства, способни да програмират Atmel устройства, някои от които са (снимка 1); AVRISPmkII, Atmel-ICE, Olimex AVR-ISP-MK2, Olimex AVR-ISP500. Снимка 2 показва как ISP устройството се свързва с ATMega328P (странно маркиран ICSP) на платката Arduino Uno R3 (снимка 3 дава извода на ISP). Също така е възможно да се програмира микроконтролер Atmel чрез неговия SPI интерфейс, използвайки Arduino Uno като ISP (снимка 4), тук Uno се използва за програмиране на ATMega328P.
Последният метод (2) използва малък код, известен като „bootloader“, постоянно пребиваващ в изпълнимия код на паметта (обикновено заключен, за да се предотврати случайно презаписване pic 5). Този код се изпълнява първо при включване или нулиране на устройството и позволява на микроконтролера да се програмира отново с нов код, получен чрез един от неговите интерфейси от източник, външен за себе си. Методът за зареждане се използва от Arduino IDE за препрограмиране на Arduinos, картографиран като USB комуникационен порт на компютъра (или MAC, Linux кутия и т.н., снимка 6) и в случай на Arduino Uno комуникира с устройството Atmel чрез него сериен интерфейс на IC пинове 2 и 3 на ATMega328P. Също така Arduino Uno (с премахнат микроконтролер ATMega328P) може да се използва за програмиране на ATMega328P чрез метода на зареждащото устройство, ефективно действащ като USB към сериен адаптер (снимка 7).
Какво е USB към сериен адаптер?
USB към сериен адаптер е част от хардуера, който се включва в USB порта на вашия компютър и прилича на сериен com порт (наследство от по-ранни времена, когато компютрите са използвали сериен комуникационен стандарт, известен като EIA-232, V24 или RS232), който ви позволява да изпраща и получава серийни данни на същите електрически нива на микроконтролера. Когато изберете Инструменти -> Порт -> COMx от IDE на Arduino, вие свързвате/свързвате вашия компютър към вашия Arduino.
Подобно устройство понякога се нарича FTDI (снимка 8, което всъщност е търговско наименование) или CH340G и т.н. По-долу.
За по -голяма яснота снимка 9 идентифицира двете устройства на Atmel и съответните им ISP конектори на Arduino Uno R3.
Забележка 1: Ако решите да преминете по маршрута на устройството за FTDI, уверете се, че купувате от реномиран продавач, тъй като на пазара имаше много евтини фалшиви устройства, които се провалиха при прилагане на актуализация на Windows.
Препоръчано:
Arduino като ISP -- Записване на шестнадесетичен файл в AVR -- Предпазител в AVR -- Arduino като програмист: 10 стъпки
Arduino като ISP || Записване на шестнадесетичен файл в AVR || Предпазител в AVR || Arduino като програмист: ……………………… Моля АБОНИРАЙТЕ се за канала ми в YouTube за още видеоклипове …….. Тази статия е всичко за arduino като isp. Ако искате да качите шестнадесетичен файл или ако искате да настроите предпазителя си в AVR, няма нужда да купувате програмист, можете да направите
ATtiny85 Носене на вибрационни проследяване на активност Гледане и програмиране ATtiny85 с Arduino Uno: 4 стъпки (със снимки)
ATtiny85 Носене на вибриращи проследяване на активност Гледане и програмиране ATtiny85 с Arduino Uno: Как да направим часовника за проследяване на носимите дейности? Това е приспособление за носене, предназначено да вибрира, когато открие застой. Прекарвате ли по -голямата част от времето си на компютъра като мен? Седите ли с часове, без да осъзнавате? Тогава това устройство е
Как да запишете ATTiny85, използвайки Arduino-Mega като ISP: 5 стъпки
Как да запишете ATTiny85, използвайки Arduino -Mega като ISP: Сътрудници - Sayan Wadadar, Chiranjib Kundu Програмиране на ATTiny85, използвайки Arduino MEGA2560 като ISP. Преди няколко месеца се опитвах да свия проекта си Arduino, използвайки моя Attiny 85 ic. Това беше първият път, когато се опитвах да програмирам 20u ATTiny 85, използвайки
Програмиране на чипове с вашия Arduino - AVR ISP, покриващ ATTiny85, ATTiny2313 и ATMega328: 3 стъпки
Програмиране на чипове с вашия Arduino - AVR ISP, покриващ ATTiny85, ATTiny2313 и ATMega328: Намерих това като чернова от преди много години. Това все още е полезно поне за мен, така че ще го публикувам! Той обхваща програмирането на AVR Microco
Arduino Uno за програмиране ATTINY84 (Arduino V. 1.8.5): 6 стъпки
Arduino Uno за програмиране ATTINY84 (Arduino V. 1.8.5): Използване на Arduino Uno за програмиране на ATTINY84-20PU (елемент от Digikey # ATTINY84-20-PU-ND). Тази инструкция показва как да използвате платформата Arduino за работа с физически по -малки процесори, като ATtiny84 (84/44/24). Този пример е специално за