реклама на сайте
подробности

 
 
> F103 глюк при работе с UART
dimone
сообщение Nov 12 2014, 09:17
Сообщение #1


Частый гость
**

Группа: Участник
Сообщений: 102
Регистрация: 23-02-09
Пользователь №: 45 242



Код нормально работал на SТМ32F101 и пересобрался для работы на F103 (платы анологичные) , и начались странные глюки..
-при возникновении прерывания приема в USART в обработчике при проверке средствами StdPeriph_Lib_V3.5.0 (на плате с 101 отлично работающем), иногда не детектится условие приема , на которое собственно настроено прерывание , и соответственно не вычитывает принятый байт возвращаясь в это же прерывание по циклу..
сбрасывает ситуацию условие "по умолчанию", с холостым вычитыванием .., причем именно чтением, "закоменченые" строки не работают!
Буду благодарен за конструктивные идею..
Код
..
  USART_Init(USART2, &USART_InitStructure);  
  USART_ITConfig(USART2, USART_IT_RXNE, ENABLE);
  USART_Cmd(USART2, ENABLE);                          
  }    
                  
                                      
void USART2_IRQHandler(void)
{
  if(USART_GetITStatus(USART2, USART_IT_RXNE))
  {    
      com_rx_buf[com_rx_pnt]=USART_ReceiveData(USART2);
      if(com_rx_pnt<com_rx_siz){com_rx_pnt++;}else {com_rx_pnt=0;}         
  }
  else
  {
         USART_ReceiveData(USART2);
         //USART_ClearFlag(USART2, USART_FLAG_RXNE);
         //USART_ClearITPendingBit(USART2, USART_IT_RXNE);
  }
}


Сообщение отредактировал dimone - Nov 12 2014, 09:23
Go to the top of the page
 
+Quote Post



Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 25th July 2025 - 03:05
Рейтинг@Mail.ru


Страница сгенерированна за 0.02228 секунд с 7
ELECTRONIX ©2004-2016