DAC(数模转换器):把数字量转换为模拟量
ADC(模数转换器):把模拟量转换为数字量
本文章将基于单片机来理解DAC与ADC,用到的是小熊派L433系列的单片机。
1.基础配置,RCC,SYS,时钟树)
2.串口的配置
3.ADC的配置
在单片机上找到拓展的GPIO,在这里我选用的是PA7作为ADC的引脚,进行如下配置。
然后降低ADC的采样频率
4.DAC的配置
同样也是在单片机上找到拓展GPIO,选择其中一个作为DAC的引脚,这里我选择的是PA5,进行如下配置。
5.生成单独外设文件
ctrl+s生成代码
6.添加串口输出函数代码
7.添加main.c代码
8.用杜邦线把PA5和PA7连接起来。
9.编译,下载,可在串口调试助手上看到此内容。
我们可以看到,i,j的值近似相等,i值为我们手动输入的值,j值为单片机实际采到的值,存在一定的误差是正常的,i,j均为数字量的值。voltage为实际电压的值,即模拟量。他们之间存在着这样的转换关系:实际电压值=软件输入值*3.3/4096,其中4096的值是来源于2的n次方,n代表了DAC的分辨率,不同的单片机分辨率略有不同,我所用的单片机的DAC的分辨率为12位,所以就是2的12次方等于4096。(第一次j和voltage的值为0是因为此时单片机还没有采到值,简单来说就是程序下载到单片机上运行需要一定的时间)
————————————————
版权声明:本文为CSDN博主「每天都在摸爬滚打」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/m0_66273027/article/details/131362068
|