[STM32H7] 【STM32H745I-DISCO试用】3.1 DAC输出任意波形

[复制链接]
1938|2
 楼主| pzw1758 发表于 2025-2-22 11:24 | 显示全部楼层 |阅读模式
本帖最后由 pzw1758 于 2025-2-22 11:26 编辑

在开机演示中,我们看到官方制作了一个波形发生器的Demo,经过查阅原理图和DAC的配置可推测出波形输出引脚为PA4(在扩展板上位于MOS引脚处)。
6712067b942b77a362.png
一、测试Demo程序输出波形效果1.1设定为方波
不同频率表现如下:
6414767b942cc23fd6.png
1.2设定为正弦波
2240167b942dca8447.png
1.3设定为三角波 1084767b942ee0e19a.png
二、DAC输出任意波形2.1噪声信号
CubeMX配置如下:
TIM6配置:
6347267b94316b0b1e.png
DAC配置:
4232767b943258a036.png
触发器(Trigger):选择TIM6也可以选择其他的定时器
输出波形选择:这里先选择噪声信号
噪声信号幅度选择:有12种可选,这里先选择一种最大。
在主函数中添加代码:
HAL_TIM_Base_Start(&htim6);//开启定时器
HAL_DAC_Start(&hdac1,DAC_CHANNEL_1);//开启DAC输出
观察波形:
Amp为[11:0]
1164567b943391eff1.png
Amp为[8:0]
8752167b943495610a.png
设置为不同的位数,DAC输出的噪声信号幅度各不相同,可以根据需要进行选择。
2.2三角波
CubeMX配置如下:(TIM6配置与之前一致)
4027767b943d5d2152.png
触发器(Trigger):选择TIM6也可以选择其他的定时器
输出波形选择:这里选择三角波信号
噪声信号幅度选择:有12种可选,这里先选择一种最大。
在主函数中添加代码:
HAL_TIM_Base_Start(&htim6);//开启定时器
HAL_DAC_Start(&hdac1,DAC_CHANNEL_1);//开启DAC输出
观察波形:
TIM6->ARR = 199;
294467b943e7a7247.png
同样的可以调整Amp的数值以改变输出幅度,并且可以更改TIM6触发更新中断的频率以达到调整频率的目的。
TIM6->ARR = 9;
3248667b943f604921.png
可以看到将TIM6触发更新中断的频率调整为原来的10倍后输出频率也变为了原来的10倍。
yangjiaxu 发表于 2025-3-6 15:11 | 显示全部楼层
你这个示波器界面是怎么做的?是什么软件啊?
 楼主| pzw1758 发表于 2025-3-7 11:02 | 显示全部楼层
yangjiaxu 发表于 2025-3-6 15:11
你这个示波器界面是怎么做的?是什么软件啊?

示波器是 梦源 文中图片是截图
您需要登录后才可以回帖 登录 | 注册

本版积分规则

5

主题

15

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部