Бегущая строка на Golang для микроконтроллере ATmega328p, с возможностью поменять скорость кнопкой. Для программирования использовался компилятор tinygo, программатор USBASP v2.0, и загрузчик AVRDUDE.
Питание микроконтроллера - по цоколевке (7 - VCC, 8 - GND). Точка на светодиодной матрице загоpается при подаче питания на соответствующий столбец, и земли на соответствующую строку. Строками управляет - PORTD, столбцами - PORTB. Подключать пины PORTB следует через резисторы.
Кнопка переключения скорости подключается к пину PC4, порта PORTC, и к земле. Подтягивающий резистор установлен программно.
Моя конфигурация - E:FF, H:D9, L:E2
Изменить конфигурацию можно командой:
avrdude -c usbasp -p m328p -U lfuse:w:0xe2:m -U hfuse:w:0xd9:m
Скомпилировать код можно командой:
tinygo build -o main.hex -target=arduino main.go
Ели у вас программатор USBASP, то прошить чип можно командой:
avrdude -p m328p -c usbasp -P usb -U flash:w:main.hex