




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
数字电压表的设计第1章引言在电量的测量中,电压、电流和频率是最根本的三个被测量,其中电压量的测量最为经常。而且随着电子技术的开展,更是经常需要测量高精度的电压,所以数字电压表就成为一种必不可少的测量仪器。数字电压表简称DVM,它是采用数字化测量技术,把连续的模拟量转换成不连续、离散的数字形式并加以显示的仪表。由于数字式仪器具有读数准确方便、精度高、误差小、测量速度快等特而得到广泛应用。传统的指针式刻度电压表功能单一,精度低,容易引起视差和视觉疲劳,因而不能满足数字化时代的需要。采用单片机的数字电压表,将连续的模拟量如直流电压转换成不连续的离散的数字形式并加以显示,从而精度高、抗干扰能力强,可扩展性强、集成方便,还可与PC实时通信。数字电压表是诸多数字化仪表的核心与根底。以数字电压表为核心,可以扩展成各种通用数字仪表、专用数字仪表及各种非电量的数字化仪表。目前,由各种单片机和A/D转换器构成的数字电压表作全面深入的了解是很有必要的。目前,数字电压表的内部核心部件是A/D转换器,转换的精度很大程度上影响着数字电压表的准确度,因而,以后数字电压表的开展就着眼在高精度和低本钱这两个方面。本文是以简易数字直流电压表的设计为研究内容,本系统主要包括三大模块:转换模块、数据处理模块及显示模块。第2章系统总体方案设计选择与说明2.1设计要求1、增强型MCS-51系列单片机STC12C5A60S2为核心器件,组成一个简单的直流数字电压表。2、采用1路模拟量输入,能够测量0-10V之间的直流电压值。3、电压显示采用LCD1602显示。4、尽量使用较少的元器件。2.2设计思路1、根据设计要求,选择STC12C5A60S2单片机为核心控制器件。2、A/D转换采用STC12C5A60S2内部自带A/D实现。3、电压显示采用LCD1602显示。2.3设计方案硬件电路设计由7个局部组成:STC12C5A60S2单片机系统,数码管显示系统、时钟电路、复位电路档位调节电路以及测量电压输入电路。硬件电路设计框图如图1所示。时钟电路时钟电路测量电压输入入LCD1602显示STC12C5A60S2P1P0P2 P2 P0复位电路图2.1数字电压表系统硬件设计框图第3章硬件电路设计3.1STC12C5A60S2单片机图3.1STC12C5A60S2单片机引脚图及实物图3.2STC12C5A60S2系列单片机主要性能1〕高速:1个时钟/机器周期,增强型8051内核,速度比普通8051快6~12倍。2〕宽电压:5.5~3.3V,2.2~3.6V(STC12LE5A60S2系列)。3〕增加第二复位功能脚/P4.6(高可靠复位,可调整复位门槛电压,频率<12MHz时,无需此功能)。4〕增加外部掉电检测电路/P4.6,可在掉电时,及时将数据保存进EEPROM,正常工作时无需操作EEPROM。5〕低功耗设计:空闲模式(可由任意一个中断唤醒)。6〕低功耗设计:掉电模式(可由外部中断唤醒),可支持下降沿/上升沿和远程唤醒。7〕支持掉电唤醒的管脚:INT0/P3.2,INT1/P3.3,T0/P3.4,T1/P3.5,RxD/P3.0,CCP0/P1.3(或P4.2),CCP1/P1.4(或P4.3),EX_LVD/P4.6。8)工作频率:0~35MHz,相当于普通8051:0~420MHz。9)时钟:外部晶体或内部RC振荡器可选,在ISP下载编程用户程序时设置。10)8/16/20/32/40/48/52/56/60/62K字节片内Flash程序存储器,擦写次数10万次以上。11)1280字节片内RAM数据存储器。12)芯片内EEPROM功能,擦写次数10万次以上。13)ISP/IAP,在系统可编程/在应用可编程,无需编程器/仿真器。14)8通道,10位高速ADC,速度可达25万次/秒,2路PWM还可当2路D/A使用。15)2通道捕获/比拟单元(PWM/PCA/CCP),也可用来再实现2个定时器或2个外部中断(支持上升沿/下降沿中断)。16)4个16位定时器,兼容普通8051的定时器T0/T1,2路PCA实现2个定时器。17)可编程时钟输出功能,T0在P3.4输出时钟,T1在P3.5输出时钟,BRT在P1.0输出时钟。18)硬件看门狗(WDT)。19)高速SPI串行通信端口。20)全双工异步串行口(UART),兼容普通8051的串口。21)通用I/O口(36/40/44个),复位后为:准双向口/弱上拉(普通8051传统I/O口)。可设置成四种模式:准双向口/弱上拉,推挽/强上拉,仅为输入/高阻,开漏。每个I/O口驱动能力均可到达20mA,但整个芯片最大不得超过120mA。3.3STC12C5A60S2系列单片机的A/D转换器的结构STC12C5A60S2系列单片机的A/D转换口在P1口〔P1.7-P1.0〕,有8路10位高速A/D转换器,速度可到达250KHz〔25万次/秒〕。8路电压输入型A/D,可做温度检测、电源电压检测、按键扫描、频谱检测等。上电复位后P1口为弱上拉型I/O口,用户可以通过软件设置将8路中的任何一路设置为A/D转换,不需作为A/D使用的I/O口可以继续作为I/O口使用。STC12C5A60S2系列单片机ADC的结构如下列图所示图3.2STC12C5A60S2系列单片机ADC的结构图3.3当AUXR.1/ADRJ=0时,A/D转换结果存放器格式图3.4当AUXR.1/ADRJ=1时,A/D转换结果存放器格式STC12C5A60S2系列单片机ADC由多路选择开关、比拟器、逐次比拟存放器、10位ADC转换寄结果存器〔ADC_RES和ADC_RESL〕以及ADC_CONTR构成。STC12C5A60S2系列单片机的ADC是逐次比拟型ADC,逐次比拟型ADC由一个比拟D/A转换器构成,通过逐次比拟逻辑,从最高位〔MSB〕开始,顺序地对每一输入电压与内置D/A转换器输出比拟,经过屡次比拟,使转换所得的数字量逐次比逼近输入模拟量对应值。逐次比拟型A/D转换器具有速度高,功耗低等特点。从上图可以看出,通过模拟多路开关,将通过ADC0-ADC7的模拟量输入送给比拟器。用数/模转换器〔DAC〕转换的模拟量与本次输入的模拟量通过比拟器进行比拟,将比拟结果保存到逐次比拟器,并通过逐次比拟存放器输出转换结果。A/D转换结束后,最终的转换结果保存到ADC转换结果存放器ADC_RES和ADC_RESL,同时,置位ADC控制存放器ADC_CONTR中的A/D转换结束标志位ADC_FLAG,以供程序查询或发出中断申请。模拟通道的选择控制由ADC控制存放器ADC_CONTR中的CHS2~CHS0确定。ADC的转换速度由ADC控制存放器中的SPEED1和SPEED0确定。在使用ADC之前,应先给ADC上电,也就是置位ADC控制存放器中的ADC_POWER位。当ADRJ=0时,如果取10位结果,那么按下面公式计算:10-bitA/DConversionResult:(ADC_RES[7:0],ADC_RESL[1:0])=1023*Vin/Vcc当ADRJ=0时,如果取8位结果,那么按下面公式计算:8-bitA/DConversionResult:(ADC_RES[7:0])=255*Vin/Vcc当ADRJ=1时,如果取10位结果,那么按下面公式计算:10-bitA/DConversionResult:(ADC_RESL[1:0],ADC_RES[7:0])=1023*Vin/Vcc当ADRJ=1时,如果取8位结果,那么按下面公式计算:8-bitA/DConversionResult:(ADC_RESL[1:0],ADC_RES[7:2])=255*Vin/Vcc式中,Vin为模拟输入电压,Vcc为单片机实际工作电压,用单片机工作电压作为模拟参考电压。3.4与A/D转换相关的存放器及说明与STC12C5A60S2系列单片机A/D转换相关的存放器表3.1A/D转换相关的存放器1.P1口模拟功能控制存放器P1ASF STC12C5A60S2系列单片机的A/D转换通道与P1(P1.7-P1.0)复用,上电复位后P1为弱上拉型I/O口,用户可以通过将8路中的如何一路设置为A/D转换,不需作为A/D使用的P1口可继续作为I/O口使用〔建议只作为输入〕。需作为A/D使用的口需要先将P1ASF特殊功能存放器中的相应位置为“1〞,将相应的口设置为模拟功能。P1ASF存放器的格式如下: P1ASF:P1口模拟功能控制存放器〔只读〕表3.2P1ASF存放器当P1口中的相应位作为A/D使用时,要将P1ASF中的相应位置“1〞表3.3P1ASF存放器设置2.ADC控制存放器ADC_CONTRADC_CONTR存放器的格式如下:ADC_CONRTR:ADC控制存放器表3.4ADC控制存放器对ADC_CONTR存放器进行操作,建议直接用MOV赋值语句,不要用“与〞和“或〞语句。ADC_POWER:ADC电源控制位。 0:关闭A/D转换电源; 1:翻开A/D转换电源; 建议进入控模式前,将ADC电源关闭,即ADC_POWER=0.启动A/D转换前一定要确认A/D电源已翻开,A/D转换结束后关闭A/D电源可决定功耗,也可以不关闭。初次翻开内部A/D转换模拟电源,需适当延时,等内部模拟电源稳定后,再启动A/D转换。 建议启动A/D转换后,在A/D转换结束之前,不要改变任何I/O口的状态,有利于高精度A/D转换,假设能将定时器/串行口/中断系统关闭更好。SPEED1,SPEED0:模数转换速度控制位表3.5模数转换速度控制位设置STC12C5A60S2系列单片机的A/D转换模块所使用的时钟时内部〔或外部石英晶体〕所产生的系统时钟,不使用时钟分频存放器CLK_DIV对系统分频后所产生的供给CPU工作的时钟。〔好处:这样可以让ADC用较高频率工作,提高A/D的转换速度。让CPU工作工作在较低频率,降低系统功耗〕。ADC_FLAG: 模数转换结束标志位,当A/D转换完成后,ADC_FLAG=1,要由软件清零。不管是A/D转换完成后由该位申请中断,还是由软件查询该标志A/D转换是否结束,当A/D转换完成后,ADC_FLAG=1,一定要软件清零。ADC_START: 模数转换器〔ADC〕转换启动控制位,设置为“1〞时,开始转换,转换结束 后ADC_START=1;CHS2/CHS1/CHS0:模拟输入通道选择表3.6模拟输入通道选择设置ADC_CONTR控制存放器后,要加4个空操作延时后才能正确度到ADC_CONTR存放器的值。原因是设置ADC_CONTR控制存放器的语句执行后,要经过4个CPU时钟的延时,其值才能够保证被设置进ADC_CONTR控制存放器。 MOVADC_CONTR,#DATA NOP NOP NOP NOP MOVA,ADC_CONRT3、A/D转换结果存放器ADC_RES、ADC_RESL特殊功能存放器ADC_RES和ADC_RESL存放器用于存放A/D转换结果,其格式如下:表3.7用于存放A/D转换结果存放器ADC_RES、ADC_RESLAUXR1存放器的ADRJ位是A/D转换结果存放器的数据格式调整控制位。表3.8当ADRJ=0时,10位A/D转换结果的高8位存放在ADC_RES中,低2位存放在ADC_RESL的低2位中。表3.9当ADRJ=1时,10位A/D转换结果的高2位存放在ADC_RES的低2位中,低8位存放在ADC_RESL中。4、与A/D中断有关的存放器 IE:中断允许存放器 表3.10中断允许存放器EA: CPU的中断开放标志,EA=1,CPU开放中断,EA=0,CPU屏蔽所有的中断请求。EADC: A/D转换中断允许位。 EADC=1,允许A/D中断; EADC=0,屏蔽A/D中断。 IPH:中断优先级控制存放器高〔不可位寻址〕 表3.11中断优先级控制存放器高 IP:中断优先级控制存放器低〔可以位寻址〕 表3.12中断优先级控制存放器低PADCH,PADC:ADC转换优先级控制位。5、ADC初始化程序/*----------------------------初始化ADC----------------------------*/voidInitADC(void){P1ASF=0x58;//设置P1口为AD口 01000111 01011000ADC_RES=0;//去除结果存放器ADC_CONTR=ADC_POWER|ADC_SPEEDLL;Delay(50);//ADC上电并延时}6、ADC读子函数/*----------------------------发送ADC结果到PC----------------------------*/voidShowResult(BYTEch){floatvalue; change_long_data_to_array(disadch,2,ch); value=GetADCResult(ch); value=value/255*4.8; change_data_to_array(disadcval,5,1,value);}/*----------------------------读取ADC结果----------------------------*/BYTEGetADCResult(BYTEch){ADC_CONTR=ADC_POWER|ADC_SPEEDLL|ch|ADC_START;_nop_();//等待4个NOP_nop_();_nop_();_nop_(); _nop_();//等待4个NOP_nop_();_nop_();_nop_(); _nop_();//等待4个NOP_nop_();_nop_();_nop_();while(!(ADC_CONTR&ADC_FLAG));//等待ADC转换完成ADC_CONTR&=~ADC_FLAG;//CloseADCreturnADC_RES;//返回ADC结果}3.5系统电路设计、说明3.5.1系统电路总原理图图3.5系统原理图3.5.2晶振电路简介时钟信号的振荡器提供正常工作稳定的供给链接管理。晶振也被称为晶振谐振器,是一种机电设备,是需要精密磨削的石英晶体镀上电极焊上导线制成。这种晶体有一个很关键的特性----压电效应,给它导电,产生机械振荡,反之,给它机械力,便会产生电[7]。它的形状,材质,切割方向影响到振荡的频率。根据石英晶体等效为一个谐振回路,它的机电效应是机-电-机-电..的不断转换,由电感和电容组成的谐振回路是电场-磁场的不断转换。AT89S52的反相放大器,振荡器,时钟信号可以由单片机产生周期性功能是机械指令驱动芯片实现。这个放大器与石英晶体或陶瓷谐振器一起可构成一个自激振荡器,外接石英晶体或陶瓷谐振器以及电容C8和C10组成并联谐振电路,接在放大器的反应回路中。一个外部电容C8和C10的值虽然没有严格的要求,但会影响许多电容振荡器的频率稳定度、振荡器、起振圈内部振荡的接法的快速及时性和温度稳定性。AT89S52芯片里面有一个反相高增益放大器,它两头跟石英晶体及两个常用30pF电容相连接,组成稳定的自激振荡器微调震荡频率。震荡电路如图5所示。图3.6晶振电路3.5.3复位电路系统CPU和其辅助部件是在一个精确的状态开始运行,单片机成功复位。不管是电源故障或刚接上电源,要使用单片机就要先复位。施密特触发器通过AT89S52单片机RST引脚接收复位信号。当系统振荡稳定没发生异常情况下,假设RST出现一个持续24个振荡周期的高电平,那么系统复位。本设计系统是自动电源复位。本系统中采用上电电路复位,即在单片机运行期间人工的复位,方便又简单。工作按钮接通电源,单片机便可复位,即手动复位完成。系统上电运行后,如果要复位,那么动手复位即可,手动复位电路如图6所示。图3.7复位电路3.5.4显示电路LCD1602显示32个字
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 网络通讯设施建设承包合同
- 专利技术许可使用与转让协议
- 事业单位正式聘用劳动合同
- 环保科技研发与推广合作协议
- 企业向法人借款合同
- 三农田土壤健康与改良方案
- 智慧农业技术研发与应用合作协议
- 公路护栏采购合同
- 动物养殖场地租赁合同
- 经典工程劳务承包合同
- 第8课《山山水水》教学设计(新人教版小学美术六年级上册)
- word 公章 模板
- 世界技能大赛PPT幻灯片课件(PPT 21页)
- Python程序设计ppt课件完整版
- T∕ZSQX 008-2020 建设工程全过程质量行为导则
- 质量管理体系基础知识培训-2016
- 《腹膜透析》ppt课件
- 甲醇催化剂说明书
- 北京课改版(2021年春修订版)数学四年级下册全册教学课件
- 汽车标准法规(课堂PPT)
- 碳硅及其化合物-讲义
评论
0/150
提交评论