硬汉嵌入式论坛

 找回密码
 立即注册
查看: 3610|回复: 8
收起左侧

[STM32H7] STM32L4, DAC DMA传输TIMER触发,调试时遇到的一些疑惑[已解决]

[复制链接]

2

主题

569

回帖

575

积分

金牌会员

积分
575
发表于 2019-6-2 20:56:24 | 显示全部楼层 |阅读模式
本帖最后由 leiyitan 于 2019-6-3 13:09 编辑

1.jpg
图1 STM32L433 手册DAC截图

2.jpg
图2 STM32L433 手册DMA截图
3.png
图3 https://www.amobbs.com/thread-5658387-1-1.html?_dsign=5368dceb
最近在做一个DAC 播放WAV的东西,8K 16bit的采样率的音频
用DMA+TIMER的方式,程序没有调通,翻阅手册,一知半解,产生了一些疑惑
【1】TIMx触发:由图一,TIMx触发是连接在DAC外设上的。DMA从内存取数据传送的固定地址的DAC外设时,是怎么根据TIMx触发的步调来传送数据的,TIMx触发并没有连接到DMA。
【2】触发源:两个DAC通道可以用同一个TIMx触发么,程序配置没问题,貌似实际不工作,可能是其还有什么地方没搞对。
【3】参考ST官方例程以前是顺序是 初始化打开DMA->初始化打开DAC->初始化TIM->打开TIM。由DMA产生传输完成中断,表示一包数据传输完成。
HAL库的参考例程则有点乱,一上来就打来DAC,打开TIM,根本都不关闭,后边用开关DMA控制传送。操作的顺序疑问。
看到硬汉最近也在做DAC的研究,赶紧来蹭一蹭了




回复

使用道具 举报

2

主题

569

回帖

575

积分

金牌会员

积分
575
 楼主| 发表于 2019-6-2 21:05:12 | 显示全部楼层
本帖最后由 leiyitan 于 2019-6-3 11:36 编辑

见5楼更新
回复

使用道具 举报

6

主题

216

回帖

234

积分

高级会员

积分
234
发表于 2019-6-2 22:13:54 | 显示全部楼层
leiyitan 发表于 2019-6-2 21:05
附上配置部分的代码,不知哪里还有问题
DAC_HandleTypeDef DAC_Handler;//DAC句柄
DAC_ChannelConfTypeDef ...

帮忙顶一顶
回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
107157
QQ
发表于 2019-6-3 09:12:39 | 显示全部楼层
1、这个是定时器触发后,DAC给DMA发出传输请求,实现数据从存储器到其寄存器的传输。
2、没问题,H7测试完成正常
3、不用关闭,一直开着就行。
回复

使用道具 举报

2

主题

569

回帖

575

积分

金牌会员

积分
575
 楼主| 发表于 2019-6-3 11:28:57 | 显示全部楼层
感谢硬汉的专业解答,我修改过代码了,
用固件库的风格,改了一些地方,改的不伦不类
现在可以正常工作了,现上传代码。
dac.h (205 Bytes, 下载次数: 11)
dac.c (13.9 KB, 下载次数: 26)

代码逻辑有点啰嗦,流程不清晰,能用,大神勿喷
WAV 文件解析部分代码就不传上来了,网上一大乱抄的。
再次感谢硬汉专业的解疑,期待硬汉完整的大作。


回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
107157
QQ
发表于 2019-6-3 11:37:13 | 显示全部楼层
leiyitan 发表于 2019-6-3 11:28
感谢硬汉的专业解答,我修改过代码了,
用固件库的风格,改了一些地方,改的不伦不类
现在可以正常工 ...

我以前用F103就做过一个,就是有呲呲的高频声音,听着不舒服。
回复

使用道具 举报

2

主题

569

回帖

575

积分

金牌会员

积分
575
 楼主| 发表于 2019-6-3 11:44:00 | 显示全部楼层
eric2013 发表于 2019-6-3 11:37
我以前用F103就做过一个,就是有呲呲的高频声音,听着不舒服。

嗯,音质就不说了,只能听个响,
音质要想好,就加独立解码芯片和运放
现在运放用的V5板子同款AW8733...
回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
107157
QQ
发表于 2019-6-3 11:48:22 | 显示全部楼层
leiyitan 发表于 2019-6-3 11:44
嗯,音质就不说了,只能听个响,
音质要想好,就加独立解码芯片和运放
现在运放用的V5板子同款AW8733.. ...

这种东西,可以买国产的MP3芯片解决方案,超值,几块钱,国内好几家公司搞这个的

搜集国内各种超便宜的MP3编码解码芯片解决方案,零售仅需几块钱,批量更便宜
http://www.armbbs.cn/forum.php?m ... 6902&fromuid=58
(出处: 安富莱电子论坛)
回复

使用道具 举报

2

主题

569

回帖

575

积分

金牌会员

积分
575
 楼主| 发表于 2019-6-3 12:32:27 | 显示全部楼层
本帖最后由 leiyitan 于 2019-6-3 12:35 编辑
eric2013 发表于 2019-6-3 11:48
这种东西,可以买国产的MP3芯片解决方案,超值,几块钱,国内好几家公司搞这个的

搜集国内各种超便宜 ...

国产的MP3芯片我早都在一些项目里边用上了,太方便了,
一个UART控制所有播放,不播放的时候可以直接关闭电源部分。
还是要看应用场景,消费级的不用死扣功耗和PCB面积,这种MP3芯片真是神器。
我现在是做的一个工业级的手持设备,-40-85°,防爆,超低功耗等诸多要求限制了很多东西的使用。。。
有些做低功耗的设备,甚至需要尽量避免使用UART这种接口,尽量使用IIC接口,不仅可以多个挂一起,还省电一些。


回复

使用道具 举报

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

本版积分规则

QQ|小黑屋|Archiver|手机版|硬汉嵌入式论坛

GMT+8, 2024-5-20 22:50 , Processed in 0.186400 second(s), 28 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2023, Tencent Cloud.

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