收藏0 举报
如果正在发送数据,处于串口中断中,这时接收也来了一串数据
//中断入口 { if(TC) if(RXNE) }如果此时执行到TC处,则数据在RXNE处就被接收了,如果此时已经在执行RXNE,并准备退出,则退出后,会再来一次中断. 另外,CM3的中断嵌套是硬件实现的.
“如果软件处理的不好,还是可能丢接收数据?” 答:任何硬件环境,都会有这个问题。 在STM32上,如果接收缓冲区为空时,收到第一个数据时会设置RXNE标志,在没有清除RNXE标志(即没有读出第一个数据)时,如果第二个数据又来了,则第一个数据不会丢失,只要在第三个数据到来之前,读出数据,就不会丢失数据。香水城 发表于 2010-1-23 13:35
本版积分规则 发表回复 回帖并转播 回帖后跳转到最后一页
发帖类勋章
时间类勋章
人才类勋章
等级类勋章
26
130
1
扫码关注 21ic 官方微信
扫码关注嵌入式微处理器
扫码关注电源系统设计
扫码关注21ic项目外包
扫码浏览21ic手机版
本站介绍 | 申请友情链接 | 欢迎投稿 | 隐私声明 | 广告业务 | 网站地图 | 联系我们 | 诚聘英才
京公网安备 11010802024343号