AVR Раздел по микроконтроллерам компании Atmel - AVR / ATtiny / ATmega / ATMega128 / ATxmega, вопросы по программированию в AVR studio и все, относящееся к AVR... |
22.11.2014, 16:13
|
|
Заблокирован
Регистрация: 23.09.2007
Сообщений: 761
Сказал спасибо: 84
Сказали Спасибо 352 раз(а) в 151 сообщении(ях)
|
Вопросы по UART
Отлаживаю протокол между двумя устройствами. Наспех наделал ошибок в программе, вследствие которых возникали различные коллизии. Очерёдность приёма-передачи не соблюдается, у мастера выскакивает ошибка DOR, слейв вообще затыкается.
В принципе ничего страшного, ошибки щас выковыриваю потихоньку.
Возникли вопросы такого порядка:
1.Что делать при обработке ошибок DOR, PE, FE в плане восстановления нормальной работы UART? Тупо ждать следующего нормального байта или пару раз прочитать UDR?
2. Можно ли локально, без отправки сообщений, узнать, что UART в рабочем состоянии?
|
|
|
|
22.11.2014, 16:52
|
|
Почётный гражданин KAZUS.RU
Регистрация: 20.03.2007
Адрес: "Братское кольцо враждебности", т.е. ближайшее заМКАДье.
Сообщений: 6,923
Сказал спасибо: 2,985
Сказали Спасибо 3,163 раз(а) в 2,147 сообщении(ях)
|
Re: Вопросы по UART
Сообщение от kosmos440o
|
Возникли вопросы такого порядка:
1.Что делать при обработке ошибок DOR, PE, FE в плане восстановления нормальной работы UART? Тупо ждать следующего нормального байта или пару раз прочитать UDR?
|
Он и так нормально работает. Эти ошибки должны обрабатываться на вышележащих уровнях (выше канального, если говорить в терминах ЭМВОС, насколько я их помню). А по простому - это обрабатывается протоколом связи, а не железом.
Сообщение от kosmos440o
|
2. Можно ли локально, без отправки сообщений, узнать, что UART в рабочем состоянии?
|
В AVR - нет (без привлечения внешнего "железа").
|
|
|
|
22.11.2014, 18:38
|
|
Почётный гражданин KAZUS.RU
Регистрация: 20.06.2006
Адрес: Украина, Запорожье
Сообщений: 7,982
Сказал спасибо: 0
Сказали Спасибо 4,941 раз(а) в 2,370 сообщении(ях)
|
Re: Вопросы по UART
Сообщение от ForcePoint
|
В AVR - нет
|
а где - да?
Цитата:
|
пару раз прочитать UDR?
|
лучше - молитву за здравие, не поможет - за упокой
|
|
|
|
22.11.2014, 18:42
|
|
Почётный гражданин KAZUS.RU
Регистрация: 20.03.2007
Адрес: "Братское кольцо враждебности", т.е. ближайшее заМКАДье.
Сообщений: 6,923
Сказал спасибо: 2,985
Сказали Спасибо 3,163 раз(а) в 2,147 сообщении(ях)
|
Re: Вопросы по UART
Сообщение от jump
|
Сообщение от ForcePoint
|
В AVR - нет
|
а где - да?
|
16450 и т.д.
|
|
|
|
22.11.2014, 19:19
|
|
Почётный гражданин KAZUS.RU
Регистрация: 13.10.2007
Адрес: Беларусь
Сообщений: 8,048
Сказал спасибо: 60
Сказали Спасибо 3,954 раз(а) в 2,309 сообщении(ях)
|
Re: Вопросы по UART
Если в регистрах УАРТа правильные данные, то в "нерабочем состоянии" он не может быть в принципе. Потому что простой как тапок
|
|
|
|
22.11.2014, 20:50
|
|
Почётный гражданин KAZUS.RU
Регистрация: 26.12.2007
Сообщений: 1,198
Сказал спасибо: 70
Сказали Спасибо 80 раз(а) в 69 сообщении(ях)
|
Re: Вопросы по UART
UART то какой синхронный или асинхронный?
Где ваш код?
Схема подключения где?
|
|
|
|
24.11.2014, 02:51
|
|
Заблокирован
Регистрация: 23.09.2007
Сообщений: 761
Сказал спасибо: 84
Сказали Спасибо 352 раз(а) в 151 сообщении(ях)
|
Re: Вопросы по UART
Вообще конечно я косячнул в описании - у меня USART в режиме UART. Коду там много, всего с приложениями 120 кБайт, протокол Modbus четырехуровневый, оно Вам надо разбираться? В режиме слейв с ПК работает неделями без сбоев. Подключение стандартное - 485.
Вложения:
![Тип файла: pdf](images/attach/pdf.gif) |
1.pdf (38.6 Кб, 34 просмотров) |
Последний раз редактировалось kosmos440o; 24.11.2014 в 05:58.
|
|
|
|
Ваши права в разделе
|
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения
HTML код Выкл.
|
|
|
Часовой пояс GMT +4, время: 13:37.
|
|