细说STM32单片机用定时器触发DAC输出三角波并通过串口观察波形的方法
目录
一、 工程配置
1、时钟、DEBUG、USART2、Project Manager Code Generater
2、DAC1
(1)Mode
(2) DAC out1 Settings
3、TIM3
二、软件设计
三、下载运行
采用定时器TIM3的TRGO信号作为DAC1的触发信号,DAC1在触发信号驱动下输出三角波。通过MATLAB(或示波器)观察三角波的波形。
使用的硬件开发板及其它资源,可以参考本文作者的文章:细说STM32单片机DAC基础及软件启动DAC触发并通过串口观察数据的方法-CSDN博客 https://wenchm.blog.csdn.net/article/details/144127805。
一、 工程配置
1、时钟、DEBUG、USART2、Project Manager Code Generater
与参考文章相同。
2、DAC1
(1)Mode
DAC1有2个通道:out1 mode、out2 mode,☐External Trigger。
- out1 mode,选择Connected to external pin only;
- out2 mode,Disable;
- External Trigger,不选择;
(2) DAC out1 Settings
- Mode selected:Normal;
- Output Buffer:Enable;设置是否使用输出缓冲器。如果使用输出缓冲器,可以降低输出阻抗并提高输出的负载能力。默认设置为Enable。
- DAC High Frequency:Automatic;
- DMA Double Data:Disable;
- Signed Format:Disable;
- Trigger:Timer3 Trigger out event;使用定时器TIM3的TRGO信号作为DAC1触发信号源。
- Trigger2:None;
- Wave Generation Mode:Triangle wave generation;
- Maximum Triangle Amplitude:4095;三角波最大幅值是由4位二进制表示的参数,表示1~4095内某个固定的参数值,如1、3、7、127、511、2047、4095等,这里设置为4095。
- User Trimming:Factory Trimming;
3、TIM3
- TIM3 Mode:Internal Clock;
- Prescaler:1700;
- Counter Mode:Up;
- Period:9;
- auto_reload:Enable;
- TRGO:Update Event;
二、软件设计
只需设计main.c。