OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 2890|回复: 0

请问数据传输时串口死掉有什么办法检测吗?

[复制链接]

58

主题

96

帖子

0

精华

初级会员

Rank: 2

积分
116
金钱
116
注册时间
2015-7-27
在线时间
21 小时
发表于 2016-1-21 10:12:15 | 显示全部楼层 |阅读模式
20金钱
大家好,
我初学stm32,,现在是用两个stm32使用蓝牙芯片做数据传输,通过串口输数据,直接传输到另一个蓝牙,通过另一个蓝牙的串口显示出来,
现在在做压力测试,不过有时候跑了几天就会死掉,发送的那个就是死掉的那个,死了以后再在PC的串口工具上上输什么都不会传输过去了,直接死了

请问是不是可以用看门狗复位(请问是不是用独立看门狗?)或者有什么其他方式可以检测到串口死吗?

串口的中断回调是这样的

void USART1_IRQHandler(void)
{
  portBASE_TYPE TaskWoken = pdFALSE;
        vTaskSuspendAll();
  if (USART_GetITStatus(USART1, USART_IT_RXNE) == SET)
  {
    unsigned char RxChar;
    unsigned char Event  = DEMO_EVENT_UART_RX;

    RxChar = USART_ReceiveData(USART1);
    xQueueSendFromISR(UartRx, &RxChar, &TaskWoken);
    xQueueSendFromISR(Event, &Event, &TaskWoken);   
        }
        xTaskResumeAll();
  portEND_SWITCHING_ISR(TaskWoken);
}








正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-6-21 18:30

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表