Портал для радиолюбителей и разработчиков электроники · с 2003 годаРеклама на сайте
Найти компонент, схему или даташит

Даташиты, справочник отечественных приборов, схемы с разбором и живой форум


 
Опции темы

Silabs баг uart0

Непрочитано 30.07.2015, 21:18  
12val12
Временная регистрация
 
Регистрация: 17.03.2009
Адрес: Киев
Сообщений: 68
Сказал спасибо: 19
Сказали Спасибо 1 раз в 1 сообщении
12val12 на пути к лучшему
По умолчанию Silabs баг uart0

При передаче через Uart0 числа 10 в компьютерный ком порт
передается паразитно число 13 и потом число 10
проверено на разных скоростях внутри диапазона 9600-115200
проверено ка на железном Com так и на мосте usb-uart
Также проверено разными программами приема
Миниатюры:
Нажмите на изображение для увеличения
Название: Uart_bug.PNG
Просмотров: 164
Размер:	107.1 Кб
ID:	81916   Нажмите на изображение для увеличения
Название: Uart_bug2.PNG
Просмотров: 132
Размер:	96.0 Кб
ID:	81917   Нажмите на изображение для увеличения
Название: Uart_bug3.PNG
Просмотров: 139
Размер:	79.6 Кб
ID:	81918  

Реклама:

Последний раз редактировалось 12val12; 30.07.2015 в 21:40.
12val12 вне форума  
Непрочитано 30.07.2015, 21:33  
12val12
Временная регистрация
 
Регистрация: 17.03.2009
Адрес: Киев
Сообщений: 68
Сказал спасибо: 19
Сказали Спасибо 1 раз в 1 сообщении
12val12 на пути к лучшему
По умолчанию Re: Silabs баг uart0

http://www.keil.com/forum/7624/
тут такое же было на нашел как избавились?
12val12 вне форума  
Непрочитано 31.07.2015, 00:37  
Харрисон
Временная регистрация
 
Регистрация: 17.01.2010
Сообщений: 60
Сказал спасибо: 3
Сказали Спасибо 31 раз(а) в 19 сообщении(ях)
Харрисон на пути к лучшему
По умолчанию Re: Silabs баг uart0

код 13 - возврат каретки и код 10 - перевод строки - являются в сумме аналогом "ввода", или, если хотите, кнопки "Enter".

Ищите: или у вас, или у среды передача заканчивается "enter'ом"...
Харрисон вне форума  
Сказали "Спасибо" Харрисон
12val12 (31.07.2015)
Непрочитано 31.07.2015, 01:09  
Yurkin2014
Заблокирован
 
Регистрация: 21.01.2014
Сообщений: 589
Сказал спасибо: 7
Сказали Спасибо 267 раз(а) в 206 сообщении(ях)
Yurkin2014 на пути к лучшему
По умолчанию Re: Silabs баг uart0

Сообщение от 12val12 Посмотреть сообщение
передается паразитно число 13 и потом число 10
Это свойство функции putchar(). Эта функция не стандартная для SDCC, поэтому можно докопаться до её исходников. Вот, например, она такой может иметь вид (взято отсюда)
Код:
//-----------------------------------------------------------------------------
// putchar
//-----------------------------------------------------------------------------
//
// Return Value : None
// Parameters : character to send to UART
//
// This function outputs a character to the UART.
//-----------------------------------------------------------------------------
void putchar (char output)
{
if (output == '
')
{
while (!TI0);
TI0 = 0;
SBUF0 = 0x0D;
}
while (!TI0);
TI0 = 0;
SBUF0 = output;
}
Видимо, прежде всего она задумывалась для передачи текста, поэтому когда встречается переход на новую строку, эта функция услужливо вставляет и перевод каретки на начало строки. Я так думаю.
Yurkin2014 вне форума  
Сказали "Спасибо" Yurkin2014
12val12 (31.07.2015)
Непрочитано 31.07.2015, 11:58  
12val12
Временная регистрация
 
Регистрация: 17.03.2009
Адрес: Киев
Сообщений: 68
Сказал спасибо: 19
Сказали Спасибо 1 раз в 1 сообщении
12val12 на пути к лучшему
По умолчанию Re: Silabs баг uart0

Спасибо уже понял что это за гадость !
из за уродов потерял пару часов
в итоге написал передачу прямо через регистр
ничем нехуже
однако надо ждать конца передачи вручную
через проверку флага или просто задержку
SBUF0=S;
small_delay(30) ;
12val12 вне форума  
 
Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Вопросик по Silabs C8051FXXX serb-radio Микроконтроллеры, АЦП, память и т.д 3 29.12.2009 13:19
SiLabs, чем кодить? ua_gruzin Микроконтроллеры, АЦП, память и т.д 14 27.07.2009 18:47
Симуляция SiLabs MCU в Keil'e iggor Микроконтроллеры, АЦП, память и т.д 2 21.04.2008 12:31
Интегрированная среда разработки SiLabs IDE IZEVS Proteus, KiCAD и другие ECAD 10 21.04.2008 09:37


Часовой пояс GMT +4, время: 23:20.


Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.