找回密码
 立即注册

QQ登录

只需一步,快速开始

打印 上一主题 下一主题
开启左侧

[M051] M0518 串口接收问题。

[复制链接]
跳转到指定楼层
楼主
RAYINGPX 发表于 2019-11-17 17:08:30 | 只看该作者 回帖奖励 |正序浏览 |阅读模式
M0518用串口接收数据时出问题。发送端共发送3个字节,固定第一字节数据会改变,其它两个字节的数据一直为0,可是接收端收到的数据,第一个字节是正常的,后面的第二、三字节却是乱的。本应为0的,但是像随机一样的数据;如果固定第二个字节数据变化,第一、三字节固定为0时,则接收到的,第二个字节正常,第一、三字节又是乱的,不为0。
收发的波特率是一样的。
接收中断如下:
/* 接收中断 */
void UART02_IRQHandler(void)
{
    uint8_t  u8InChar = 0;
    uint32_t u32IntSts = UART0->ISR;
    static uint8_t rec_cnt=0;

    if(u32IntSts & UART_ISR_RDA_INT_Msk)
    {
         while(UART_IS_RX_READY(UART0))
        {                               
          u8InChar = UART_READ(UART0);                               
            /* Check if buffer full */
               rec_buf[rec_cnt] = u8InChar;
               rec_cnt++;                                               
              if(rec_cnt >= 3)
             rec_cnt = 0;
        }
    }

}
程序是在M0518串口例程上稍做修改的
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 顶 踩
回复

使用道具 举报

板凳
匿名  发表于 2020-2-9 10:53:36
请问,你用到了串口发送中断吗?怎么清除的的发送中断标志。
回复 支持 反对

使用道具

沙发
匿名  发表于 2019-11-18 10:12:26
建议用示波器抓取串口上的波形去分析,怀疑还是发送端发来的数据就有问题
回复 支持 反对

使用道具

高级模式
B Color Image Link Quote Code Smilies |上传

本版积分规则

新唐MCU