找回密码
 立即注册
搜索
热搜: 星闪 最新 活动
查看: 357|回复: 0

M23系列使用串口+DMA循环发送

[复制链接]

4

主题

0

回帖

22

积分

新手上路

积分
22
发表于 2025-6-2 15:48:35 | 显示全部楼层 |阅读模式
若CHEN位被清零时DMA传输还未完成,重新使能CHEN位DMA传输将分两种情况:
– 在重新使能DMA通道前,未对该通道的相关寄存器进行操作,则DMA将继续完成上次的传输;
– 在重新使能DMA通道前,对相应通道的DMA_CHxCNT、DMA_CHxPADDR或DMA_CHxMADDR寄存器进行了操作,则DMA将开始一次新的传输
若清零CHEN位时,DMA传输已经完成,之后未对相应通道的DMA_CHxCNT、DMA_CHxPADDR或DMA_CHxMADDR寄存器进行操作前便使能DMA通道,则不会触发任何DMA传输

下面将用代码展示:

    dma_channel_disable(DMA_CH0);
    usart_dma_transmit_config(USART1, USART_TRANSMIT_DMA_DISABLE);
    DMA_CHCNT(channelx) = len;
     DMA_CHMADDR(channelx) = (uint32_t)buf;
   
        usart_dma_transmit_config(USART1, USART_TRANSMIT_DMA_ENABLE);
    dma_channel_enable(DMA_CH0);

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

本版积分规则

Archiver|手机版|小黑屋|【淇诺科技】技术论坛 ( 粤ICP备14010465号-1|粤ICP备14010465号-1 )

GMT+8, 2026-4-2 16:06 , Processed in 0.133529 second(s), 19 queries .

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

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