用单片机芯片at89s52设计一个数字万用表_第1页
用单片机芯片at89s52设计一个数字万用表_第2页
用单片机芯片at89s52设计一个数字万用表_第3页
用单片机芯片at89s52设计一个数字万用表_第4页
用单片机芯片at89s52设计一个数字万用表_第5页
已阅读5页,还剩33页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

摘要本次设计用单片机芯片AT89S52设计一个数字万用表,能够测量交、直流电压值、直流电流、直流电阻以及电容,四位数码显示。此系统由分流电阻、分压电阻、基准电阻、电容测试芯片电路、51单片机最小系统、显示部分、报警部分、AD转换和控制部分组成。为使系统更加稳定,使系统整体精度得以保障,本电路使用了AD0809数据转换芯片,单片机系统设计采用AT89S52单片机作为主控芯片,配以RC上电复位电路和110592MHZ震荡电路,显示芯片用TEC6122,驱动8位数码管显示。程序每执行周期耗时缩到最短,这样保证了系统的实时性。关键词数字万用表;AT89S52单片机;AD转换与控制目录绪论1一、数字万用表设计背景3(一)数字万用表的设计目的和意义3(二)数字万用表的设计依据3二、数字万用表总体设计方案4(一)数字万用表的基本原理4(二)数字万用表的硬件系统设计总体框架图4(三)硬件电路设计方案及选用芯片介绍5(四)数字万用表的硬件设计18三、系统软件与流程图27(一)电路功能模块27(二)系统总流程图27(三)物理量采集处理流程29(四)电压测量过程流程图30(五)电流的测量过程流程图31(六)电阻的测量过程流程图32(七)电容测量过程流程图33结论34参考文献35致谢36绪论数字万用表亦称数字多用表,简称DMMDIGTIALMULTIMETER。它是采用数字化测量技术,把连续的模拟量转换成不连续的、离散的数字形式并加以显示的仪表。传统的指针式万用表功能单精度低,不能满足数字化时代的需求,采用单片的数字万用表,精度高、抗干扰能力强,可扩展尾强、集成方便,目前,由各种单片机芯片构成的数字电万用表,已被广泛用于电子及电工测量、工业自动化仪表、自动测试系统等智能化测量领域,显示出强大的生命力。数字万用表具有以下几点特点1显示清晰直观,计数准确为了提高观察的清晰度,新型的手持式数字用用表(HDMM)已普遍采用字高为26MM的大屏幕LCD(液晶显示器)。有些数字万用表还增加了背光源,以便于夜间观察读数。2显示位数数字万用表的显示位数通常为3位半到8位半。3准确度高准确度是测量结果中系统误差与随机误差的综合。它表示测量结果与真值的一致程度,也反映了测量误差的大小,准确度愈高,测量误差愈小。数字万用表的准确度远优于指针万用表。4分辨力高数字万用表在最低电压量程上末位1个字所代表的电压值,称作仪表的分辨力,宏观世界反映了仪表灵敏度的高低。分辨力随显示位数的增加而提高。5测试功能强数字万用表不公可以测量直流电压(DCV)、交流电压(ACV)、直流电流(DCA)、交流电流(ACA)、电阻()、二极管正向压降(UF)、等等。新型数字万用表大多增加了下述测试功能读数保持(HOLD)、逻辑(LOGIC)测试等等。6测量范围宽数字万用表可满足常规电子测量的需要。智能数字万用表的测量范围更宽。7测量速率快数字万用表在每秒钟内对被测电压的测量次数叫测量速率,单位是“次/秒”。它主要取决于A/D转换器的转换速率。一般数字万用表的测量速率为25次/秒。有的能达到20次/秒以上,另有的一些比这个还要高得多。数字万用表可满足不同用户对测量速率的需要。8输入阻抗高数字万用表电压挡具有很高的输入阻抗,通常为1010000M,从被测电路上吸取的电流小,不会影响被测信号源的工作状态,能减小由信号源内阻引起的测量误差。9集成度高,微功耗新型数字万用表普遍采用CMOS大规模集成电路的A/D转换器,整机功耗很低,3位半,4位半手持式数字万用表的整机功耗仅几十毫瓦,可用9V叠层电池供电。10保护功能完善,抗干扰能力强数字万用表具有比较完善的保护电路,过载能力强,新型数字万用表还增加了高压保护器件,能防止浪涌电压。本设计就是基于这个基础设计一个基于单片机的数字万用表。该设备具有直观简单的优点。并且能深入的说明万用表的测量原理。能直观的了解万用表各个部分的结构和测试原则。一、数字万用表设计背景在本章中主要介绍了系统的设计原则和总体方案及系统概述等。(一)数字万用表的设计目的和意义数字万用表是当前电子、电工、仪器、仪表和测量领域大量使用的一种基本测量,已被广泛应用于电子及电工测量、工业自动化仪表、自动测试系统等智能化测量领域,示出强大的生命力。随着时代科技的进步,数字万用表的功能越来越强大,把电量及非电量的测量技术提高到崭新水平。(二)数字万用表的设计依据根据数字万用表的原理,结合以下的设计要求“设计一个数字万用表,能够测量交、直流电压值,直流电流、直流电阻,四位数码显示。实现多级量程的直流电压测量,其量程范围是200MV、2V、20V、200V和500V。实现多级量程的交流电压测量,其量程范围是200MV、2V、20V、200V和500V。实现多级量程的直流电流测量,其量程范围是2MA、20MA、200MA、2A和20A。实现多级量程的电阻测量,其量程范围是2K、20K、200K和2M。”以及电容测量电路。由此设想出以下的解决方法,即数字万用表的系统由分流电阻、分压电阻、基准电阻、电容测试芯片电路、51单片机最小系统、显示部分、报警部分、AD转换和控制部分组成。为使系统更加稳定,使系统整体精度得以保障。二、数字万用表总体设计方案(一)数字万用表的基本原理数字万用表的基本功能是能够测量交直流电压,交直流电流,还有能够测量电阻,数字万用表的基本组成见图21。图21数字万用表的基本组成(二)数字万用表的硬件系统设计总体框架图如下图22所示,本万用表由以下几部分功能组成,复位电路、震荡电路、ADC输入、被测量显示、超限报警、ADC使能控制。复位电路用来清零,进行下一次的测量;震荡电路用来消除一些外来干扰,使电路工作更加稳定ADC输入则是将输入量进行AD转换;测量显示就是显示测量的数值;超限报警部分则是用作当测量量超出量程范围时发出警报,以便提醒用户更改大量程;ADC使能控制则用来对输入量进行控制,允许输入或者不允许。复位电路震荡电路ADC输入被测量显示超限报警ADC使能控制89S52图22总体电路设计原理图(三)硬件电路设计方案及选用芯片介绍1设计方案用单片机AT89S52与ADC0809设计一个数字万用表,配合分流电阻、分压电阻、基准电阻可以测量交、直流电压值,直流电流、直流电阻,四位数码显示。实现四级量程的直流电压测量,其量程范围是2V、20V、200V和500V。实现四级量程的交流电压测量,其量程范围是2V、20V、200V和500V。实现四级量程的直流电流测量,其量程范围是2MA、20MA、200MA和2A。实现四级量程的电阻测量,其量程范围是2K、20K、200K和2M,并且有超出量程的情况发生时,蜂鸣器发声报警。2芯片选择及功能简介(1)AT89S52芯片功能特性描述AT89S52引脚框图图23AT89S52芯片引脚图AT89S52主要性能1)与MCS51单片机产品兼容2)8K字节在系统可编程FLASH存储器3)1000次擦写周期4)全静态操作0HZ33HZ5)三级加密程序存储器6)32个可编程I/O口线7)三个16位定时器/计数器8)八个中断源9)全双工UART串行通道10)低功耗空闲和掉电模式L1)掉电后中断可唤醒L2)看门狗定时器13)双数据指针L4)掉电标识符方框图图24AT89S52内部框图功能特性描述AT89S52是一种低功耗、高性能CMOS8位微控制器,具有8K在系统可编程FLASH存储器。使用ATMEL公司高密度非易失性存储器技术制造,与工业80C51产品指令和引脚完全兼容。片上FLASH允许程序存储器在系统可编程,亦适于常规程器。在单芯片上,拥有灵巧的8位CPU和在系统可编程FLASH,使得AT89S52为众多嵌入式控制应用系统提供高灵活、超有效的解决方案。AT89S52具有以下标准功能8K字节FLASH,256字节RAM,32位I/O口线,看门狗定时器,2个数据指针,三个16位定时器/计数器,一个6向量2级中断结构,全双工串行口,片内晶振及时钟电路。另外,AT89S52可降至0HZ静态逻辑操作,支持2种软件可选择节电模式。空闲模式下,CPU停止工作,允许RAM、定时器/计数器、串口、中断继续工作。掉电保护方式下,RAM内容被保存,振荡器被冻结,单片机一切工作停止,直到下一个中断或硬件复位为止。VCC电源GND地P0口P0口是一个8位漏极开路的双向I/O口。作为输出口,每位能驱动8个TTL逻辑电平。对P0端口写“1”时,引脚用作高阻抗输入。当访问外部程序和数据存储器时,P0口也被作为低8位地址/数据复用。在这种模式下,P0具有内部上拉电阻。在FLASH编程时,P0口也用来接收指令字节;在程序校验时,输出指令字节。程序校验时,需要外部上拉电阻。P1口P1口是一个具有内部上拉电阻的8位双向I/O口,P1输出缓冲器能驱动4个TTL逻辑电平。对P1端口写“1”时,内部上拉电阻把端口拉高,此时可以作为输入口使用。作为输入使用时,被外部拉低的引脚由于内部电阻的原因,将输出电流(IIL)。此外,P10和P12分别作定时器/计数器2的外部计数输(P10/T2)和时器/计数器2的触发输入(P11/T2EX),具体如下表所示。在FLASH编程和校验时,P1口接收低8位地址字节。表21P1口的第二功能P2口P2口是一个具有内部上拉电阻的8位双向I/O口,P2输出缓冲器能驱动4个TTL逻辑电平。对P2端口写“1”时,内部上拉电阻把端口拉高,此时可以作为输入口使用。作为输入使用时,被外部拉低的引脚由于内部电阻的原因,将输出电流(IIL)。在访问外部程序存储器或用16位地址读取外部数据存储器(例如执行MOVXDPTR)时,P2口送出高八位地址。在这种应用中,P2口使用很强的内部上拉发送1。在使用8位地址(如MOVXRI)访问外部数据存储器时,P2口输出P2锁存器的内容。在FLASH编程和校验时,P2口也接收高8位地址字节和一些控制信号。P3口P3口是一个具有内部上拉电阻的8位双向I/O口,P2输出缓冲器能驱动4个TTL逻辑电平。对P3端口写“1”时,内部上拉电阻把端口拉高,此时可以作为输入口使用。作为输入使用时,被外部拉低的引脚由于内部电阻的原因,将输出电流(IIL)。P3口亦作为AT89S52特殊功能(第二功能)使用,如下表所示。在FLASH编程和校验时,P3口也接收一些控制信号。表22P3口的第二功能RST复位输入。晶振工作时,RST脚持续2个机器周期高电平将使单片机复位。看门狗计时完成后,RST脚输出96个晶振周期的高电平。特殊寄存器AUXR地址8EH上的DISRTO位可以使此功能无效。DISRTO默认状态下,复位高电平有效。ALE/PROG地址锁存控制信号(ALE)是访问外部程序存储器时,锁存低8位地址的输出脉冲。在FLASH编程时,此引脚(PROG)也用作编程输入脉冲。在一般情况下,ALE以晶振六分之一的固定频率输出脉冲,可用来作为外部定时器或时钟使用。然而,特别强调,在每次访问外部数据存储器时,ALE脉冲将会跳过。如果需要,通过将地址为8EH的SFR的第0位置“1”,ALE操作将无效。这一位置“1”,ALE仅在执行MOVX或MOVC指令时有效。否则,ALE将被微弱拉高。这个ALE使能标志位(地址为8EH的SFR的第0位)的设置对微控制器处于外部执行模式下无效。PSEN外部程序存储器选通信号(PSEN)是外部程序存储器选通信号。当AT89S52从外部程序存储器执行外部代码时,PSEN在每个机器周期被激活两次,而在访问外部数据存储器时,PSEN将不被激活。EA/VPP访问外部程序存储器控制信号。为使能从0000H到FFFFH的外部程序存储器读取指令,EA必须接GND。为了执行内部程序指令,EA应该接VCC。在FLASH编程期间,EA也接收12伏VPP电压。XTAL1振荡器反相放大器和内部时钟发生电路的输入端。XTAL2振荡器反相放大器的输出端。FLASH编程并行模式AT89S52带有用作编程的片上FLASH存储器阵列。编程接口需要一个高电压(12V)编程使能信号,并且兼容常规的第三方FLASH或EPROM编程器。AT89S52程序存储阵列采用字节式编程。(2)ADC0809介绍ADC0809是带有8位A/D转换器、8路多路开关以及微处理机兼容的控制逻辑的CMOS组件。它是逐次逼近式A/D转换器,可以和单片机直接接口。1ADC0809的内部逻辑结构图25ADC0809的内部逻辑结构上图可知,ADC0809由一个8路模拟开关、一个地址锁存与译码器、一个A/D转换器和一个三态输出锁存器组成。多路开关可选通8个模拟通道,允许8路模拟量分时输入,共用A/D转换器进行转换。三态输出锁器用于锁存A/D转换完的数字量,当OE端为高电平时,才可以从三态输出锁存器取走转换完的数据。2引脚结构图26ADC0809引脚结构图IN0IN78条模拟量输入通道ADC0809对输入模拟量要求信号单极性,电压范围是05V,若信号太小,必须进行放大;输入的模拟量在转换过程中应该保持不变,如若模拟量变化太快,则需在输入前增加采样保持电路。地址输入和控制线4条ALE为地址锁存允许输入线,高电平有效。当ALE线为高电平时,地址锁存与译码器将A,B,C三条地址线的地址信号进行锁存,经译码后被选中的通道的模拟量进转换器进行转换。A,B和C为地址输入线,用于选通IN0IN7上的一路模拟量输入。通道选择表如下表所示。表23地址输入线的通道选择CBA选择的通道000IN0001IN1010IN2011IN3100IN4101IN5110IN6111IN7数字量输出及控制线11条ST为转换启动信号。当ST上跳沿时,所有内部寄存器清零;下跳沿时,开始进行A/D转换;在转换期间,ST应保持低电平。EOC为转换结束信号。当EOC为高电平时,表明转换结束;否则,表明正在进行A/D转换。OE为输出允许信号,用于控制三条输出锁存器向单片机输出转换得到的数据。OE1,输出转换得到的数据;OE0,输出数据线呈高阻状态。D7D0为数字量输出线。CLK为时钟输入信号线。因ADC0809的内部没有时钟电路,所需时钟信号必须由外界提供,通常使用频率为500KHZ,VREF(),VREF()为参考电压输入。ADC0809应用说明A)ADC0809内部带有输出锁存器,可以与AT89S51单片机直接相连。B)初始化时,使ST和OE信号全为低电平。C)送要转换的哪一通道的地址到A,B,C端口上。D)在ST端给出一个至少有100NS宽的正脉冲信号。E)是否转换完毕,我们根据EOC信号来判断。F)当EOC变为高电平时,这时给OE为高电平,转换的数据就输出给单片机了。(3)TEC6122简述概述1TEC6122共阴极8X8段LED数码管(8X8点阵)显示驱动电路是全定制专用集成电路。该电路由开机自清电路、振荡电路、位扫描驱动电路、8X8BIT移位寄存器电路、8X8BIT数据锁存器电路、段多路选择器驱动电路组成。它可与各种型号的微处理器串行口或并行口INTERFACE,专供驱动8位X8段共阴极LED数码管(8X8LED点阵)。2特点工作电压4V6V位扫描驱动电流80MA(VDD5V)段扫描驱动电流10MA(VDD5V)可驱动高彩色LED管可通过N个TEC6122级联实行NX8位LED显示管脚间距254MM,标准24PIN窄塑封双列直插封装3位扫描共阴极LED显示原理位扫描共阴极LED显示原理图及位扫描波形如附图。位扫描信号接S1,S2,S8顺序依次出现,循环反复。S1显示第一位(个位),S2显示第二位(十位),依次地S8显示第八位(千万位)。要显示的段码A,B,DP是由S1S8依次分别选通送出,S1送A1,B1,DP1,显个位,其它位不显示。同样地S8送出A8,B8,DP8,显千万位,其它位不显示,这就是位扫描共阴极LED显示原理。表24字符段码表字形ABCDEFGDP16进制代码(无小数点)16进制代码(有小数点)011111100FCHFDH10110000060H61H211011010DAHDBH311110010F2HF3H40110011066H67H510110110B6HB7H610111110BEHBFH711100000E0HE1H811111110FEHFFH911110110F6HF7HA11101110EEHEFHB001111103EH3FHC100111009CH9CHD011110107AH7BHE100111109EH9FHF100011108EH8FHP11001110CEHCFHH011011106EH6FH不显示0000000000H01H4逻辑简要说明SOABCDEFGDPOENOSCS1S2S3S4S5S6S7S8LCPSCPSIVCC5VTEC6122TEC6122S1S2S3S4S5S6S7S8TEC6122TEC6122SISCP图27TEC6122逻辑图加电自清电路片内加电自清电路使8X8BIT段移位寄存器,8X8BIT段数据锁存器,振荡时钟分频电路清“0”,清“0”期间LED不显示,开机自清后LED显示“0”。振荡电路,位扫描驱动电路振荡电路是RC振荡器,R在电路内部,只需外加电容470PF到GND地就构成RC振荡器,振荡脉冲经分频组合成S1S8位扫描驱动信号。S1驱动第一位个位),S8驱动第八位(千万位)。S1S8是开路输出,LED是这它的负载。S1S8输出受OEN控制,OEN1,允许输出,OEN0,S1S8输出为高阻状态(三态)。8X8BIT串行移位寄存器8X8BIT串行移位寄存器SI为数据输入,SO为数据输出,SCP为移位脉冲。送入串行移位寄存器中的数是A,B,DP段数据,不是BCD码数据。每次送入8BIT段码数据A、B、C、D、E、F、G、DP,DP是最低位,最先送入。A是高位,最后送入。移入串行移位寄存器中的段码数据最先进入的是第一位(十进制个位),最后进入的是第八位(十进制千万位),上述这种约定,是用户编程时必须遵循的。段数据锁存器,多路选择器,段驱动器移入8X8BIT串行移位寄存器中的段码数据在LCP打入锁存器脉冲作用下,锁存到8X8BIT段数据锁存器。数据锁存器中的段码经多路选择器,S1时送第一位(个位)A1,B1,DP1,段码显示依次地,S8送第8位(千万位)A8,B8,DP8,段码显示。段码A,B,C,D,E,F,G,DP输出受OEN控制,OEN1,允许输出。OEN0,禁止输出,A,B,C,D,E,F,G,DP为高阻状态(三态)。引脚信号及功能说明SI串行数据输入。输入数据由微处理器(计算机)程序给出。SCP串行移位脉冲。移位脉冲个数由微处理器(计算机)程序控制。SO8X8BIT串行移位寄存器数据输出。SO接下一个TEC6122电路的SI,可扩展N个TEC6122电路。LCP把8X8BIT串行移位寄存器中的数锁存到8X8BIT段数据锁存器打入脉冲,高电平有效。打入数据锁存器的目的是上一个数据的显示和下一个数据的准备(移位)可同时进行。同时也可防止数据移位过程中显示数据的乱闪烁。实际使用过程中LCP连接有二种方法A、通常的办法是把LCP直接连到TEC6122的电源VDD上(因LCP1,总选通,数据移位太慢,数据移位过程被显示了出来,数据可能会乱闪烁)。B、用一个单片机端口驱动。数据移位前,LCP0,数据移位完成,发LCP脉冲,把串行移位寄存器中的数并行打入数据锁存器显示。多片级连使用时,CP可做片选信号使用。数据移位前,LCP0,数据移位完成,发LCP脉冲,把串行移位寄存器中的数并行打入数据锁存器显示。OEN输出允许信号,高电平有效。OEN1,允许位扫描信号一S1一S8输出,允许段A,B,DP输出。OEN0,一S1一S8为高阻状态(三态),A,B,DP为高组状态(三态)。OEN的二种使用方法同LCP。A,B,。DP段输出信号,开路输出,LED做负载。S1S8位扫描驱动信号,S1是第一位(十进制个位),S2是第二位(十进制十位),S8是第8位(十进制千万位)。OSC振荡电路输入端。微处理器产生的移位脉冲与显示扫描信号S1S8是异步工作的。微处理器的任务是把要显示的数据移入8X8BIT串行移位寄存器,然后打入8X8BIT数据锁存器,后面就由S1S8控制显示。振荡电路是一个RC振荡器。R做在电路内部,OSC外接电容约470PF到GND(地)构成RC振荡器。振荡器只供显示扫描用,频率大小要求不是太严格,只要LED显示不要出现闪烁即可,通常S1S8频率为1KHZ2KHZ。(四)数字万用表的硬件设计1分模块详述系统各部分的实现方法(1)电源部分由于高压交流电会对弱电系统产生干扰,影响系统的稳定性,而电池之类的电源又存在维护不方便和电压电流衰减等的缺点,所以本次设计采用外部稳压电源供电,这里选用普通12V500MA输出的交流稳压电源输入,该电池容量大,电压衰减影响比较小,输出稳定,电路如下图。70PFC31296R485UV图28电源电路在图28的电路里稳压器7805的压降是25V,偏移电流是6MA,我们需要的电压是5V,电路提供的电压是9V,则电阻承担的电压为15V,由此得RU/I9525V/6MA200欧姆(2)输入端图29万用表正表笔输入端电路被测量的量的输入端经过表笔流经保险丝,这样做是为了起到保护作用,防止过压过流而烧坏元器件后面接2个二极管。(3)分流电阻图210分流电阻电路如上图,使用有一定规律的R8R12电阻组合构成精密的电阻分流器,能够实现分流大电流的目的,即20A的电流一律衰减到200MA通过测量参考电压经过计算得到实际的电流值。(4)分压电阻图211分压电阻电路如上图,使用有一定规律的R2R6电阻组合构成精密的电阻分压器,能够实现分流大电压的目的,即0500V的电压一律衰减到200MV以下,通过测量参考电压经过计算得到实际的电压值。(5)基准电阻图212基准电阻电路测量电阻与测量电流或者电压一样重要,俗称“三用表”,利用数字电压表做成的多量程电阻表,采用的是“比例法”测量,因此,它比起指针万用表的电阻测量来具有非常准确的精度,而且耗电很小,上图示中所配置的一组电阻就叫“基准电阻”,就是通过切换各个接点得到不同的基准电阻值,再由AD0809的参考电压VREF与被测电阻上得到的电压V测进行“比例读数”,当两者电压相等时,显示就是V测/VREF500500,按照需要再由AD0809控制转换送AT89C52控制点亮LED屏幕上的小数点,就可以直接读出被测电阻的阻值来了。在产品数字万用表中,为了节省成本和简化电路,测量电流的分流电阻和测量电压的分压电阻以及测量电阻的基准电阻往往就是同一组电阻。(6)交直流处理电路图213交直流处理电路通过该电路达到控制交直流的目的,并且通过调节可变电阻又可以有效地减少电压的损耗。(7)ADC部分图214ADC0809转换电路由于ADC0809的参考电压VREFVCC,所以转换之后的数据要经过数据处理,在数码管上显示出电压值。实际显示的电压值D/256VREF(8)报警部分图215报警电路当检测到被测量超出预定的值蜂鸣器发出“嘀”声。具体的实现过程是单片机P33脚输出高电平,使得Q1导通。使得LS1对地导通,蜂鸣器发出响声。(9)单片机最小系统图216单片机最小系统电路本次设计采用ATMEL公司的AT89S52单片机作为主控芯片,配以RC上电复位电路和110592MHZ震荡电路,使系统稳定运行。P0口做为ADC0809的数据总线,P24、P25、P26作为显示芯片的SPI总线输出。P10、P11、P12、P32作为ADC0809的控制线。同时P10P17作为8255的信号输入端,使单片机能检测到所测量的物理量和量程。(10)显示电路图217显示电路采用SPI总线LED驱动器TEC6122驱动8位数码管,使得整个系统响应时间最快,显示精度更高。采用4合1数码管,减少PCB表面走线提高系统稳定性。(11)量程选择控制电路图218物理量量程选择电路通过8255的控制与传输,使单片机就检测到所测量的物理量及其量程。(12)开关电路图228开关电路如上图,类似于常用的万用表开关,可以根据需要手动转换测量量的量程,根据所需要测量的量选择合适的量程。2数字万用表控制硬件整体结构图电路原理图(见附录一)3电路的工作过程描述此工作当然是要求在正确的程序都写入了各个芯片中才能完成工作,如上图312所示,当开关要测量电压、电流或者电阻时,则根据不同的量程需要分别选择不同的量程开关,于便得到最准确的测量数据。AT89S52的P0口做为ADC0809的数据总线,P24、P25、P26作为显示芯片的SPI总线输出。P10、P11、P12、P32作为ADC0809的控制线。ADC0809将测量的量转换成单片机能识别的量之后由所给程序控制输出,再送到显示芯片显示。显示芯片根据显示程序显示内容。本设计的原来要求是4位数码显示,但考虑到芯片TEC6122是驱动8位数码显示的,所以上面图中数码管TYP2不接上也是满足设计要求的,接上去只是满足芯片的8位驱动。三、系统软件与流程图在系统软件与流程图里主要论述了,软件结构,软件设计等。(一)电路功能模块由总体设计框图31,本万用表由以下几部分功能模块组成,复位电路、震荡电路、ADC输入、ADC使能控制、被测量显示、超限报警、等电路组成。程序中的子程序功能模块主要分成3个,延时、ADC转换、和显示,延时子程序在整个程序中多次被调用,ADC转换则是每次测量都会需要用到的,当进行测量时,ADC0809将被测量转换为2进制数发给单片机然后单片机根据软件协议送显示,显示子程序则包括一个8位字节的发送程序和一个TEC6122的驱动程序。复位电路震荡电路ADC输入被测量显示超限报警ADC使能控制89S52图31功能模块设计框图(二)系统总流程图开始系统初始化LED初始化P311使能A/D转换单片机接收数据P321转换结果送LED显示超限否结束报警YNYNYN图32系统总流程图(三)物理量采集处理流程图33物理量

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论