一、原理介绍
ADC(Analog-to-Digital Converter,模拟-数字转换器)是一种电子设备,用于将模拟信号转换为数字信号。其工作原理如下:
-
采样:ADC首先对输入的模拟信号进行采样。采样是指在一定时间间隔内对模拟信号进行离散取样,获取信号的快照。
-
量化:采样获得的模拟信号是连续的,需要将其转换为离散的数字数值。这一过程称为量化。ADC将模拟信号的幅度值转换为对应的数字数值,通常使用二进制表示。
-
编码:经过量化后,ADC会将数字信号进行编码,产生最终的数字输出。编码的方式可以是二进制补码、二进制反码等。
-
输出:最后,ADC将转换后的数字信号输出,供数字系统进行处理和分析。
二、程序编写
本次实验内容为:使用两路ADC模块分别测量各自的电压值,并通过LCD进行显示。
1、STM32CubeMX操作流程
-
设置RCC;
-
设置GPIO:除了使能LCD相关PC8-PC15之外的GPIO,还需要将PB12和PB15设置为ADC1_IN11和ADC2_IN15。
3. 设置Analog:分别将ADC1中的IN11和ADC2中的IN15设置为Single-ended。
4. 设置时钟
- 生成文件
2、Keil5程序编写
- 首先将液晶屏的头文件和源文件复制到生成的文件夹下面。
- 在keil中打开项目工程,将上述文件添加到项目中去。
然后可以编译一下,可以看到没有错误和警告。
3. 将官方给的液晶显示main.c程序相关代码复制到我们当前文件夹下面测试lcd是否正常。
将程序下载,可以看到绘制成两条线。
4. 在主函数中定义变量和获取adc函数
- 调用函数和后处理并在lcd上显示
- 实验结果