Микроконтроллеры, АЦП, память и т.д Темы касающиеся микроконтроллеров разных производителей, памяти, АЦП/ЦАП, периферийных модулей... |
13.01.2009, 16:03
|
#1
|
Частый гость
Регистрация: 04.04.2008
Сообщений: 37
Сказал спасибо: 0
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
|
Проблема с USART в Atmega8
Всем привет!
Вот такой вопрос. Уже давно работаю с avr-ми и небыло пока проблем. Сделал RFID ридер на TMS3705 а в нем Usart на 15625 бод. Подключил его к компу без проблем все работает. Стал приатачивать к меге и пошли проблемы. Сначала использовал внутренний RC не заработало. Решил просто проверить связку МК и компа.
Установил скорость в меге 19200 взаимообмен внорме. Установил в меге 15625 нет обмена. Погрешив на RC поставил кварц на 8Мгц. Таже картина. На стандартных скоростях работает на 15626 нет. (Фьюзы при смене RC на кварц естественно менял). Ексериментально определил что по крайней мере на 4000 бод (тоже нестандарт) еще есть взаимообмен, а на 10000 уже нет.
Пишу в CodeVision и мастер для частоты кварца 8МГц и скорости USART 15625 пишет что ошибка 0%.
Помогите плиз а то уже всю голову сломал.
|
|
|
|
13.01.2009, 16:47
|
#2
|
Почётный гражданин KAZUS.RU
Регистрация: 13.05.2006
Адрес: Москва
Сообщений: 3,559
Сказал спасибо: 76
Сказали Спасибо 326 раз(а) в 230 сообщении(ях)
|
Дак проверь в чем дело в VMLAB или в PROTUES
__________________
Обучалка AVR PIC ARM начинающим программирование курс самоучитель шаг за шагом с нуля, CVAVR, PROTEUS, MPLAB, WinAVR, IAR, KEIL электроника - http://proavr.narod.ru
|
|
|
|
13.01.2009, 17:03
|
#3
|
Временная регистрация
Регистрация: 09.12.2008
Сообщений: 74
Сказал спасибо: 0
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
|
Цитата:
|
Установил скорость в меге 19200 взаимообмен внорме. Установил в меге 15625 нет обмена. Погрешив на RC поставил кварц на 8Мгц. Таже картина. На стандартных скоростях работает на 15626 нет.
|
Вы меняете скорость у контроллер а у компьютера? Скорость у обоих устройств должна быть настроена одинаково!
Я не уверен (не пробовал), что приёмопередатчик протокола RS232 в контроллере, будет правильно работать с нестандартными частотами, поскольку должен тактироваться одной из частот стандартного ряда. 14,7456 МГц, 11,0592 МГц, 7,3725 МГц, 3,6864 МГц, 1,8432 МГц или что то в этом духе и из за разницы частот возникает ошибка в передаче.
|
|
|
|
13.01.2009, 17:07
|
#4
|
Почётный гражданин KAZUS.RU
Регистрация: 24.03.2007
Сообщений: 1,352
Сказал спасибо: 85
Сказали Спасибо 610 раз(а) в 369 сообщении(ях)
|
Re: Проблема с USART в Atmega8
Насколько я знаю из своего опыта, стандартный COM-порт в компе со стандартными драйверами выставляет скорости 115200/N. Причем если задаваемая скорость не соответствует этому выражению, то берется ближайшая скорость (т.е. фактически в железе устанавливается подходящий коэфф. деления). Проверял экспериментально, правда было это года 3 назад.
Исходя из этого, комп может установить скорости либо 16457 (ошибка 5.1% от 15625), либо 14400 (ошибка 8.5%). Возможно поэтому связи с компом нет.
Попробуйте для проверки связки меги+комп выбрать скорость, ближайшую к 16457.
Кстати, насколько точно выставлено 15625 в вашем ридере - 0%?
|
|
|
|
13.01.2009, 17:11
|
#5
|
Почётный гражданин KAZUS.RU
Регистрация: 24.03.2007
Сообщений: 1,352
Сказал спасибо: 85
Сказали Спасибо 610 раз(а) в 369 сообщении(ях)
|
Сообщение от Radon85
|
Скорость у обоих устройств должна быть настроена одинаково!
Я не уверен (не пробовал), что приёмопередатчик протокола RS232 в контроллере, будет правильно работать с нестандартными частотами, поскольку должен тактироваться одной из частот стандартного ряда. 14,7456 МГц, 11,0592 МГц, 7,3725 МГц, 3,6864 МГц, 1,8432 МГц или что то в этом духе и из за разницы частот возникает ошибка в передаче.
|
Ну одинаково понятие нечеткое. Допускается погрешность около 2%. Когда-то экспериментировал, но точно не помню. На меге с 16 Мгц кварцем удалось связаться максимум на 38400, насколько помню.
|
|
|
|
13.01.2009, 17:11
|
#6
|
Супер-модератор
Регистрация: 13.03.2004
Адрес: Minsk
Сообщений: 2,378
Сказал спасибо: 1,955
Сказали Спасибо 1,327 раз(а) в 578 сообщении(ях)
|
Сообщение от Radon85
|
Я не уверен (не пробовал), что приёмопередатчик протокола RS232 в компьютере, будет правильно работать с нестандартными частотами, поскольку
|
Аппаратно работать должно. Во всяком случае под ДОСом, при прямом программировании регистров COM порта когда-то давно на нестандартных скоростях (кажется 20800) работал.
Но вот пропустит ли такое винда - большой вопрос.
2 tvilsaх Если хотите работать с USART, забудьте о RC генераторе. Только кварц. RC плавает сильно и от температуры, и от напряжения питания.
|
|
|
|
13.01.2009, 17:43
|
#7
|
Временная регистрация
Регистрация: 09.12.2008
Сообщений: 74
Сказал спасибо: 0
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
|
А какая длинна линии связи И Правильно ли работает преобразователь уровня TTL-›RS-232? Эти факторы могут сильно повлиять на качество связи при нестандартных частотах.
|
|
|
|
14.01.2009, 08:25
|
#8
|
Частый гость
Регистрация: 04.04.2008
Сообщений: 37
Сказал спасибо: 0
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
|
USART
Сообщение от avr123-nm-ru
|
Дак проверь в чем дело в VMLAB или в PROTUES
|
В PROTUES все хокей на 15625.
Сообщение от Radon85
|
Вы меняете скорость у контроллер а у компьютера? Скорость у обоих устройств должна быть настроена одинаково!
Я не уверен (не пробовал), что приёмопередатчик протокола RS232 в контроллере, будет правильно работать с нестандартными частотами, поскольку должен тактироваться одной из частот стандартного ряда. 14,7456 МГц, 11,0592 МГц, 7,3725 МГц, 3,6864 МГц, 1,8432 МГц или что то в этом духе и из за разницы частот возникает ошибка в передаче.
|
Ну ясен пень, я же писал что нормально устанавливал обмен между компом и МК на разных скоростях. Т.е. естественно менял и на мк и на компе. Более того я НАПИСАЛ что даже установил связь на нестандартных частотах 4000 бод. Рекомендованные Вами кварцы как раз и нужны для того чтобы точно обеспечить ряд СТАНДАРТНЫХ частот сом порта.
Сообщение от pambaru
|
Попробуйте для проверки связки меги+комп выбрать скорость, ближайшую к 16457.
Кстати, насколько точно выставлено 15625 в вашем ридере - 0%?
|
Проблем со скростью 15625 в компе точно нет.
Я же написал в вопросе что НОРМАЛЬНО подключил ридер к компу на 15625. Работает без проблем.
15625 выставлено в ридере точно т.к. установлен кварц на 4Мгц согласно требованиям даташита на ридер.
Сообщение от nml
|
Если хотите работать с USART, забудьте о RC генераторе. Только кварц. RC плавает сильно и от температуры, и от напряжения питания.
|
Спасибо за совет жаль не втему. Я же написал что ставил кварц. И более того реально может мне так везет но использую кварц в меге очень редко т.к. несколько конструкции использующих USART нормально работают БЕЗ кварца в температурных диапазонах от 0 до +25 без ошибок. Надо просто выбирать скорости обеспечивающие минимальные ошибки.
Сообщение от Radon85
|
А какая длинна линии связи И Правильно ли работает преобразователь уровня TTL-›RS-232?
|
Длина связи 20см. Преобразователь работает нормально. Проверил скорость обмена МК и компа на 56000. Без проблем. Объясните как связаны нестандартность частоты и длина преобразователя если с большими частотами работает.
И так пока несраслось. Жду дальнейших предложений. Обещаю все проверить и отписаться.
Спасибо всем кто поучаствовал.
|
|
|
|
14.01.2009, 08:27
|
#9
|
Частый гость
Регистрация: 03.10.2007
Сообщений: 17
Сказал спасибо: 0
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
|
Baud rate 9600 bps
Parity None
Data bits 8N1
|
|
|
|
14.01.2009, 08:35
|
#10
|
Частый гость
Регистрация: 04.04.2008
Сообщений: 37
Сказал спасибо: 0
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
|
USART
Сообщение от Kombinator
|
Baud rate 9600 bps
Parity None
Data bits 8N1
|
Это ты к чему?? Просто что бы было? Оценил, забавно
|
|
|
|
Ваши права в разделе
|
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения
HTML код Выкл.
|
|
|
Тема |
Автор |
Раздел |
Ответов |
Последнее сообщение |
Проблема с USART AVR mega169
|
Archer07 |
Микроконтроллеры, АЦП, память и т.д |
20 |
28.07.2009 15:02 |
Проблема с прерыванием от АЦП, Atmega8
|
R-a-v-e-n |
Микроконтроллеры, АЦП, память и т.д |
11 |
24.06.2009 14:12 |
ЖКИ МТ-12864 + ATmega8: проблема
|
123max12345 |
Микроконтроллеры, АЦП, память и т.д |
0 |
01.10.2007 11:56 |
Проблема с USART в ATTiny2313
|
Фокс |
Микроконтроллеры, АЦП, память и т.д |
4 |
09.04.2005 20:02 |
USART
|
DK |
Микроконтроллеры, АЦП, память и т.д |
1 |
03.09.2003 19:49 |
Часовой пояс GMT +4, время: 20:31.
|
|