采蘑菇的小菇凉
获得 0 次赞
帮助过6人
电位器 表示符号:vr,rp,w 可调电阻 表示符号:vr,rp,w 电位器 表示符号:vr,rp,w 三脚消磁电阻 表示符号:rt 二脚消磁电阻 表示符号:rt 压敏电阻 表示符号:rz,var 光敏电阻 cds 电容(有极性电容) 表示符号: 电容(有极性电容) 表示符号:c
用hal库生成的,stm32cube生成框架
嗯,又是我,来分享一下昨天晚上捣弄的东西。小弟献丑了,写得不好,不对的地方请各位大神指正。 nucleo板子简单便宜,提供的资源自然也很少,所以要尽可能多的利用仅有的资源来学习更多的功能。看原理图和数据手册可以发现,唯一一个用户led即ld2连接的pa5引脚,刚好是dac1的通道2输出引脚,于是我们就可以用这个led来学习使用dac,顺带学习下定时器基本功能和dma。 dac—数模转换器 dac即是数模转换器,就是将数字量转换成模拟量,原理什么的大家应该都懂,直接跳入如何使用: stm32的dac使用起来非常简单,首先将连接dac通道的gpio引脚配置为模拟状态,然后初始化dac,一共只有四个参数需要初始化,其中最重要的是触发源:这个参数的作用是,每来一个触发源信号,dac就刷新一次输出,也就是将需要转换的数字量转换为电压输出,这里选择定时器2作为触发源。 代码: void dac_config(void) { gpio_inittypedef gpio_initstructure; dac_inittypedef dac_initstructure; dac_trigtim_config();//定时器配置,见第2点 rcc_ahbperiphclockcmd(rcc_ahbperiph_gpioa,enable); rcc_apb1periphclockcmd(rcc_apb1periph_dac1,enable); gpio_initstructure.gpio_pin = gpio_pin_5; gpio_initstructure.gpio_mode = gpio_mode_an; //模拟 gpio_initstru