Простой пример программы для AVR
Постепенно изучаю работы микроконтроллера ATMega 8, а также изучаю примеры для 8 битных AVR микроконтроллеров, теорию подкрепляю практикой. Пока что простые примеры - ввод/вывод, задержки. Публикую простую программу, которую нашел в книге иностранного автора, алгоритм простой, пробежать по все портам вывода и подать логическую единицу, на моем stk 500 получается что-то похожее на гирлянду типа “бегущий огонь”.
К портам B подключаем светодиоды, подаем питание на программатор, прошиваем программой
#define F_CPU 8000000
#include <avr/io.h>
#include <util/delay.h>
int main(void) {
DDRB = 0xFF;
while(1) {
for(int i=1;i<=128;i*=2) {
PORTB=~i;
_delay_loop_2(300000);
}
}
}Для работы я использую AVRStudio с установленным плагином WinAVR (AVR GCC), который позволяет писать программы на Си, вместо ассемблера.
интересно еще бы смотреть видеоотчеты в таких экспериментах:) может и простые, но все равно, когда будет что то по сложнее, обязательно выкладывай! Слежу постоянно за тем как ты МК программируешь, очень интересно!
Следующий эксперимент попробую снять, я в редактировании и монтаже видео не силен, но попробую, должно получиться интересно.
Я на youtube.com люблю смотреть разные изобретения роботы в основном на микроконтроллере AVR, в поиске достаточно набрать avr или avr robot.
Вообще в планах спаять много интересных штук на базе мк atmega 8.