Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Keil 3.51 врет во вкладке UARTx
Форум разработчиков электроники ELECTRONIX.ru > Микроконтроллеры (MCs) > ARM
Spb_Alex
Keil неверно отображает значение Baudrate или я ошибаюсь?
keil 3.51, RV, LPC213x

PCLK = 11.059200
PCLK/16 = 691200 - делитель
его делю на скорость 9600, получаю 72, что и пишу в делитель, но keil 3.51 пишет в debug session, что у меня скорость 12000 (а 9600 он пишет, когда делитель = 90).

параметры порта 8 бит| 1стоповый | без parity
SanvaldYV
Цитата(Spb_Alex @ Dec 19 2007, 12:53) *
Keil неверно отображает значение Baudrate или я ошибаюсь?


Я думаю проще всего взять осциллограф и посмотреть какая там скорость у вас на самом деле, если та которую Вы и хотели получить, значит Кейл врет. smile.gif
asket
Цитата(Spb_Alex @ Dec 19 2007, 12:53) *
Keil неверно отображает значение Baudrate или я ошибаюсь?
keil 3.51, RV, LPC213x


А где брали Keil 3.51?wink.gif Ссылочку можно?
Spb_Alex
Цитата(asket @ Dec 20 2007, 15:38) *
А где брали Keil 3.51?wink.gif Ссылочку можно?

электронщик принес smile.gif
sergvks
Цитата(asket @ Dec 20 2007, 15:38) *
А где брали Keil 3.51?wink.gif Ссылочку можно?

Наверно имеется в виду 3.15b. Эту версию ставить не надо. Пользуюсь кейлом с версии 2.50 так этот 3.15b самое глючное создание в плане компиляции какое мне приходилось видеть.
Зато при разборке функций которые вдруг перестали правильно работать на новой версии компилятора в совершенстве овладеваешь языком ассемблера.
Кстати при компиляции ассемблерной вставки lsl r1,r1,#2 этот компилятор говорит о синтаксической ошибке, а при записи mov r1,r1,lsl #2 он генерирует те же lsl r1,r1,#2.
Alex03
Цитата(Spb_Alex @ Dec 19 2007, 14:53) *
Keil неверно отображает значение Baudrate или я ошибаюсь?
keil 3.51, RV, LPC213x

PCLK = 11.059200
PCLK/16 = 691200 - делитель
его делю на скорость 9600, получаю 72, что и пишу в делитель, но keil 3.51 пишет в debug session, что у меня скорость 12000 (а 9600 он пишет, когда делитель = 90).

параметры порта 8 бит| 1стоповый | без parity


А что значит "отображает"?
В симуляции, в отладке в железе или как? Если в железе то как он может это сделать?

Ну и Fractional Divider у вас не задействован случайно? Хотя им можно только уменьшить частоту.
aaarrr
Цитата(sergvks @ Dec 22 2007, 14:18) *
Кстати при компиляции ассемблерной вставки lsl r1,r1,#2 этот компилятор говорит о синтаксической ошибке, а при записи mov r1,r1,lsl #2 он генерирует те же lsl r1,r1,#2.

И правильно делает - нет у ARM'а такой инструкции.
Spb_Alex
Цитата(Alex03 @ Dec 23 2007, 10:41) *
А что значит "отображает"?
В симуляции, в отладке в железе или как? Если в железе то как он может это сделать?

Ну и Fractional Divider у вас не задействован случайно? Хотя им можно только уменьшить частоту.

отображает на железе, во вкладке UART0

поиск по даташиту "Fractional Divider" результатов не дал, это что такое?
SanvaldYV
Цитата(Spb_Alex @ Dec 24 2007, 11:20) *
поиск по даташиту "Fractional Divider" результатов не дал, это что такое?


Очень странный у Вас поиск 07.gif

"UART0 Fractional Divider Register (U0FDR - 0xE000 C028)
This register is available in LPC213x/01 devices only.
The UART0 Fractional Divider Register (U0FDR) controls the clock pre-scaler for the baud rate generation and can be read and written at user’s discretion. This pre-scaler takes the APB clock and generates an output clock per specified fractional requirements."

Это регистр для более точной подстройки скорости УАРТа под ту, которую вы хотите получить. Если вы не записывали сами DIVADDVAL и MULVAL, то там "0" и "1" соответственно и они никак не влияют на скорость.
Alex03
Цитата(Spb_Alex @ Dec 24 2007, 13:20) *
отображает на железе, во вкладке UART0


Интересно откуда он это дело берёт.
Я keil-ом не пользуюсь, но насколько я знаю в LPC теневых регистров нет, а чтобы прочитать делители УАРТа надо DLAB установить, иначе прочитается другое....


Цитата
поиск по даташиту "Fractional Divider" результатов не дал, это что такое?

Читать надо не датиш а User Manual.


О! А частота кварца в проекте правильная стоит (поди есть такая настройка)?
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.