OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 2235|回复: 1

DMA发送数值只能发送1到4个数据,大于4出现问题

[复制链接]

1

主题

1

帖子

0

精华

新手上路

积分
21
金钱
21
注册时间
2022-7-20
在线时间
4 小时
发表于 2023-8-23 16:02:44 | 显示全部楼层 |阅读模式

void DMA1_Usart1Send(uint8_t *buf, uint16_t cndtr)//dma发送
{
    DMA1_Channel4->CCR &= ~(1 << 0);         /* 关闭DMA传输 */
    while (DMA1_Channel4->CCR & (1 << 0));   /* 确保DMA可以被设置 */
    DMA1_Channel4->CMAR = (uint32_t)buf;
    DMA1_Channel4->CNDTR = cndtr;            /* DMA传输数据量 */
    DMA1_Channel4->CCR |=0X01;          /* 开启DMA传输 */
       
}

DMA1_Usart1Send(&Gasbuf[0],4);              //用此函数正常

DMA1_Usart1Send(&Gasbuf[0],5);    //传递参数大于4时,出现问题,

正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

11

主题

2130

帖子

0

精华

论坛元老

Rank: 8Rank: 8

积分
4724
金钱
4724
注册时间
2015-1-10
在线时间
590 小时
发表于 2023-8-24 10:53:38 | 显示全部楼层
出什么问题?第5个数据丢了?
回复 支持 反对

使用道具 举报

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

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-2-24 17:57

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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