ПРОГРАММИРУЕМ ГОЛЫЙ МК
Короче... Сначала надо установить специальное ПО. Во-первых, это драйверы USBasp программатора. Другие варианты, типа программатора Громова и прочую херню мы тут рассматривать не будем. Во-вторых, скачиваем SinaProg. В-третьих, скачиваем и устанавливаем Microchip Studio. Далее, подключаем наш МК по схеме, представленной вот прямо вот тут вот:
Конечно, схема не без греха, но если ты не идиот, то быстро разберешься в чем подвох. А мне слишком лень ее исправлять. В жизни этот натюрморт может выглядеть следующим образом:
Тут, как ты заметил, стоит кварц... Это внешний генератор тактовой частоты. Суть примерно такая:
Ну вот, когда схема собрана... Когда установлен драйвер программатора... Открываем Микрочип студию, создаем проект.
Выбираем микроконтроллер, в моем случае это Атмега168P:
ЧатГПТ предложил следующий код для блинка на ноге PB0:
#define F_CPU 16000000UL // Частота микроконтроллера
#include <avr/io.h> #include <util/delay.h> int main(void) { DDRB |= (1 << PB0); // Настраиваем PB0 как выход while (1) { PORTB ^= (1 << PB0); // Инвертируем состояние пина PB0 _delay_ms(1000); // Ждем 1 секунду PORTB ^= (1 << PB0); // Инвертируем состояние пина PB0 снова _delay_ms(1000); // Ждем еще 1 секунду } return 0; }
Далее нажмем кнопочку F7 и наш проект соберется, мы получим HEX-файл. Найти его можно следующим образом:
HEX вот в этой папке:
Далее открываем Синапрог... Там 4 пункта. Выбираем Hex-файл, указав найденный в предыдущем слайде адрес, затем ищем наш МК по сигнатуром, это происходит автоматически, но если не получилось, то можно задать вручную. Далее выбираем программатор, именно как на картинке, ведь у нас именно такой же, и когда все готово, то жмем кнопочку Program.
Конечно, в моем случае ничего не заработало, потому что я подключил диод без понижающего ток сопротивления и он нахрен сгорел. Тем не менее, рецепт вполне рабочий! Вот, собственно, и все!