今天讲解“STM32F103 DAC输出三角波形”,比较基础,但对于初次使用该功能的朋友来说,还有有借鉴价值。
今天提供并讲解的软件工程,基于昨天的软件工程“DDAC输出三角波形”修改而来。若有疑问,请关注微信公众号“EmbeddDeveloper”获取更多信息。
每天提供下载的“软件工程”都是在硬件板子上进行多次测试、并保证没问题才上传至360云盘。
今天的软件工程下载地址(360云盘):
https://yunpan.cn/cPi8GB2DyeKzI访问密码 1a45
STM32F10x的资料可以在我360云盘下载:
https://yunpan.cn/crBUdUGdYKam2访问密码 ca90
工程概要说明:该工程通过配置,输出固定三角波形,频率和幅度也是固定的,当然也是可以变化,如果有朋友需要可以微信公众号中留言。
关于“STM32F103DAC输出三角波形”我把重要的几点在下面分别讲述,若不明白,请关注微信公众号“EmbeddDeveloper”查阅或留言。
一、RCC时钟配置
该函数位于在bsp.c文件下面;
使能RCC时钟:RCC_APB1Periph_TIM2和 RCC_APB1Periph_DAC (正对该工程主要的两项)。
二、引脚配置
该函数位于在dac.c文件下面;
这里是对SPI所使用引脚进行配置。
这里DA1和DA2都使用。
三、DAC配置
该函数位于在dac.c文件下面;
对DA进行配置。
配置的每一条语句都有注释,请看源代码.
注意:
这里的重点就是上面“红色”是两项。
四、触发时钟
该函数位于在timer.c文件下面;
输出的频率就是又该时钟决定的,请看源代码,不懂的微信我。
五、今天的重点提示
DA可以输出很多种波形,感兴趣的朋友可以细心研究一下,后期我应该还有讲解更高级一点的内容。但今天主要的内容就是关于频率和幅度的调节,感兴趣的朋友可以修改参数试一试,我的工程都经过实物板子测试过的,请放心下载使用。
主函数都不拿来讲解了,因为主函数里面基本没有重点,只需要配置好即可。
关键字:DAC 输出 三角波形
引用地址:
STM32_ DAC输出三角波形
推荐阅读最新更新时间:2024-11-12 20:27
STM32-快速上手DAC
1 概述 STM32的DAC模块只存在于大容量产品中,是12位数字输入,电压输出的数字/模拟转换器,2个输出通道,每个通道都有单独的转换器,支持双DAC模式。DAC可以通过引脚输入参考电压VREF+以获得更精确的转换结果。DAC模块在APB1时钟下! 2 配置步骤 (1)DAC模块时钟使能(在APB1下)、输出IO端口时钟使能(APB2下)。 void RCC_APB1PeriphClockCmd(uint32_t RCC_APB1Periph, FunctionalState NewState); void RCC_APB2PeriphClockCmd(uint32_t RCC_APB2Periph, FunctionalS
[单片机]
STM8S003F3 使用TIM1_CH1与TIM1_CH2配置PWM输出
最近一个项目,用的是STM8S003F3这款小型的MCU,使用TIM1_CH1 TIM_CH2作为PWM输出时,遇到了问题,代码下载后,PWM是没有任何输出的。用示波器看,应该是PWM没有任何输出。 首先在网上找了下资料,又看了官方的例程,感觉代码没有问题。后来仔细查看问题,终于找到解决的方案。 原来根据STM8S003F3的数据手册,需要配置一个选项字节才能使能TIM1_CH1与TIM1_CH2。 配置的方法有两种: (1)使用STVP(STM32与STM8)烧写的软件,在烧写固件时,配置一下,下载到芯片,其实这个保存在DataFlash中,理论上配置一次,再使用ST-LINK下载,就一直生效。 (2)方法二,
[单片机]
stm32定时器TIM2的PWM输出PB3
弄了好久,查了很多文章,最后解决了,用的是PB3 引脚配置 void GPIO_TimPWM(void) { GPIO_InitTypeDef GPIO_InitStructure; RCC_APB2PeriphClockCmd( RCC_APB2Periph_GPIOB | RCC_APB2Periph_AFIO, ENABLE); GPIO_PinRemapConfig(GPIO_FullRemap_TIM2, ENABLE); GPIO_PinRemapConfig(GPIO_Remap_SWJ_JTAGDisable , ENABLE); GPIO_InitStructure.GPIO_Mod
[单片机]
总结一下定时器的几种输出比较模式
1 背景 最近有接触到通过可控硅的方式来控制交流风机或者电烙铁功率,STM32的定时器输出比较模式,刚好可以满足这种需求,借此机会总结一下定时器的几种输出模式。 2 STM32的定时器比较输出 STM32的定时器比较输出一共有8种,记录一下初始化方法和逻辑分析仪的波形。 在官网搜索对应的型号找到用户手册,比如STM32F103ZET6 找到比较模式相关配置的描述 TIMx capture/compare mode register 1 (TIMx_CCMR1) Address offset: 0x18 Reset value: 0x0000 The channels can be used in input (capture
[单片机]
KUKA给整数计数器或者二进制输出端赋值
选择菜单序列 命令 == i/bin= 。
联机表单 i/bin
用此指令可以对一个整数计数器或一个二进制输出端赋值,并将赋以的和一种条件 (布尔算子)相连接。为进行赋值,在需要时可能会将多个算术算子 (最多 11 个)进行逻辑连接。
通过一个二进制输出端可将一个数值以二进制形式向一系列设定的输出端进行分配,例如为了在其他设备或控制装置上输出程序编号。例如为了数焊点,将使用整数计数器。
1
信号
i :整数计数器
bin:二进制输出
2
信号的编号
i: 1 ... 60
bin: 1 ... 6
3
运算符
[机器人]
PIC32输出比较(PWM)
一.输出比较初始化 步骤: 1.复用端口映射为OCx 例如:RPA0Rbits.RPA0R=0b0101; 即RPA0引脚作为外设OC1使用 2.OCM 2:0 :输出比较模式选择位 例如:OC1CON=0X06; //输出比较端口1配置为PWM故障禁止模式。 3.OC32 5 :32 位比较模式位 例如:OC1CONCLR=0X010; //将第五位清零,设置为16位单定时器模式。 4.OCTSEL 3 :输出比较定时器选择位 例如:OC1CONSET=0X08; //将第三位设置为一,选择定时器3为基时钟 5.定时器使能初始化 例如:OpenTimer3(T1_ON|T1_SOURCE_INT|T1_PS_1_1,p
[单片机]
DG1062信号源输出阻抗测量
▌01 信号源内阻 DG1062 是 实验室电子设备选型-2020-年末 购买到的一款数字可编程信号源。通过按键“Utility”-“通道设置”-“输出设置”可以将它的输出阻抗设置成两种模式: 负载:50欧姆 阻抗:高阻 在设置负载为50欧姆的时候,设置输出的峰峰值为5V,实际上输出的信号的波形为10V。这是因为信号源是假设负载是50Ω时,它自身的内阻为50欧姆,所以输出的信号的在空载的时候峰峰值为10V。如下图所示: ▲ 输出模式:负载50欧姆,信号峰峰值5V的波形 同样,在输出阻抗为高阻的时候,设置输出波形的峰峰值为5V,此时输出的实际波形的峰峰值就是5V。如下图所示: ▲ 输出模式:高阻,信号的峰峰值设置为5V的
[测试测量]
电压输出与电流成比例的改进型电流监控器
本设计实例是对以往设计实例 的扩展(参考文献1)。原版采用一个电流变压器,它的次级绕组构成一个振荡器振荡回路的一部分。正常条件下,流经电流变压器单匝初级绕组的直流电流不会使电路保持振荡,直到初级电流停止流动。虽然这个电路起到一个断电检测器的作用,但当增加一些元件后,其工作原理也适合于测量设备。这种经改进的电路可提供精确的线性电压输出,该电压与流经电流检测变压器T1初级绕组中的直流电流成正比(图1)。另外,该电路还可以作为一个交流电流传感器。
为实现改进性能,设计延用了原有振荡电路的概念,并增加了一个PLL电路和在电流变压器上增加一个额外绕组,变压器的次级构成一个 LC振荡器的共振电路。PLL集成了一个74HC40
[电源管理]