- 打卡等级:常住居民III
- 打卡总天数:189
- 最近打卡:2025-06-16 00:05:11
已绑定手机
高级会员
- 积分
- 979
|
发表于 2025-2-2 20:20:02
|
显示全部楼层
第十七集:模数转换器ADC上 冲哥
一、模数转换器(ADC)是什么
二、STC32G单片机ADC使用原理
三、编写最简单的ADC采集代码(查询&中断)
1、模数转换器是什么?
模数转换器即A/D转换器,或简称ADC(Analog-to-digital converter),通常是指一个将模拟信号转变为数字信号的电子元件。
模拟信号 -> 电压
数字信号 -> 0和1组成的二进制数 (1101 1101 的十进制动画演示略)
2、ADC原理EXCEL表格演示讲解。
3、STC32G单片机ADC使用原理:STC32G芯片内部集成一个12位高速A/D转换器。(12位是细分比较次数)
4、ADC转换格式有两种,左对齐和右对齐。
5、注意:ACD的第15通道是专门测量内部1.19V参考信号源通道。由于制造和测量误差,导致实际内部参考信号源大约1%误差。如果用户需要精准信号值,可外接精准参考信号源。然后利用第15通道测量。ADC_VRef+脚外接参考电源时,可利用第十五通道反推ADC_VRef+脚外接参考电源的电压,如将ADC_VRef+短接到MCU-VCC,就可以反推MCU-VCC电压。
6、警告:如果芯片有ADC外部参考电源管脚ADC_VRef+,则一定不能浮空,必须接外部参考电压或直接连到VCC.
7、使用ADC功能时有Vref引脚的单片机千万千万千万不能悬空,必须接外部参考电压源或者VCC!!!
8、ADC控制寄存器(ADC_CONTR),PWM触发ADC控制。
9:、ADC_POWER(B7位)0:关闭ADC电源;1:打开ADC电源。
10、进入空闲或者掉电模式建议关掉电源,降低功耗。
11、特别注意:1、给MCU的内部ADC模块电源打开后,需等待1MS,等MCU内部ADC电源稳定后再让ADC工作。2、适当加长对外部信号采样时间,就是对ADC采样保持电容的充电和放电时间,时间够,内外部电势相等。
12、ADC_START(B6位):ADC转换启动控制位,写入1后开始ADC转换,转换完成后硬件自动将此位清零。
13、ADC_FLAG(B5位):ADC转换结束标志。转换完硬件自动置1,并向CPU提出中断请求,此标志必须软件清零。
14、ADC配置寄存器(ADCCFG)
15、RESFMT(B5):转换结果控制位。0:左对齐(右补零)。1右对齐(左补零)、
16、SPEED:设置ADC时钟。
17、ADC时序控制寄存器(ADCTIM)
18、CSSETUP(B7):通道选择时间控制。0,1
19、CSHOLD【1:0】(B6-B5):ADC通道选择保持时间控制。00 01 10 11
20、SMPDUTY[4:0](B4~B0):ADC模拟信号采样时间控制Tduty(注意:SMPDUTY一定不能设置小于01010B)
21、ADC速度计算公式。
22、ADC转换结果计算公式。(注意是否妃有独立ADC_Vref+管脚,如果有以外部精度管脚电压以VCC为准)
23、反推ADC输入电压计算公式。
24、ADC参考采样电路图,VRef+一定要接入VCC基准电源(通过511R电阻和CD431/TL431后),不得悬空不得悬空不得悬空。高精度里面常用,封装22U独石电容,10U电容,0.1电容。
25、经典USB下载电路,务必在原电路上保留此线路,23管脚10K上拉VCC,电阻下方接300R电阻,按钮开关接地。USBD+D-串33R电阻,USB电源正5V,GND接地--TypeA或TypeC电路。也可用SIP4接口。
26、最简单的ADC采样代码。ADC接口一定要设定高阻输入。
27、新建文件夹ADC,添加路径,添加文件,写adc.h的头文件,写adc.c的初始化函数文件。
本课时完结。 |
|