понедельник, 20 июня 2011 г.

Avr: Пример работы с USART в Atmega16


Решил разобраться с микроконтроллером Atmega16, в нем есть 4 порта A,B,C,D, 16 килобайт памяти, 8ми канальный 10 разрядный АЦП и много чего еще ;). Начал, конечно, с USART так как нужно каким-то образом общаться с компом тем более в моем новом программаторе без дела весит мост USB-UART на FT232R. Компилятор использовал WinAvr потому, что у него получается достаточно компактный HEX и он занимает меньше места флешь памяти Avr-ке. В программе пытался комментировать практически все, так сказать для начинающих, вот собственно код на эту AVR-ку.


4 комментария:

Анонимный комментирует...

Перед циклом в майне нужно инициализировать порт иначе не робит. Блин, минут 10 тупил почму не робит.

Tymbys комментирует...

Спасибо, исправлю!

Unknown комментирует...

почему-то если делаю тактирование от внешнего кварца то у меня перестает работать, от чего это может быть

Tymbys комментирует...

> Александр Кузнецов
> почему-то если делаю тактирование от внешнего кварца то у меня перестает работать, от чего это может быть.

Fuse которые приведены в статье запускают внутренний R-C генератор Atmega16 на 8МГц.
Какой у вас МК, Atmega16?
Какой программой прошиваете и выставляете Fuse?, в некоторых прошивалках fuse могут быть инвертированы.

Покажите схему.