|
отладка UART |
|
|
|
Dec 5 2006, 11:19
|

Участник

Группа: Участник
Сообщений: 28
Регистрация: 5-12-06
Пользователь №: 23 140

|
Нужна помощь! Не могу отладить кусок проги для AT90S8515 по работе с UART Пишу на C в AtmanAVR Суть: МК должен принимать по UART код и сравнивать его со списком кодов, при совпадении с кодом из списка выполнять соотв. коду действия. Что делаю: в пошаговом режиме симуляции (пробовал и AtmanAVR и AVRStudio) после перехода в режим ожидания кода от UART руками загоняю нужный код в UDR, ставлю флаг RXC - происходит прерывание, в обработчике читаю UDR в переменную Вижу: флаг RXC сбрасывается, что говорит об успешном чтении, однако, переменная, в которую считываю UDR ,что бы в ней не было, сбрасывается в 0х00. Вся голову сломал, что может быть?
|
|
|
|
|
 |
Ответов
|
Dec 6 2006, 15:48
|

Участник

Группа: Участник
Сообщений: 28
Регистрация: 5-12-06
Пользователь №: 23 140

|
Цитата(okela @ Dec 6 2006, 14:29)  А в принципе, IMHO, такой способ проверки (с симулятором AVRStudio) не есть корректный. Регистр UDR физически состоит из двух регистров на одном адресе : один на запись (Тх) , а другой на чтение (Rx) . И ваша запись в UDR соответствует попытке отправить байта на передачу. А в регистре приема информация появится только посля физического приема данных по линии RxD. Эт все так, вот только как на уровне программной отладки проверить работоспособность приема? Буду мичить протеус, может так получится. Всем, откликнувшимся, огромное спасибо за ответы и поддержку!
|
|
|
|
|
Dec 6 2006, 16:01
|
Частый гость
 
Группа: Свой
Сообщений: 165
Регистрация: 11-01-05
Из: Украина, г. Одесса
Пользователь №: 1 896

|
Цитата(-=A.N.G.E.R=- @ Dec 6 2006, 16:48)  Цитата(okela @ Dec 6 2006, 14:29)  А в принципе, IMHO, такой способ проверки (с симулятором AVRStudio) не есть корректный. Регистр UDR физически состоит из двух регистров на одном адресе : один на запись (Тх) , а другой на чтение (Rx) . И ваша запись в UDR соответствует попытке отправить байта на передачу. А в регистре приема информация появится только посля физического приема данных по линии RxD.
Эт все так, вот только как на уровне программной отладки проверить работоспособность приема? Буду мичить протеус, может так получится. Всем, откликнувшимся, огромное спасибо за ответы и поддержку! Получится без проблем , сам не раз пробовал...
|
|
|
|
Сообщений в этой теме
-=A.N.G.E.R=- отладка UART Dec 5 2006, 11:19 kamedi_clab используйте VMLAB или PROTEUS - это настоящие симу... Dec 5 2006, 11:48 -=A.N.G.E.R=- ЦитатаОбъявлена правильно?
да, конечно же, что я т... Dec 5 2006, 12:07  Dog Pawlowa Цитата(-=A.N.G.E.R=- @ Dec 5 2006, ... Dec 5 2006, 12:20   -=A.N.G.E.R=- Цитата(Dog Pawlowa @ Dec 5 2006, 12:20) Г... Dec 5 2006, 12:34  okela Цитата(-=A.N.G.E.R=- @ Dec 5 2006, ... Dec 6 2006, 13:55 Dog Pawlowa Цитата(-=A.N.G.E.R=- @ Dec 5 2006, ... Dec 5 2006, 12:03 ahulap У меня при отладке в AVR studio UDR сбрасывается в... Dec 5 2006, 12:16 -=A.N.G.E.R=- Цитата(ahulap @ Dec 5 2006, 12:16) У меня... Dec 5 2006, 12:19 defunct Проверяйте в железе. Dec 5 2006, 21:12 MichaelU При входе в прерывание по приему данных при отладк... Dec 6 2006, 09:10 -=A.N.G.E.R=- Цитата(MichaelU @ Dec 6 2006, 09:10) При ... Dec 6 2006, 12:04  prottoss Цитата(-=A.N.G.E.R=- @ Dec 6 2006, ... Dec 7 2006, 00:05
2 чел. читают эту тему (гостей: 2, скрытых пользователей: 0)
Пользователей: 0
|
|
|