历史上的今天
今天是:2024年09月16日(星期一)
2019年09月16日 | 解决stm8会卡在串口中断的问题
2019-09-16 来源:eefocus
原因
串口进入了OR(过载错误)中断
解决方法
必须添加if(UART1_GetITStatus(UART1_IT_RXNE )!= RESET),若不添加,会导致UART1->DR被异常读取,不断进入中断处理函数
若UART的RXNE状态位已经被置1,串口又收到数据,将会进入OR(过载错误)中断,需要先读取UART_SR,再读取UART_DR才可把OR位中断状态清零,调用UART1_GetITStatus(UART1_IT_RXNE )即是读取UART_SR
在调用UART1_ReceiveData8()读取了UART1->DR后即可清除中断UART1_IT_RXNE标志位
INTERRUPT_HANDLER(UART1_RX_IRQHandler, 18)
{
if(UART1_GetITStatus(UART1_IT_RXNE )!= RESET)
UART1_ReceiveData8();
}
上一篇:STM8 串口接收字符串问题
下一篇:Zynq篇——uart中断
史海拾趣
|
EVC 4.2下实现系统托盘,出问题了。strcpy不能实现功能。提示szTip的类型是unsigned short数组,奇怪了 NOTIFYICONDATA tnd; strcpy(tnd.szTip,\"Left Click To Main Frame\"); //图标提示为”单击打开主界面” 错误提示在下面的strcpy处 error C2664: \'strcpy\' : cannot convert parameter 1 from \'unsigned short [64]\' to \'char *\' 指针好 ...… 查看全部问答> |
|
哪位在wince下实现过 wifi的ADHOC功能? 据说,改功能能够在两台wince设备间互传文件,不需要连接AP。 那不就可以替代蓝牙了? 哪位实现过?是驱动的支持?OS有相关组件?还是纯应用层的?… 查看全部问答> |
|
我的2440开发板上除了标准的三个串口,还有用16c2550芯片扩展的总线型串口,小弟欲写wince下扩展串口的驱动,请问哪位大侠写过或指点一下,谢谢… 查看全部问答> |
|
想问一下如何将QEP电路输出的方向信号引出来,接到电机驱动芯片的方向引脚,教教我吧!! [ 本贴由 wuhui 于 2007-4-18 10:26 AM 最后编辑 ]… 查看全部问答> |




