Ключевое ?лово

vk

 Так уж получилось ,что мне пришли Attiny13 с заблокированным фьюзом RSTDISBL - в ячейках фьюзов был зашит мусор.Паралельно с перепиской с продавцом начались поиски решения проблемы.

Напомню,что у большинства микроконтроллеров Atmel вывод reset можно перепрограммировать в обычный вывод ,и в этом случае прошивка по SPI становится недоступно - программирование в этом случае возможно только через HVSP / HVPP программаторы:

Подробнее: Востанавливаем фьюзы на микроконтроллерах Attiny через Arduino

Микроконтроллеры Atmega обычно программируются через интерфейс ISP (SPI),но для этого необходимо,хоть и недорогой,но всетаки программатор. Данный способ для подключения использует 5 проводов (SCK, MISO, MOSI, reset, GND).

Но используя специальный загрузчик, зашитый в нижнюю область памяти микроконтроллера  можно прошивать через последовательный порт используя выводы (RX, TX ,reset, GND) - Так прошиваются платы Arduino, на которых установлена микросхема переходник USB-RS232. Загрузчик активируется командой сброса на выводе reset микроконтроллера и ждет очень небольшой промежуток времени, если передача по последовтельному порту не началась, то управление переходит на нулевой адрес микроконтроллера, где находится основная программа.

Подробнее: Конструктор Bootloader`а для Arduino

Превращаем Arduino Duemilanove в Uno

Существует 2 разновидности Arduno плат (не считая микро/мини варианты) на основе микроконтроллера ATMEGA328P ,которые отличаются небольшими схематическими изменениями:

Arduino Duemilanove - более старый вариант платы,где переходником USB-RS232 служит микросхема FT232RL

Arduino Uno - более новый вариант,где переходником USB-RS232 служит микроконтроллер ATMega8U2.Соответственно рядом с ним имеется SPI разъем для её программирования.

На этом основные различия схемы заканчиваются..Но имеется различие ещё и в загрузчиках.В Duemilanove он занимает 2 кб,а в UNO 512 байт ! 

Подробнее: Превращаем Arduino Duemilanove в Uno

Добавляем поддержку не родных м/к в среду Arduino IDE

Иногда можно использовать в своих проектах умного дома более простые или слабые микроконтроллеры,где ресурсов может быть достаточно для простых операций -Такие микроконтроллеры дешевле.Кроме программирования таких микроконтроллеров в более сложной среде разработки в WinAVR или CodeVisionAVR можно использовать среду Arduino IDE,добавив их поддержку.Иногда могут пригодится микроконтроллеры с бОльшим количеством портов,например Atmega16 и Atmega32 - их так же можно программировать в Arduino.

 

Подробнее: Добавляем поддержку не родных м/к в среду Arduino IDE

 Прошивка микроконтроллеров Atmega без arduino через USBasp:

SAM 2685Существуют простые и дешевые программаторы для прошивки м/к Atmega ,которые поддерживает среда Arduino IDE- необходимо просто выбрать соотвествующий программатор USBasp в настройках Arduino IDE.USBasp  необходим,если вы просто прошиваете микроконтроллеры Amtel.Программатор основан на м/к Atmega 8 и использует програмный USB.

Подробнее: Прошивка микроконтроллеров Atmega через USBasp

Home`s Smart © 2013-2016. г.Киров.
Цитирование материалов возможно только со ссылкой на сайт. Использование фотоматериалов только с разрешения авторов.