Проект для микроконтроллера attiny2313 был создан на ассемблере.Там определены константы:
.equ BAUD = 38400
.equ XTAL = 8000
.equ N = 12
Далее N засылается в UBRR,выставляются биты RXEN и TXEN в UCR.
И тогда устанавливается связь компъютера с микроконтроллером, кварц
12 MHz,скорость COM порта 4800 bod.Причём COM порт любой.Как истинный
+/12 вольт так и виртуальный на микросхемах FTDI232RL, CP2102.Почему
это так?
Ещё один пример:AT90S2313, assembler,
.equ XTAL = 11059
.equ BAUD = 38400
.equ N = 12
Тогда устанавливается связь на скорости COM порта 9600 с кварцем 2 MHz.
И ещё один:Attiny2313,кварц 3.5795 MHz,8N1,19200
Там в исходнике:
.equ XTALL = 11059
.equ BAUD = 115200
.equ N = 11
В общем для attiny2313 верна формула: N =(XTALL/12/16/BAUD)-1.
А для at90s2313 верна формула : N = (XTALL/16/BAUD)-1
Но в большинстве случаев связь работает криво.В окне
гипертерминала мусор.Как уточнить формулы?
Вы не можете начинать темы Вы не можете отвечать на сообщения Вы не можете редактировать свои сообщения Вы не можете удалять свои сообщения Вы не можете голосовать в опросах Вы не можете добавлять файлы Вы можете скачивать файлы