完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
一、DAC的介绍
1.DAC(数字/模拟转换模块) 把输入的数字编码,转换成对应的模拟电压输出。 2.ADC(模拟/数字转换模块) 把输入的模拟信号,转换成对应的数字信号。 主要对DAC进行介绍 3.DAC的特点 2个DAC转换器 8位或12位单调输出 12位模式下数据的左对齐或者右对齐 同步更新功能 噪声波形生成 三角波形生成 双DAC通道同时或者分别转换 每个通道都有DMA功能 4.DAC模块功能框图 ①中表示的是DAC模块模拟部分的供电和DAC模块的参考电压 ,STM32 的 DAC 规定了它的参考电压 输入范围为 2.4——3.3V。一般,取值为3.3V。②中DAC_OUTx表示DAC输出通道,对应引脚是PA4或者PA5。 5.数据的写入 在使用 DAC 时,不能直接对上述 DORx 寄存器写入数据,任何输出到 DAC 通道 x 的数据都必须写入到 DHRx 寄存器中(其中包含 DHR8RxDHR12Lx 等,根据数据对齐方向和分辨率的情况写入到对应的寄存器中)。数据被写入到 DHRx 寄存器后,DAC 会根据触发配置进行处理,若使用硬件触发,则 DHRx 中的数据会在 3 个 APB1 时钟周期后传输至 DORx,DORx 随之输出相应的模拟电压到输出通道;若 DAC 设置为外部事件触发,可以使用定时器(TIMx_TRGO)、EXTI_9信号或软件触发(SWTRIGx)这几种方式控制数据 DAC 转换的时机。 二、DAC相关寄存器 1.DAC控制寄存器(DAC_CR) 2.DAC软件触发寄存器(DAC_SWTRIGR) 3.DAC通道 1 的 12 位右对齐数据保持寄存器(DAC_DHR12R1) 4. DAC通道 1 的 12 位左对齐数据保持寄存器(DAC_DHR12L1) 5.DAC通道 1 的 8 位右对齐数据保持寄存器(DAC_DHR8R1) 6.DAC通道 1 数据输出寄存器(DAC_DOR1) 更多详细内容,请参考STM32中文手册进行了解 三、使用DAC输出周期2khz的正弦波 1.使用Audition输出一个周期2khz的正弦波 ①选择文件-》新建-》音频文件 ②设置相关采用频率 ③选择生成-》音调 ④设置相关频率 ⑤导出为wav文件,选择文件-》导出-》文件 2.使用UltraEdit得到相关数据 ①用该软件打开刚才保存的wav文件 ②CTRL+A,接着鼠标右键,选择 十六进制复制选定视图,将内容粘贴到一个新建文件中 ③在新建文件中,CTRL+A,接着鼠标右键,选择范围输入起始的行号和列号,确定就选中了整个我们需要的内容 3.使用notepad++添加相关内容 下载地址: https://notepad-plus.en.softonic.com/ ①打开该软件后,将上面选中的内容复制粘贴到该软件中(在上面软件中,右键选择复制) ②在需要添加内容的位置,alt+c 4.添加数据 ①打开野火提供的样例程序——DAC输出正弦波 ②将对应上面内容复制到存放正弦波数据的位置 ③编译烧录 ④使用示波器观察得到的波形 采用Audition生成的正弦波的数据,并没有的到想要的波形,最后使用野火官方给出的python脚本实现采点输出。 波形如下 四、使用DAC输出数字音频歌曲数据转换为模拟音频波形输出 1.使用Audition截取一段喜欢的音乐 ①选择文件-》打开,找到对应的音乐 ②选中一段,然后右键,选择存储选区,接着更改采用类型 2.使用UltraEdit得到相关数据 方法跟上面一样 3.使用notepad++添加相关内容 方法跟上面一样 4.添加数据 ①打开野火提供的样例程序——DAC输出正弦波 ②将对应上面内容复制到存放正弦波数据的位置 ③编译烧录 ④使用示波器观察得到的波形 五、小结 通过Au的方式生成正弦波,得到的数据是16位的,转成12位后,仍旧不能够输出很规整的正弦波。弄了好久都没有实现正弦波的输出,最终,采用采点的方式实现。 |
|
|
|
只有小组成员才能发言,加入小组>>
调试STM32H750的FMC总线读写PSRAM遇到的问题求解?
1784 浏览 1 评论
X-NUCLEO-IHM08M1板文档中输出电流为15Arms,15Arms是怎么得出来的呢?
1621 浏览 1 评论
1088 浏览 2 评论
STM32F030F4 HSI时钟温度测试过不去是怎么回事?
729 浏览 2 评论
ST25R3916能否对ISO15693的标签芯片进行分区域写密码?
1680 浏览 2 评论
1938浏览 9评论
STM32仿真器是选择ST-LINK还是选择J-LINK?各有什么优势啊?
734浏览 4评论
STM32F0_TIM2输出pwm2后OLED变暗或者系统重启是怎么回事?
570浏览 3评论
596浏览 3评论
stm32cubemx生成mdk-arm v4项目文件无法打开是什么原因导致的?
559浏览 3评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-24 20:37 , Processed in 0.779869 second(s), Total 79, Slave 62 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号
|