在开机演示中,我们看到官方制作了一个波形发生器的Demo,经过查阅原理图和DAC的配置可推测出波形输出引脚为PA4(在扩展板上位于MOS引脚处)。
 


一、测试Demo程序输出波形效果1.1设定为方波

不同频率表现如下:

1.2设定为正弦波
 


1.3设定为三角波 


二、DAC输出任意波形2.1噪声信号

CubeMX配置如下:
TIM6配置:

DAC配置:

触发器(Trigger):选择TIM6也可以选择其他的定时器
输出波形选择:这里先选择噪声信号
噪声信号幅度选择:有12种可选,这里先选择一种最大。
在主函数中添加代码:

HAL_TIM_Base_Start(&htim6);//开启定时器
HAL_DAC_Start(&hdac1,DAC_CHANNEL_1);//开启DAC输出

观察波形:
Amp为[11:0]

Amp为[8:0]

设置为不同的位数,DAC输出的噪声信号幅度各不相同,可以根据需要进行选择。

2.2三角波

CubeMX配置如下:(TIM6配置与之前一致)

触发器(Trigger):选择TIM6也可以选择其他的定时器
输出波形选择:这里选择三角波信号
噪声信号幅度选择:有12种可选,这里先选择一种最大。
在主函数中添加代码:

HAL_TIM_Base_Start(&htim6);//开启定时器
HAL_DAC_Start(&hdac1,DAC_CHANNEL_1);//开启DAC输出

观察波形:
TIM6->ARR = 199;

同样的可以调整Amp的数值以改变输出幅度,并且可以更改TIM6触发更新中断的频率以达到调整频率的目的。
TIM6->ARR = 9;

可以看到将TIM6触发更新中断的频率调整为原来的10倍后输出频率也变为了原来的10倍。
Logo

火山引擎开发者社区是火山引擎打造的AI技术生态平台,聚焦Agent与大模型开发,提供豆包系列模型(图像/视频/视觉)、智能分析与会话工具,并配套评测集、动手实验室及行业案例库。社区通过技术沙龙、挑战赛等活动促进开发者成长,新用户可领50万Tokens权益,助力构建智能应用。

更多推荐