[an error occurred while processing this directive]
Сообщаю подробности глюка под AVR 2313
(«Телесистемы»: Конференция «Микроконтроллеры и их применение»)
миниатюрный аудио-видеорекордер mAVR

Отправлено Stan 22 июля 2002 г. 18:02

Логика работы глюка:

Программа под DOS (работает с портами по книге Фроловых), при запуске
настраивает COM-порт на 9600, посылает 0, после чего в цикле происходит следующее:
жду 1 секунду (время для АЦ преобразования), посылаю 1, принимаю 2 байта.
Программа контроллера делает следующее - по приему нуля запускает АЦ преобразование,
по приему 1 - считывает результаты преобразования и передает 2 байта результата
(между передачами байта ждет USR.5=1) и запускает новую серию АЦ преобразования.
Контроллер AVR 2313 подсоединен к RS-232 через MAX232 3-мя проводами.

Глюк заключается в следующем:
Выключаю контроллер, перезагружаю компьютер, включаю контроллер, запускаю программу -
все работает
После этого выхожу из проги, выключаю контроллер, включаю контроллер, запускаю прогу -
принимает в первой паре байт сначала некоторое число (был и 0, и 255), после чего первый байт
результата АЦ преобразования (и в дальнейших принимаемых парах байтов этот сдвиг сохраняется)
т.е. вместо 61,4;61,5;61,4;61,5;61,5 принимается 0,61;5,61;4,61;5,61;4,61;5,61;5,61; и т.д.
После этого перезагружаю компьютер (не выключая контроллер), запускаю программу - опять все OK!
Под Виндами все нормально работает...

Если кто-то сталкивался с похожей проблемой - подскажите, пожалуйста, как ее обойти.

Составить ответ  |||  Конференция  |||  Архив

Ответы



Перейти к списку ответов  |||  Конференция  |||  Архив  |||  Главная страница  |||  Содержание  |||  Без кадра

E-mail: info@telesys.ru