找回密码
 立即注册
查看: 396|回复: 2

串口DMA如何让当前已接受的数量清零。

[复制链接]
  • TA的每日心情
    慵懒
    2024-5-2 11:18
  • 签到天数: 12 天

    [LV.3]偶尔看看II

    7

    主题

    46

    回帖

    387

    积分

    中级会员

    积分
    387
    发表于 2023-7-13 14:51:06 | 显示全部楼层 |阅读模式
    串口DMA如何让当前已接受的数量清零。

    void BMM_Config(void)
    {
            P_SW2 = 0x80;
    //发送配置   
            BMM_UR1T_CFG = 0x80;                //bit7 1:Enable Interrupt        BMM_UR1T_STA = 0x00;        BMM_UR1T_AMT = 0xff;                //设置传输总字节数:n+1        BMM_UR1T_TXA = BmmBuffer;        BMM_UR1T_CR = 0xc0;                        //bit7 1:使能 UART1_BMM, bit6 1:开始 UART1_BMM 自动发送

    //接收配置

            BMM_UR1R_CFG = 0x80;                //bit7 1:Enable Interrupt                 BMM_UR1R_STA = 0x00;

            BMM_UR1R_AMT = 0x64;                //设置传输总字节数:n+1    这个地方配置100

            BMM_UR1R_RXA = BmmBuffer;        BMM_UR1R_CR = 0xa1;                        //bit7 1:使能 UART1_BMM, bit5 1:开始 UART1_BMM 自动接收, bit0 1:清除 FIFO
    }
    void main()
    {
    if((BmmBuffer[BMM_UR1R_DONE ]  == 0x10 ) &&(BmmBuffer[BMM_UR1R_DONE-1 ]  == 0x09))       
    {
    //这里我想在这里清理     BMM_UR1R_DONE 为 0

    //BMM_UR1R_DONE = 0

    //我发现 现在只有产生接收中断 BMM_UR1R_DONE 才会变为0
    //我现在数据长度不定 有的一帧 8 ~ 20个字节
    // 这个想法能够实现吗?
    }
    }
    回复 送花

    使用道具 举报

  • TA的每日心情
    奋斗
    昨天 08:53
  • 签到天数: 140 天

    [LV.7]常住居民III

    26

    主题

    1337

    回帖

    4159

    积分

    论坛元老

    积分
    4159
    发表于 2023-7-13 20:17:50 | 显示全部楼层
    可以参考这个帖子的方法:
    串口1使用DMA中断+软件超时接收不定长数据心得
    https://www.stcaimcu.com/forum.php?mod=viewthread&tid=2710
    (出处: 国芯论坛-STC全球32位8051爱好者互助交流社区)
    回复 支持 反对 送花

    使用道具 举报

  • TA的每日心情
    慵懒
    2024-5-2 11:18
  • 签到天数: 12 天

    [LV.3]偶尔看看II

    7

    主题

    46

    回帖

    387

    积分

    中级会员

    积分
    387
     楼主| 发表于 2023-7-17 22:25:57 | 显示全部楼层
    乘风飞扬 发表于 2023-7-13 20:17
    可以参考这个帖子的方法:
    串口1使用DMA中断+软件超时接收不定长数据心得
    https://www.stcaimcu.com/forum. ...

    已经开始研究谢谢。
    回复 支持 反对 送花

    使用道具 举报

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

    本版积分规则

    QQ|手机版|深圳国芯人工智能有限公司 ( 粤ICP备2022108929号-2 )

    GMT+8, 2024-5-15 05:11 , Processed in 0.054595 second(s), 36 queries .

    Powered by Discuz! X3.5

    © 2001-2024 Discuz! Team.

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