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

 
 
4 страниц V   1 2 3 > »   
Reply to this topicStart new topic
> UART без кварцевой стабилизации, Работает или нет. До каких скоростей?
DesNer
сообщение Jul 4 2006, 10:54
Сообщение #1


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

Группа: Свой
Сообщений: 188
Регистрация: 22-09-05
Из: Томск
Пользователь №: 8 832



Можно ли использвать UART в mega8 без кварцевой стабилизации (внутренний генератор). До каких скоростей? А то уже второй день пробую, и все время какие-то ошибки в передаче.
Go to the top of the page
 
+Quote Post
dRaider
сообщение Jul 4 2006, 11:00
Сообщение #2


Участник
*

Группа: Новичок
Сообщений: 15
Регистрация: 26-08-05
Пользователь №: 7 991



Больше информации!

Связь с компютером или другим контроллером?
На какую частоту внутрений генератор?
Выполняется ли калибровка?
Go to the top of the page
 
+Quote Post
ksv198
сообщение Jul 4 2006, 11:38
Сообщение #3


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

Группа: Участник
Сообщений: 177
Регистрация: 25-08-05
Из: Ставрополь
Пользователь №: 7 964



Цитата(DesNer @ Jul 4 2006, 14:54) *
Можно ли использвать UART в mega8 без кварцевой стабилизации (внутренний генератор). До каких скоростей? А то уже второй день пробую, и все время какие-то ошибки в передаче.

До 19200 при связи с компом как правило работает (8N1). Если повезло со стабильностью, то и побольше скорость можно пробовать, но 19200 - практически всегда (в серийное устройство, конечно не стоит закладывать, там только кварц, ИМХО, меньше гемороя).
Go to the top of the page
 
+Quote Post
iosifk
сообщение Jul 4 2006, 11:44
Сообщение #4


Гуру
******

Группа: Модераторы
Сообщений: 4 011
Регистрация: 8-09-05
Из: спб
Пользователь №: 8 369



Цитата(DesNer @ Jul 4 2006, 14:54) *
Можно ли использвать UART в mega8 без кварцевой стабилизации (внутренний генератор). До каких скоростей? А то уже второй день пробую, и все время какие-то ошибки в передаче.


Интерфейс LIN - предусмотрена процедура подстройки тактовой при работе от RC - генератора.


--------------------
www.iosifk.narod.ru
Go to the top of the page
 
+Quote Post
DesNer
сообщение Jul 4 2006, 13:16
Сообщение #5


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

Группа: Свой
Сообщений: 188
Регистрация: 22-09-05
Из: Томск
Пользователь №: 8 832



Цитата(dRaider @ Jul 4 2006, 14:00) *
Больше информации!

Связь с компютером или другим контроллером?
На какую частоту внутрений генератор?
Выполняется ли калибровка?

Связь с компьютером. Внутренний генератор настроен на 4МГц. Пробую скорость 9600. Калибровать не пробовал. Надо? Вообщем посылаю контроллеру разные символы, а приходит 0xF8 либо 0x00. В чем дело, не могу понять.
Go to the top of the page
 
+Quote Post
nml
сообщение Jul 4 2006, 17:11
Сообщение #6


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

Группа: Свой
Сообщений: 86
Регистрация: 13-06-04
Из: Minsk
Пользователь №: 29



Цитата(DesNer @ Jul 4 2006, 13:54) *
Можно ли использвать UART в mega8 без кварцевой стабилизации (внутренний генератор). До каких скоростей? А то уже второй день пробую, и все время какие-то ошибки в передаче.

Думаю, что такого делать не стОит. Ведь UART - асинхронный. Ему очень важна стабильность частоты - насколько я помню, допускается ошибка в 2.5 процента или чуть выше. Даже если вы как положено зашлете в OSCCAL настроечный байт, стабильности частоты это не обеспечит. Будет скакать и от температурных изменений, и от питающего напряжения...

Короче, если не нужен геморрой - ставьте кварц.
Go to the top of the page
 
+Quote Post
viael
сообщение Jul 4 2006, 19:11
Сообщение #7


Местный
***

Группа: Свой
Сообщений: 200
Регистрация: 10-04-06
Из: Украина,Запорожье
Пользователь №: 15 979



Цитата(ksv198 @ Jul 4 2006, 15:38) *
Цитата(DesNer @ Jul 4 2006, 14:54) *

Можно ли использвать UART в mega8 без кварцевой стабилизации (внутренний генератор). До каких скоростей? А то уже второй день пробую, и все время какие-то ошибки в передаче.

До 19200 при связи с компом как правило работает (8N1). Если повезло со стабильностью, то и побольше скорость можно пробовать, но 19200 - практически всегда (в серийное устройство, конечно не стоит закладывать, там только кварц, ИМХО, меньше гемороя).

Собирал партию устройств не Меге48 с внутренним генератором на 8МГц, скорость 38400.При связи(С ПК)
никаих проблем не обнаружилось(В партии 100шт)
Go to the top of the page
 
+Quote Post
Krys
сообщение Jul 5 2006, 03:08
Сообщение #8


Гуру
******

Группа: Свой
Сообщений: 2 002
Регистрация: 17-01-06
Из: Томск, Россия
Пользователь №: 13 271



Позволю себе несогласиться с мнением большинства, что кварц на UART обязателен. Всё зависит от внутреннего генератора. Какие у него характеристики по точности частоты? Вы можете их тут привести?
Я практического опыта с UART не имел, поэтому у меня бытовые или теоретические рассуждения. Спорить не буду. Для UART нужна стабильность краткосрочная, т.е. чтобы во время передачи одной посылки (байта) между старт-стопными символами фронт уплывал не более, чем на половину такта (точно не помню, но какая-то такая величина, первые доли такта). Время передачи байта ничтожно мало по сравнению с временем, за которое даже примитивный цифровой генератор на RC-элементах уплывёт (например, по температуре), да ещё и на полтакта. У кварца же точность очертенная, она такая не нужна. 100 ppm скажем - это же 0,01%, если правильно сосчитал. Притом 100 ппм - это долговременная стабильность, за весь срок службы аппаратуры. А кратковременная - куда выше.
Вот такие у меня рассуждения.

К стати, почитайте тут соседнюю тему http://electronix.ru/forum/index.php?showtopic=16273&st=0
Судя по алгоритмам выделения бит, там вообще нестабильность может достигать плюс-минус поллаптя, т.к. алгоритмы дубовые, и всё вытянут.
Go to the top of the page
 
+Quote Post
rezident
сообщение Jul 5 2006, 09:48
Сообщение #9


Гуру
******

Группа: Свой
Сообщений: 10 920
Регистрация: 5-04-05
Пользователь №: 3 882



Требуемая точность частоты тактирования UART зависит в основном от алгоритма детектирования битовой последовательности и длины непрерывного пакета данных. Например, для самого простого случая - передача 1 символа (8N1, одна выборка на бит в центре битового интервала) разность частот приемника и передатчика может достигать 5.5% (0.5BitTime/9).
Go to the top of the page
 
+Quote Post
AVR
сообщение Jul 5 2006, 18:20
Сообщение #10


фанат Linux'а
*****

Группа: Свой
Сообщений: 1 353
Регистрация: 23-10-05
Из: SPB.RU
Пользователь №: 10 008



У меня между компом и МК от внутреннего генератора 8 МГц на 38400 стабильно работает...


--------------------
Go to the top of the page
 
+Quote Post
IgorKossak
сообщение Jul 6 2006, 06:52
Сообщение #11


Шаман
******

Группа: Модераторы
Сообщений: 3 064
Регистрация: 30-06-04
Из: Киев, Украина
Пользователь №: 221



Цитата(AVR @ Jul 5 2006, 21:20) *
У меня между компом и МК от внутреннего генератора 8 МГц на 38400 стабильно работает...

Если посмотреть графики зависимостей частоты внутреннего генератора от температуры и напряжения питания, то на краях диапазонов погрешность частоты уже выходит за пределы, необходимые для надёжной работы UART.
Испытания показали полное соответствие теоретическим предпосылкам, т. е. на краях температурного диапазона (ниже -20 С и выше +55 С) коннект был нестабильным, часто возникали ошибки.
Go to the top of the page
 
+Quote Post
Reflector
сообщение Jul 15 2006, 15:05
Сообщение #12


Участник
*

Группа: Участник
Сообщений: 48
Регистрация: 15-07-06
Пользователь №: 18 836



Mega162 + внутренний генератор 4MHz + soft UART нормально общается с компом на скорости 115200. При калибровке слал в мегу по одному байту, увеличивая OSCCAL на 1, она возвращала его на терминалку, затем находил участок где прием нормальный а его середина и есть требуемое значение для OSCCAL. Самое странное, что настраивал на 5V, но работает и на 3V smile.gif
Go to the top of the page
 
+Quote Post
xemul
сообщение Jul 15 2006, 15:49
Сообщение #13



*****

Группа: Свой
Сообщений: 1 928
Регистрация: 11-07-06
Пользователь №: 18 731



DesNer
Исходная ошибка калибровки mega8 по даташиту при температуре 25 С и питании 3 В <1%.
Определите/задайте диапазон температур и напряжений, в котором предполагается эксплуатировать устройство. По даташиту найдите соответствующее возможное изменение (ошибку) Fosc.
Рассчитайте ошибку по BAUD для желаемой скорости передачи от округления UBRRn (например, для Fosc = 4 МГц и BAUD = 19200 в Normal Speed Mode получится всего 0.17%).
Найдите корень от суммы квадратов этих трех ошибок, и если получится меньше 2%, то можно надеяться, что при правильной софтовой реализации 97% устройств будут работать в заданном диапазоне тепмератур и напряжений без дополнительной калибровки OSCCAL.
Go to the top of the page
 
+Quote Post
defunct
сообщение Jul 15 2006, 17:40
Сообщение #14


кекс
******

Группа: Свой
Сообщений: 3 825
Регистрация: 17-12-05
Из: Киев
Пользователь №: 12 326



Можно получить устойчивую работу на скорости 115200 если, как советует Reflector, откалибровать внутренний RC на частоту близкую к кратной 115200 например на 7.3Mhz.
Go to the top of the page
 
+Quote Post
µµC
сообщение Jul 15 2006, 19:14
Сообщение #15


Участник
*

Группа: Новичок
Сообщений: 44
Регистрация: 2-05-06
Пользователь №: 16 710



Цитата(DesNer @ Jul 4 2006, 14:54) *
Можно ли использвать UART в mega8 без кварцевой стабилизации (внутренний генератор). До каких скоростей? А то уже второй день пробую, и все время какие-то ошибки в передаче.


Выборка бита в UART меги работает по мажоритарному принципу. Бит делится на 16 (8 в 2х) частей и считывание происходит в 8,9 и 10-х частях (4,5,6 в 2х). Следовательно в режиме 8N1 краешек 10-ого стоп бита не должен уехать на 6/16/10 (2/8/10 в 2х), то есть на 3.75% (2.5% в 2х). Это суммарная погрешность приемника и передатчика. Скорость же УАРТ 19200 или там 115200 значения не имеет. Если удастся выдержать нужную точность частоты, все будет нормально. Например, если сумеете заставить внутренний генератор работать с частотой 3.6864МГц +-3.75% будет работать и на 115200 и на 230400 (персоналка +-0%).
ИМХО, без кварца такие отклонения обеспечить сложно. С однократной калибровкой внутреннего RC разве что в термостат мегу засунуть и не вынимать. smile.gif
У Атмела есть платка отладочная батерфляй, мега169 работает от внутреннего генератора и обеспечивает связь с персоналкой. Дык там стоит часовой кварц на таймере1 и RC подстраивают от него периодически.
Go to the top of the page
 
+Quote Post

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

 


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


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