单片机原理及应用系统设计基于STC可仿真的IAP15W4K58S4系列课件第10章.pptx
《单片机原理及应用系统设计基于STC可仿真的IAP15W4K58S4系列课件第10章.pptx》由会员分享,可在线阅读,更多相关《单片机原理及应用系统设计基于STC可仿真的IAP15W4K58S4系列课件第10章.pptx(38页珍藏版)》请在三一办公上搜索。
1、第10章 A/D转换,单片机原理及应用系统设计,第10章 A/D转换单片机原理及应用系统设计,自然界中的物理量大多是模拟信号,如温度、压力、位移、转速等,单片机在采集模拟信号时,一般先根据实际的物理量借助相应的传感器将其转为电信号(电压或电流)。然后再将电信号转换为对应的数字量输入到单片机进行信号处理,在这过程中,把实现模拟量转换为数字量的器件称为模数转换器,也称A/D转换器。,第10章 A/D转换,自然界中的物理量大多是模拟信号,如温度、压力、位移、转速等,,10.1 A/D转换原理及性能指标,一般的A/D转换过程包括三个部分:采样保持、量化和编码。首先,对输入的模拟电压信号采样即将模拟信号
2、在时间上离散化,结束后进入保持时间。其次,在这段时间内将采样的电压量转化为数字量即在幅度上离散化。最后,将每个量化后的样值用一定的二进制码来表示转换结果。,10.1 A/D转换原理及性能指标一般的A/D转换过程包,为确保转换结果的精确度,A/D转换器必须满足一定的转换精度和速度。转换精度和转换速度是衡量A/D转换器的重要技术指标。此外还有分辨率、量程、量化误差、线性度等。,1. 分辨率分辨率表示A/D转换器对微小输入信号变化的敏感程度,通常用转换后数字量的位数来表示。N位转换器,其数字量变化范围为02N-1。例如8位A/D转换器,输入5V满量程电压,则分辨率为5/28=19.5mV。,为确保转
3、换结果的精确度,A/D转换器必须满足一定的转换精度和,3. 量化误差量化误差是A/D转换器实际输出的数字量与理论输出数字量之间的差值。一般是由于A/D转换器的分辨率有限引起的。量化误差在1/2LSB(最低有效位)之间。,2. 转换精度转换精度是指与数字输出量所对应的模拟输入量的实际值与理论值之间的差值。A/D转换电路中与每个数字量对应的模拟输入量并非是一个单一的数值,而是一个范围值 ,其中 的大小理论上取决于分辨率。定义 为数字量的最小有效位LSB。,3. 量化误差2. 转换精度,4.转换时间转换时间是A/D转换器完成一次转换所需的时间,单位为SPS(Sample Per Second)每秒采
4、样点数,常称为采样频率。一般转换速率越快越好,常见的有高速(转换时间1s),中速(转换时间1ms)和低速(转换时间1s)等。,在实际应用中,应从系统数据总的位数、精度要求、输入模拟信号的范围及输入信号极性等方面综合考虑A/D转换器的选用。,4.转换时间在实际应用中,应从系统数据总的位数、精度要求、输,10.2 IAP15W4K58S4单片机A/D模块的结构,IAP15W4K58S4单片机集成有8路10位高速电压输入型模拟转换器(ADC),转换方式为逐次逼近式,频率可达300kHZ(30万次/秒)。,10.2.1 A/D转换器的结构IAP15W4K58S4单片机ADC(A/D转换器)的结构如下图
5、10-1所示。其输入通道与P1端口复用,系统上电复位后,P1口默认为弱上拉I/O口,可通过设置P1ASF寄存器的相应位将对应引脚设置为ADC输入通道。,10.2 IAP15W4K58S4单片机A/D模块的结构I,图10-1 IAP15W4K58S4单片机ADC转换器结构图,图10-1 IAP15W4K58S4单片机ADC转换器,IAP15W4K58S4单片机的ADC由多路选择开关、比较器、逐次比较寄存器、10位DAC、转换结果寄存器(ADC_RES和ADC_RESL)以及ADC控制寄存器(ADC_CONTR)等构成。IAP15W4K58S4单片机的ADC是逐次比较型ADC,由一个比较器和D/A
6、转换器构成,通过逐次比较,从最高位(MSB)开始,顺序地对每一输入电压与内置D/A转换器输出进行比较,经过多次比较,使转换所得的数字量逐次逼近输入模量对应值,转换结束,将转换结果保存到ADC转换结果寄存器ADC_RES和ADC_RESL,同时,置位ADC控制寄存器ADC_CONTR中的A/D转换结束标志位ADC_FLAG,以供程序查询或发出中断申请。,IAP15W4K58S4单片机的ADC由多路选择开关、比较器,8位逐次逼近A/D转换器,若参考电压为5V,档输入电压为2.52V时,输出的数字量是什么?分析:参考电压为5V的8位A/D转换,其量化电平为,8位逐次逼近A/D转换器,若参考电压为5V
7、,档输入电压为2.,10.2.2 A/D转换器的相关寄存器,IAP15W4K58S4单片机的ADC相关寄存器主要有:P1口模拟功能控制寄存器P1ASFADC控制寄存器ADC_CONTRA/D转换结果寄存器ADC_RES、ADC_RESL,10.2.2 A/D转换器的相关寄存器IAP15W4K5,10.2.2 A/D转换器的相关寄存器,1. P1口模拟功能控制寄存器P1ASF寄存器P1ASF控制P1口8个I/O的功能。P1ASF寄存器(地址为9DH,复位值为0000 0000B)各位定义如表10-1所示:,P1nASF(n=07),P1.0P1.7为功能控制位:当P1nASF=0,对应引脚为基本
8、I/O。当P1nASF=1,对应引脚为ADC的相应输入通道。P1ASF寄存器不能位寻址,可采用字节操作。实际程序中可采用控制位与1相或实现置1的原理,如执行语句P1ASF | 1=0X01,使P1.作为模拟输入通道。,10.2.2 A/D转换器的相关寄存器1. P1口模拟功,2. ADC控制寄存器ADC_CONTRADC_CONTR寄存器主要用于设定ADC转换输入通道、转换速度和启动、转换结束标志等。ADC_CONTR寄存器(地址为BCH,复位值为0000 0000B)的各位定义如表10-2所示:,ADC_POWER:ADC 电源控制位。 ADC_POWER =0,关闭ADC 电源。 ADC_
9、POWER =1,打开ADC电源。,2. ADC控制寄存器ADC_CONTRADC_POWER:,建议进入空闲模式和掉电模式前,将ADC电源关闭,可降低功耗。启动A/D转换前一定要确认A/D电源已打开,A/D转换结束后可关闭A/D电源,也可不关闭。初次打开内部A/D转换模拟电源,需适当延时,等内部模拟电源稳定后,再启动A/D转换。建议在转换结束之前,不改变任何I/O口的状态,这样有利于高精度A/D 转换。IAP15W4K58S4单片机的参考电压源是输入工作电压Vcc,一般不用外接参考电压源。若Vcc不稳定,则在8路A/D转换的任意一个通道外接一个稳定的参考电压源,来计算出此时的工作电压Vcc,
10、再计算出其他A/D转换通道的电压。,建议进入空闲模式和掉电模式前,将ADC电源关闭,可降低功耗。,ADC_FLAG: A/D转换结束标志位。 ADC_FLAG=0,ADC转换没有结束。 ADC_FLAG=1,ADC转换结束。不管A/D 转换是工作于中断还是查询方式,当A/D转换结束后,必须通过软件将ADC_FLAG清0。ADC_START: ADC转换启动控制位。 ADC_START=0,ADC转换停止。 ADC_START=1,ADC转换开始。,ADC_FLAG: A/D转换结束标志位。,单片机原理及应用系统设计-基于STC可仿真的IAP15W4K58S4系列课件第10章,3. ADC转换结
11、果调整寄存器位ADRJADC转换结果调整寄存器位ADRJ位于寄存器CLK_DIV/PCON中,用于控制ADC转换结果存放的位置。其各位定义如表10-5所示。,ADRJ:ADC转换结果存储格式调整控制位ADRJ=0:ADC_RES存放高8位ADC结果, ADC_RESL存放低2位ADC结果。ADRJ=1:ADC_RES存放高2位ADC结果, ADC_RESL存放低8位ADC结果,3. ADC转换结果调整寄存器位ADRJADRJ:ADC,4. A/D转换结果寄存器ADC_RES、ADC_RESL 特殊功能寄存器ADC_RES和ADC_RESL寄存器用于保存A/D转 换结果。 其存储格式如下表10-
12、6和9-7所示。,4. A/D转换结果寄存器ADC_RES、ADC_RESL,A/D转换结果计算公式如下: ADRJ=0,取10位结果(ADC_RES7:0,ADC_REL1:0) D =1024*Vin/VccADRJ=0,取8位结果(ADC_RES7:0,)=256*Vin/VccADRJ=1,取10位结果(ADC_RES1:0,ADC_REL7:0,)D =1024*Vin/Vcc 式中,Vin为模拟输入通道输入电压,Vcc为单片机实际工作电压,用单片机工作电压作为模拟参考电压。,A/D转换结果计算公式如下:,5. 与A/D转换中断相关的寄存器,(1)中断允许寄存器IE中断允许寄存器IE
13、地址为A8H,可位寻址。格式如表10-8所示:,EA:CPU的中断总控制标志 EA=1,CPU 允许中断, EA=0,CPU 屏蔽所有的中断申请。 EADC: A/D转换中断允许位 EADC=1 ,允许A/D转换中断, EADC=0 ,禁止A/D转换中断。,5. 与A/D转换中断相关的寄存器(1)中断允许寄存器IE,(2)中断优先级控制寄存器IP中断优先级控制寄存器地址为B8H,可位寻址。其格式如表10-9所示:,PADC:A/D 转换中断优先级控制位。 当PADC=0 时,A/D转换中断为最低优先级中断(优先级0) 当PADC=1 时,A/D转换中断为最高优先级中断(优先级1),(2)中断优
14、先级控制寄存器IPPADC:A/D 转换中断优先,10.3 IAP15W4K58S4单片机A/D转换的应用,IAP15W4K58S4单片机A/D转换的应用编程要点如下:(1)设置ADC_CONTR寄存器中的ADC_POWER=1,打开ADC电源。(2)延时大约1ms,等待ADC内部电源稳定。(3)设置P1ASF寄存器相关位,选择P1口相应引脚为A/D转换模拟输入通道。(4)设置ADC_CONTR寄存器中的CHS2CHS0,选择ADC输入通道。(5)设置CLK_DIV寄存器中的ADRJ,选择转换结果存储格式。(6)启动ADC。(7)若采取查询法,查询ADC_FLAG位判断转换是否完成,完成则读取
15、转 换结果。若采取中断法,开ADC中断,在中断服务程序中读取转换结 果并清除ADC_FLAG位。,10.3 IAP15W4K58S4单片机A/D转换的应用,【例1】 利用IAP15W4K58S4单片机中的ADC转换器对输入电压进行测量并显示在数码管上。请编写单片机程序。解:C语言源程序代码如下:#include stc15w4k32s4.h /包含单片机头文件#include tm1638.h /包含数码管显示头文件#include /包含该文件可以使用_nop_()函数#define VCC 5000 /定义电源电压#define ADC_POWER 0 x80 / ADC控制位定义,ADC
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 单片机 原理 应用 系统 设计 基于 STC 仿真 IAP15W4K58S4 系列 课件 10

链接地址:https://www.31ppt.com/p-1321653.html