Микроконтроллеры, АЦП, память и т.д Темы касающиеся микроконтроллеров разных производителей, памяти, АЦП/ЦАП, периферийных модулей... |
18.04.2008, 13:42
|
|
Вид на жительство
Регистрация: 28.02.2008
Сообщений: 437
Сказал спасибо: 0
Сказали Спасибо 2 раз(а) в 2 сообщении(ях)
|
Вопрос про изменение UBRR и время начала приёма
Через какое время приёмник UART в микроконтроллере ATmega8515 начнёт принимать кадр ( начнёт детектировать СТАРТ-бит с новыми настройками) после того как я запишу новое значение в UBRR?
Например, у меня UART был настроен на скорость, при которой длина бита была 20мкС. Я приняв байт программирую UART на скорость, при которой длина бита будет 400мкС. Через какое время после программирования он будет детектировать СТАРТ-бит на новой скорости?
|
|
|
|
18.04.2008, 13:46
|
|
Вид на жительство
Регистрация: 28.02.2008
Сообщений: 437
Сказал спасибо: 0
Сказали Спасибо 2 раз(а) в 2 сообщении(ях)
|
Re: Вопрос про изменение UBRR и время начала приёма
Сообщение от Don_Ambrosio
|
Через какое время приёмник UART в микроконтроллере ATmega8515 начнёт принимать кадр ( начнёт детектировать СТАРТ-бит с новыми настройками) после того как я запишу новое значение в UBRR?
Например, у меня UART был настроен на скорость, при которой длина бита была 20мкС. Я приняв байт программирую UART на скорость, при которой длина бита будет 400мкС. Через какое время после программирования он будет детектировать СТАРТ-бит на новой скорости?
|
Т.е. запись в регистр-счётчик UBRR происходит сразу или по его обнулении
|
|
|
|
18.04.2008, 13:54
|
|
Вид на жительство
Регистрация: 27.07.2006
Сообщений: 308
Сказал спасибо: 0
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
|
На какой частоте работает МК?
Посчитай по коду, сколько тактов пройдет от начала выполнения программы, до записи новой инициализации.
Получишь ответ на свой вопрос.
Здесь не понятно:
Цитата:
|
длина бита будет 400мкС
|
Это у вас порт будет открыт, передача данных, будет осуществляться 400мкС. Длина бита, я сам мастак завернуть, но так, еще не пробовал. Не огорчайся, у меня тоже, иногда, такие перлы получаются ...
|
|
|
|
18.04.2008, 14:04
|
|
Вид на жительство
Регистрация: 28.02.2008
Сообщений: 437
Сказал спасибо: 0
Сказали Спасибо 2 раз(а) в 2 сообщении(ях)
|
Сообщение от retcom
|
Посчитай по коду, сколько тактов пройдет от начала выполнения программы, до записи новой инициализации.
Получишь ответ на свой вопрос.
|
Вы не поняли. Меня не это интересует.
А если я запустил команду записи нового значения в UBR. А у меня ещё байт принимается на старом значении.
Так вот. Будет UART ждать пока байт примется на старом значении UBRR или сразу запишет новое значение в счётчик UBRR?
|
|
|
|
18.04.2008, 14:07
|
|
Вид на жительство
Регистрация: 28.02.2008
Сообщений: 437
Сказал спасибо: 0
Сказали Спасибо 2 раз(а) в 2 сообщении(ях)
|
А если я запустил команду записи нового значения в UBR. А у меня ещё байт принимается на старом значении.
Так вот. Будет UART ждать пока байт примется на старом значении UBRR или сразу запишет новое значение в счётчик UBRR?
На телесистемах вот что сказали:
"Прескалер представляет собой вычитающий счетчик, который загружается из UBRR при достижении нуля."
http://www.telesys.ru/wwwboards/mcon...s/448863.shtml
Это правильно?
|
|
|
|
18.04.2008, 14:09
|
|
Почётный гражданин KAZUS.RU
Регистрация: 27.06.2005
Сообщений: 1,389
Сказал спасибо: 19
Сказали Спасибо 210 раз(а) в 156 сообщении(ях)
|
"The down-counter, running at system clock
(fosc), is loaded with the UBRRn value each time the counter has counted down to zero or when
the UBRRLn Register is written. A clock is generated each time the counter reaches zero."
Но, далее - в описании регистра:
"Writing UBRRL will trigger an immediate update of the baud rate prescaler."
То есть - новое значение будет загружено немедленно.
|
|
|
|
18.04.2008, 14:12
|
|
Вид на жительство
Регистрация: 28.02.2008
Сообщений: 437
Сказал спасибо: 0
Сказали Спасибо 2 раз(а) в 2 сообщении(ях)
|
Сообщение от TEHb
|
То есть - новое значение будет загружено немедленно.
|
На телесистемах вот что ПРЯМО ПРОТИВОПОЛОЖНОЕ сказали:
"Прескалер представляет собой вычитающий счетчик, который загружается из UBRR при достижении нуля."
http://www.telesys.ru/wwwboar...rol/...s/448863.shtml
Это правильно?
|
|
|
|
18.04.2008, 14:25
|
|
Вид на жительство
Регистрация: 27.07.2006
Сообщений: 308
Сказал спасибо: 0
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
|
Don_Ambrosio, покажите код.
|
|
|
|
18.04.2008, 14:49
|
|
Вид на жительство
Регистрация: 28.02.2008
Сообщений: 437
Сказал спасибо: 0
Сказали Спасибо 2 раз(а) в 2 сообщении(ях)
|
Сообщение от retcom
|
Don_Ambrosio, покажите код.
|
А я разве говорил что у меня какие-то проблемы в коде программы? При чём тут он? Читайте внимательней вопрос. Вопрос был не по программе , по устройству "железа" в ATmega8515 касательно работы модуля UART при записи в UBRR нового значения
|
|
|
|
18.04.2008, 15:05
|
|
Вид на жительство
Регистрация: 27.07.2006
Сообщений: 308
Сказал спасибо: 0
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
|
Вам надо настроить UART в бодах. Так, я понимаю?
Для синхронизации необходимо, чтоб приемник и передатчик работали на одной скорости. Если скорость будет разная, приниматься ничего небудет. Если вы одновременно меняете скорость и у приемника и у передатчика, то для этого, нужно остановить передачу, произвести инициализацию, возобновить передачу. Поправте меня, если я не прав.
|
|
|
|
Ваши права в разделе
|
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения
HTML код Выкл.
|
|
|
Тема |
Автор |
Раздел |
Ответов |
Последнее сообщение |
Вопрос про реле
|
Igor-2 |
Информация по радиокомпонентам |
9 |
21.06.2009 01:29 |
Вопрос про подсветку
|
lineyka2 |
Источники питания и свет |
4 |
17.03.2009 12:30 |
Вопрос про реле.
|
ANDAND |
Автоматика и аппаратура связи |
2 |
09.02.2009 12:49 |
Вопрос про МК ?
|
malyshevsergey |
Цифровые сигнальные процессоры |
3 |
07.01.2007 10:36 |
Часовой пояс GMT +4, время: 15:04.
|
|