roboforum.ru

Технический форум по робототехнике.
Текущее время: 21 апр 2025, 17:16

Часовой пояс: UTC + 4 часа




Начать новую тему Ответить на тему  [ Сообщений: 5 ] 
Автор Сообщение
 Заголовок сообщения: STM32F100RB - USART съедает первый символ
СообщениеДобавлено: 07 фев 2012, 12:59 
Не в сети
Аватара пользователя

Зарегистрирован: 10 дек 2010, 13:16
Сообщения: 4995
Откуда: Красногорск МО
прог. языки: C, Python, wiring/processing
ФИО: Андрей
Что-то наступил на какие-то странные грабли - собирал скелет под новый проект, настроил USART. Прога сразу после сетапа всего харда шлет в УСАРТ "Хеллоу Ворлд!!!". А в терминал прилетает "еллоу Ворлд!!!". Все последующие отправки идут ок, символы не теряются. В режиме пошаговой отладки первая буква не теряется. Это наводит на мысль, что просто периферия не успевает стартануть. Есть ли какой-то флаг готовности у УАРТА (я совершенно наугад попробовал USART_FLAG_IDLE, но ессно это ни к чему не привело)???

Все флаги после инициализации клоков проверяются, все ОК. После того как прога входит в главный цикл все работает замечательно. Проблема только в первом символе, следующим за инициализацией...

_________________
Мой волшебник это я сам. Всю архитектуру программы придумал лично, а ребята помогли воплотить её. Я бы и сам мог написать, но лень учить язык и его конструкции.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: STM32F100RB - USART съедает первый символ
СообщениеДобавлено: 07 фев 2012, 14:24 
Не в сети
Аватара пользователя

Зарегистрирован: 15 сен 2007, 13:03
Сообщения: 6338
Откуда: Красноярск
прог. языки: ASM(МК), C(PC)
ФИО: Гагарский Андрей Александрович
мб выкакивать туда пустоту? хотя это конечно заплатка.. а не решенеие.. сам не люблю, но мб другого выхода и нет..

_________________
«Как сердцу выразить себя? … Мысль изреченная есть ложь!»
В этом мире меня подводит доброта и порядочность...
"двое смотрят в лужу, один видит лужу, другой отраженные в ней звезды"


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: STM32F100RB - USART съедает первый символ
СообщениеДобавлено: 07 фев 2012, 15:25 
Не в сети
Аватара пользователя

Зарегистрирован: 10 дек 2010, 13:16
Сообщения: 4995
Откуда: Красногорск МО
прог. языки: C, Python, wiring/processing
ФИО: Андрей
Duhas писал(а):
мб выкакивать туда пустоту? хотя это конечно заплатка.. а не решенеие.. сам не люблю, но мб другого выхода и нет..

Я почему-то не догадался погрешить вчера на мой новый переходник. Сегодня бас-пайратом посмотрю....

Странно, ведь уже раз пять делал и все было ОК с УАРТОМ. Мож вчера опять день невезения был. Ни уарт ни и2ц не заработали :-)))

_________________
Мой волшебник это я сам. Всю архитектуру программы придумал лично, а ребята помогли воплотить её. Я бы и сам мог написать, но лень учить язык и его конструкции.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: STM32F100RB - USART съедает первый символ
СообщениеДобавлено: 07 фев 2012, 17:15 
Не в сети
Аватара пользователя

Зарегистрирован: 14 авг 2007, 15:16
Сообщения: 168
Откуда: Ростов-на-Дону
прог. языки: C/C++
ФИО: Герасимов Иван
Код:
// Config Printf to USART1
int fputc(int ch, FILE *f)
{
   // Loop until the end of transmission
   while (USART_GetFlagStatus(USART1, USART_FLAG_TC) == RESET);
   
   USART_SendData(USART1, (uint8_t) ch);
   
   return ch;
}


Я так делал для настройки printf на прием данных через UART. Когда ожидание готовности стояло после USART_SendData, тоже терялся 1й символ. Проц тот же)


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: STM32F100RB - USART съедает первый символ
СообщениеДобавлено: 07 фев 2012, 19:56 
Не в сети
Аватара пользователя

Зарегистрирован: 10 дек 2010, 13:16
Сообщения: 4995
Откуда: Красногорск МО
прог. языки: C, Python, wiring/processing
ФИО: Андрей
Хм... Вот тоже - чо сам не допер? В i2c-шных функциях на ПИКе у меня именно так и есть все... Спасибо!

Добавлено спустя 2 часа 19 минут 43 секунды:
Да, это было оно. Спасибо Montoya!

_________________
Мой волшебник это я сам. Всю архитектуру программы придумал лично, а ребята помогли воплотить её. Я бы и сам мог написать, но лень учить язык и его конструкции.


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 5 ] 

Часовой пояс: UTC + 4 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 0


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

Найти:
Перейти:  
cron
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB
phpBB SEO