UART ATMega8 TX=ok, RX=fail

Обсуждаем контроллеры компании Atmel.
Ответить
Родился
Сообщения: 10
Зарегистрирован: Ср апр 29, 2020 23:22:44

Сообщение Luki4G1 »

Здравствуйте!

Прошу помощи разобраться со следующей ситуацией.
Как по-простому описать не знаю, но если вкраце, то...

"Прием" МК по UART работает не верно (принимаются иероглифы вместо типичных символов от ПК), а отправка - работает верно (на ПК отображается правильное сообщение).

Подробное описание.

Описание схемы.
МК ATMega8 подключен к ПК по UART через преобразователь TTL-USB.
На ПК запущено ПО teraterm.

Описание логики МК.
МК по прерыванию может принимать символ и сравнивать его с допустимыми (разрешены к примеру только символы из известного набора).
От результата этого сравнения зависит текст, выдаваемый от МК через UART на ПК в качестве ответа.
Если символ допустимый, то МК должен выдавать этот же символ (реализовано эхо).
Если символ недопустимый, то в добавок к указанному эхо МК должен выдавать сообщение, с просьбой ввести другой символ.

Описание проблемы.
После каждого символа, введенного на ПК, МК выводит сообщение с просьбой ввести другой символ (сообщение отображается правильно).
При этом, вместо введенного символа отображается иероглиф (то есть не правильно).

Преобразователь TTL-USB проверен (соединением Rx-Tx), работает верно.
Цепи до МК проверены (пробовал другие проводки).

Параметры связи.
скорость 9600 бод/с,
количество бит данных 8,
проверки четности нет,
1 стоповый бит,
FIFO отключен.

Ситуация стабильная.
Буду благодарен за любой комментарий
Реклама
Модератор
Аватара пользователя
Сообщения: 4614
Зарегистрирован: Чт мар 18, 2010 23:09:57
Откуда: Планета Земля

Сообщение Аlex »

Код где ? Гадать будем ?
Контактная информация:
Реклама
Ответить

Вернуться в «AVR»