|
Bubble в UART LPC2148 |
|
|
|
Sep 25 2007, 09:59
|
Участник

Группа: Участник
Сообщений: 39
Регистрация: 24-08-07
Пользователь №: 30 026

|
Работаю с LPC2148, но никак не могу решить проблему с UART. Осциллятор у меня на 12Мгц из-за USB модуля, второй осциллятор часовой. Понятное дело что битрейт на UART с нулевой ошибкой выставить невозможно. На UART0 реализован обычный текстовый терминал. На UART1 рабочее устройство с которым ведется обмен данными. Так вот в зависимости от степени расхождения в битрейте с устройством на длинных пакетах может произойти какой-то срыв в мозгах у LPC и он начинает "базарить" (bubble) на оба UART как наружу так и вовнутрь, т.е. в течение нескольких секунд я наблюдаю на экране терминала как быстро быстро прет всякая х...ня, тоже самое происходит и вовнутрь, т.е. в течение этого же времени оба модуля активно принимают "левые" данные в основном просто нули. Подчеркиваю, что базарит он на оба модуля одновременно, и так посрет посрет данными и успокаивается и продолжает работать. Раньше bubble вызывал вообще зависание, да такое что внешний ресет не помогал, а помогало только выключение питание или сторожевой таймер, но я поиграл с таймингами MAM и теперь он не всегда зависает. Плюс к этому я выяснил что если во время работы с PLL, устройство что-нибудь ответит в UART, то это bubble с последующим гарантированным зависанием. Раньше эта прога работала на LPC2194 с осциллятором 11059200 и таких проблем не было. Кстати терминал параллельно продублирован на логический канал USB и когда UART0 гадит мусором с свою терминальную программу, то в специальной терминальной программе подключенной через USB в это время все в порядке, так что это точно модуль UART0 сам что-то гонит, а не моя прога что-то сдуру посылает.
|
|
|
|
|
 |
Ответов
|
Sep 25 2007, 10:10
|

Гуру
     
Группа: Свой
Сообщений: 13 372
Регистрация: 27-11-04
Из: Riga, Latvia
Пользователь №: 1 244

|
Цитата(3m-soft @ Sep 25 2007, 12:59)  Понятное дело что битрейт на UART с нулевой ошибкой выставить невозможно. С нулевой и не надо, а с достаточной - воспользуйтесь fractional baud rate generator Цитата срыв в мозгах у LPC и он начинает "базарить" (bubble) на оба UART как наружу так и вовнутрь Поверьте моему опыту, что срыв не в мозгах LPC, а у Вас в программе.
--------------------
Feci, quod potui, faciant meliora potentes
|
|
|
|
Сообщений в этой теме
3m-soft Bubble в UART LPC2148 Sep 25 2007, 09:59 alexander55 Цитата(3m-soft @ Sep 25 2007, 13:59)... Sep 25 2007, 10:16 3m-soft Fractional baud rate generator я использую с самог... Sep 25 2007, 10:21 alexander55 Цитата(3m-soft @ Sep 25 2007, 14:21)... Sep 25 2007, 10:38 3m-soft Дело ещё в том, что разных устройств таких для UAR... Sep 25 2007, 10:41 alexander55 Цитата(3m-soft @ Sep 25 2007, 14:41)... Sep 25 2007, 10:49 _basile Цитата(3m-soft @ Sep 25 2007, 14:41)... Sep 25 2007, 11:07 3m-soft Цитата(alexander55 @ Sep 25 2007, 15:49) ... Sep 25 2007, 11:07 alexander55 Цитата(3m-soft @ Sep 25 2007, 15:07)... Sep 25 2007, 11:13 3m-soft За счет Fractional baud rate у меня ошибка 0,0006%... Sep 25 2007, 11:51 _basile Цитата(3m-soft @ Sep 25 2007, 15:51)... Sep 25 2007, 19:03 3m-soft Не согласится ли кто из умных форума сего посмотре... Sep 25 2007, 13:30 amw Вероятно порблема в том, что передача или прием да... Sep 25 2007, 15:17 3m-soft Цитата(amw @ Sep 25 2007, 20:17) Вероятно... Sep 25 2007, 15:40 Сергей Борщ Цитата(3m-soft @ Sep 25 2007, 18:40)... Sep 25 2007, 19:16 Alechek Цитата(3m-soft @ Sep 25 2007, 21:40)... Sep 26 2007, 12:31 3m-soft Осенило меня совсем отключить MAM, а не как прежде... Sep 26 2007, 11:38 zltigo Цитата(3m-soft @ Sep 26 2007, 14:38)... Sep 26 2007, 11:47 Zdrav http://tech.groups.yahoo.com/group/lpc2000/message... Sep 28 2007, 17:00 Zdrav Посмотрел исходник. У вас каждьй spurrious IRQ три... Sep 29 2007, 04:38
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|