реклама на сайте
подробности

 
 
> отладка UART
-=A.N.G.E.R=-
сообщение Dec 5 2006, 11:19
Сообщение #1


Участник
*

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



Нужна помощь!
Не могу отладить кусок проги для AT90S8515 по работе с UART
Пишу на C в AtmanAVR
Суть: МК должен принимать по UART код и сравнивать его со списком кодов, при совпадении с кодом из списка выполнять соотв. коду действия.
Что делаю: в пошаговом режиме симуляции (пробовал и AtmanAVR и AVRStudio) после перехода в режим ожидания кода от UART руками загоняю нужный код в UDR, ставлю флаг RXC - происходит прерывание, в обработчике читаю UDR в переменную
Вижу: флаг RXC сбрасывается, что говорит об успешном чтении, однако, переменная, в которую считываю UDR ,что бы в ней не было, сбрасывается в 0х00.
Вся голову сломал, что может быть?
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
okela
сообщение Dec 6 2006, 14:29
Сообщение #2


Частый гость
**

Группа: Свой
Сообщений: 165
Регистрация: 11-01-05
Из: Украина, г. Одесса
Пользователь №: 1 896



А в принципе, IMHO, такой способ проверки (с симулятором AVRStudio) не есть корректный.
Регистр UDR физически состоит из двух регистров на одном адресе : один на запись (Тх) , а другой на чтение (Rx) . И ваша запись в UDR соответствует попытке отправить байта на передачу.
А в регистре приема информация появится только посля физического приема данных по линии RxD.
Go to the top of the page
 
+Quote Post
-=A.N.G.E.R=-
сообщение Dec 6 2006, 15:48
Сообщение #3


Участник
*

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



Цитата(okela @ Dec 6 2006, 14:29) *
А в принципе, IMHO, такой способ проверки (с симулятором AVRStudio) не есть корректный.
Регистр UDR физически состоит из двух регистров на одном адресе : один на запись (Тх) , а другой на чтение (Rx) . И ваша запись в UDR соответствует попытке отправить байта на передачу.
А в регистре приема информация появится только посля физического приема данных по линии RxD.

Эт все так, вот только как на уровне программной отладки проверить работоспособность приема?
Буду мичить протеус, может так получится.

Всем, откликнувшимся, огромное спасибо за ответы и поддержку!
Go to the top of the page
 
+Quote Post
okela
сообщение Dec 6 2006, 16:01
Сообщение #4


Частый гость
**

Группа: Свой
Сообщений: 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.

Эт все так, вот только как на уровне программной отладки проверить работоспособность приема?
Буду мичить протеус, может так получится.

Всем, откликнувшимся, огромное спасибо за ответы и поддержку!


Получится без проблем , сам не раз пробовал...
Go to the top of the page
 
+Quote Post
chief_olimp
сообщение Dec 6 2006, 20:47
Сообщение #5


Местный
***

Группа: Участник
Сообщений: 249
Регистрация: 31-10-05
Из: Украина Нетешин
Пользователь №: 10 344



попробуйте использовать ASM вставку если так не получается. У меня на асме все работает
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- -=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


Reply to this topicStart new topic
2 чел. читают эту тему (гостей: 2, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 25th July 2025 - 15:28
Рейтинг@Mail.ru


Страница сгенерированна за 0.01392 секунд с 7
ELECTRONIX ©2004-2016