单片机数字电压表1

上传人:沈*** 文档编号:63630953 上传时间:2022-03-20 格式:DOC 页数:41 大小:637.50KB
收藏 版权申诉 举报 下载
单片机数字电压表1_第1页
第1页 / 共41页
单片机数字电压表1_第2页
第2页 / 共41页
单片机数字电压表1_第3页
第3页 / 共41页
资源描述:

《单片机数字电压表1》由会员分享,可在线阅读,更多相关《单片机数字电压表1(41页珍藏版)》请在装配图网上搜索。

1、扬州工业职业技术学院第1页共 35 页扬州工业职业技术学院2009 2010 学年第二学期毕业设计课题名称: 基于 AT89S52 单片机的数字电压表设计时间:2009.122010.3_系 部: _ 电子信息工程系_班 级:0707应用电子_姓 名:_ 范健_扬州工业职业技术学院第2页共 35 页指导教师:_ 单丹_总目录第一部分任务书第二部分开题报告第三部分毕业设计正文扬州工业职业技术学院第3页共 35 页第一部分任务书扬州工业职业技术学院第4页共 35 页扬州工业职业技术学院毕业设计任务书系部电子信息工程系指导老师单丹职称助讲学生姓名范健班级0702 应用电子学号0705120223设计

2、题目基于 AT89S52 单片机的数字电压表设计 内容目标 和要求扬州工业职业技术学院第5页共 35 页教研室审核系部审核扬州工业职业技术学院第6页共 35 页第二部分开题报告扬州工业职业技术学院第7页共 35 页扬州工业职业技术学院 电子信息工程 系 10 届毕业设计(论文)开题报告书学生姓名范健专业应用电子技术班级0702应用电子学号0705120223题目基于AT89S52单片机的数字电压表指导教师单丹职称助讲学 位硕士题目类别工程设计口基础研究应用研究口其它【课题的内容与要求】1.米用 ICL7135 高精度、双积分 A/D 转换电路,测量范围直流 0- 2000 伏2.,使用 LCD

3、 液晶模块显示,可以与 PC 机进行串行通信扬州工业职业技术学院第8页共 35 页【前言】数字电压表(Digital Voltmeter )简称 DVM 它是米用数字化测量技术,把连 续的模拟量(直流输入电压)转换成不连续、离散的数字形式并加以显示的仪表。传 统的指针式电压表功能单一、精度低,不能满足数字化时代的需求,采用单片机的数 字电压表,由精度高、抗干扰能力强,可扩展性强、集成方便,还可与PC 进仃头时通信。目前,由各种单片 A/D 转换器构成的数字电压表,已被广泛用于电子及电工 测量、工业自动化仪表、 自动测试系统等智能化测量领域, 示出强大的生命力。 与此 同时, 由 DVMT展而成

4、的各种通用及专用数字仪器仪表,也把电量及非电量测量技术提高到崭新水平。本章重点介绍单片A/D 转换器以及由它们构成的基于单片机的数字电压表的工作原理。扬州工业职业技术学院第9页共 35 页【方案的比较与评价】本文介绍一种基于 89S52 单片机的一种电压测量电路,该电路采用 ICL7135 高精 度、双积分 A/D 转换电路,测量范围直流 0- 2000 伏,使用 LCD 液晶模块显示,可 以与 PC机进行串行通信。【预期的效果及指标】本电路是一种高精度、低功耗、宽量程、智能化的电压表。可扩展键盘、 路,实现电压异常记录、报警【进度安排】2009年9月15日-2009年9月30日EEPROM、

5、报警电选题、调研、收集资料2009年9月30日-2009年10月5日论证、开题2009年10月6日-2010年3月20日设计(写作初稿)2010年3月21日-2010年3月23日修改、定稿、打印、答辩扬州工业职业技术学院第10页共 35 页【参考文献】1徐爱钧智能化测量控制仪表原理与设计(第二版)M.北京:北京航空 航天大学出版社,2004.2吴金戌,沈庆阳,郭庭吉.8051 单片机实践与应用M.北京:清华大学 出版社,2002.3张国勋,缩短 ICL7135A/D 采样程序时间的一种方法J.电子技术应 用,1993,第一期.4高峰,单片微型计算机与接口技术M.北京:科学出版社,2003.5刘

6、伟, 赵俊逸, 黄勇, 一种基予 C8051F 单片机的 SOC 型数据采录器的设计 与实现A.天津市计算机学会单片机分会编2003 年全国单片机及嵌如入式系 统学术年会论文集(下册)C.北京:北京航空航天大学出版社,2003 .790-7946http:/www.ic-on- 月 日【系部意见】同意指导教师意见不同意指导教师意见(请说明理由)其它(请说明)扬州工业职业技术学院第11页共 35 页队系(部)主任签章:年 月 日第三部分设计正文扬州工业职业技术学院第12页共 35 页基于 AT89S52 单片机的数字电压表范健0702应用电子摘 要本文介绍一种基于 89S52 单片机的一种电压测

7、量电路,该电路采用 ICL7135高精度、双积分 A/D 转换电路,测量范围直流 0- 2000 伏,使 用 LCD 液晶模块显示,可以与 PC 机进行串行通信。正文着重给出了软硬 件系统的各部分电路,介绍了双积分电路的原理,89S52 的特点,ICL7135 的功能和应用,LCD1601 的功能和应用。该电路设计新颖、功能强大、可 扩展性强。关键词电压测量,ICL7135,双积分 A/D 转换器,1601 液晶模块英文题目(四号,宋体加粗,居中)Fanjia n0702 applicati on of electr onicAbstract: The introduction of a co

8、st-based 89S52 MCU a voltage measurement circuits, the circuitsused ICL7135 high-precisi on, dual-scori ng A/D conversion circuits, measuri ng scope DC 0-2000 volts,the use of LCD that can be carried out with a PC serial communications. The paper focuses on providinga software and hardware system co

9、mponents circuit, introduced double integral circuit theory, 89S52features ICL7135 functions and applications, LCD1601 functions and applicati ons.the circuit desig n inno vative, powerful, can be expa nsionary strong.Key words: Digital Voltmeter ICL7135LCD160189S52第一章前言.121.1 概述. .121.2 系统原理及基本框图.

10、12扬州工业职业技术学院第13页共 35 页第二章硬件设计.1.32.1 输入电路. 132.2A/D 转换电路。.132.2.1 双积 A/D 转换器的工作原理 .142.2.2 7135 的应用.152.3 单片机部分 . .182.4 液晶显示部分 .192.4.1 1601 使用说明.192.4.2 液晶显示部分与 89S52 的接口 .。. .222.5 通讯模块. .23第三章系统的软件设计.243.1 主程序设计 .243.2 A/D 中断程序设计.253.3 通讯模块程序设计. .12结论/小结/心得体会.32致谢.33参考文献. 35Afr士第一早前言1.1 概述数字电压表(

11、Digital Voltmeter )简称 DVM 它是采用数字化测量技术, 把连续的模拟量(直流输入电压)转换成不连续、离散的数字形式并加以显示的 仪表。传统的指针式电压表功能单一、 精度低,不能满足数字化时代的需求,采 用单片机的数字电压表,由精度高、抗干扰能力强,可扩展性强、集成方便,还 可与 PC 进行实时通信。目前,由各种单片 A/D 转换器构成的数字电压表,已被 广泛用于电子及电工测量、工业自动化仪表、自动测试系统等智能化测量领域, 示出强大的生命力。与此同时,由 DVMT扬州工业职业技术学院第14页共 35 页展而成的各种通用及专用数字仪器仪表, 也把电量及非电量测量技术提高到崭

12、新水平。本章重点介绍单片A/D 转换器以及由它们构成的基于单片机的数字电压表的工作原理。1.2 系统原理及基本框图如图 1.1 所示,模拟电压经过档位切换到不同的分压电路衰减后,经隔 离干扰送到 A/D 转换器进行 A/D 转换,然后送到单片机中进行数据处理。处理 后的数据送到LCD 中显示,同时通过串行通讯与上位机通信。图 1.1 系统基本方框图扬州工业职业技术学院第15页共 35 页第二章硬件设计2.1 输入电路P132000V200VETn图2.1.1量程切换开关COM图 2.1.2 衰减输入电路扬州工业职业技术学院第16页共 35 页输入电路的作用是把不同量程的被测的电压规范到A/D

13、转换器所要求的电压值。智能化数字电压表所采用的单片双积分型ADCS片 ICL7135,它要求输入电压 0- 2V。本仪表设计是 0-1000V 电压,灵敏度高所以可以不加前置放大器, 只需衰减器,如图 3.1.2 所示 9M 900K、90K、和 10K 电阻构成 1/10、1/100、 1/1000的衰减器。衰减输入电路可由开关来选择不同的衰减率,从而切换档位。 为了能让CPU 自动识别档位,还要有图 3.1.1 的硬件连接。2.2 A/D 转换电路A/D 转换器的转换精度对测量电路极其重要,它的参数关系到测量电路性 能。本设计采用双积 A/D 转换器,它的性能比较稳定,转换精度高,具有很高

14、 的抗干扰能力,电路结构简单,其缺点是工作速度较低。在对转换精度要求较高, 而对转换速度要求不高的场合如电压测量有广泛的应用。2.2.1 双积 A/D 转换器的工作原理=-一乞计数器中所计的二进制数伉:怙图2.2.1.1双积A/D转换器如图所示:对输入模拟电压和基准电压进行两次积分,先对输入模拟电压进 行积分,将其变换成与输入模拟电压成正比的时间间隔T1,再利用计数器测出此时间间隔,则计数器所计的数字量就正比于输入的模拟电压;接着对基准电压进行同样的处理。在常用的 A/D 转换芯片(如 ADC -0809、ICL7135、ICL7109 等)扬州工业职业技术学院第17页共 35 页中,ICL7

15、135 与其余几种有所不同,它是一种四位半的双积分A/D 转换器,具有精度高(精度相当于 14 位二进制数)、价格低廉、抗干扰能力强等优点。本扬州工业职业技术学院第18页共 35 页文介绍用单片机并行方式采集 ICL7135 的数据以实现单片机电压表和小型智能仪表的设计方案图2.2.1.2双积A/D转换器的波形图2.2.27135的应用ICL7135(PCHP)TOP VIEWREFEREAMAUOG COMMONAZIN BUFFOUT REFCAP- REFCAP +画UNDER RANGEOVERRANGfcDIGnALGND扬州工业职业技术学院第19页共 35 页2.221 ICL71

16、35 引脚图扬州工业职业技术学院第20页共 35 页7135 是采用 CMOS 工艺制作的单片 4 位半 A/D 转换器,其所转换的数字值 以多工扫描的方式输出,只要附加译码器,数码显示器,驱动器及电阻电容等元 件,就可组成一个满量程为 2V 的数字电压表。7135 主要特点如下:1双积型 A/D 转换器,转换速度慢。2在每次 A/D 转换前,内部电路都自动进行调零操作,可保证零点在常温下的长期稳定。在20000 字(2V满量程)范围内,保证转换精度 1 字相当于 14bitA/D 转换器。3具有自动极性转换功能。能在但极性参考电压下对双极性模拟输入电压进 行A/D 转换,模拟电压的范围为 0

17、土 1.9999V。4模拟出入可以是差动信号,输入电阻极高,输入电流典型值1PA5所有输出端和 TTL 电路相容。6有过量程(OR)和欠量程(UR)标志信号输出,可用作自动量程转换的 控制信号。7输出为动态扫描 BCD 码。8对外提供六个输入,输出控制信号(R/H,BUSH,ST,POL,OR,UR) 因此除用于 数字电压表外,还能与异步接收/发送器,微处理器或其它控制电路连接使用。9采用 28 外引线双列直插式封装,外引线功能端排列如图所示。7135 数字部分数字部分主要由计数器、锁存器、多路开关及控制逻辑电路等组成。7135一次 A/D 转换周期分为四个阶段:1、自动调零(AZ); 2、被

18、测电压积分(INT); 3、基准电压反积分(DE; 4、积分回零(ZI)。具体内部转换过程这里不做祥细 介绍,主要介绍引脚的使用。1R/H(25 脚) 当 R/H=“ 1” (该端悬空时为“ T )时, 7135 处于连续转 换状态, 每 40002 个时钟周期完成一次 A/D 转换。 若 R/H 由“1”变“0”,则 7135 在完成本次 A/D 转换后进入保持状态,此时输出为最后一次转换结果,不 受输入电压变化的影响。因此利用R/H 端的功能可以使数据有保持功能。若把R/H 端用作启动功能时,只要在该端输入一个正脉冲(宽度300ns),转换器 就扬州工业职业技术学院第21页共 35 页从

19、AZ 阶段开始进行 A/D 转换。注意:第一次转换周期中的 AZ 阶段时间为 9001-10001个时钟脉冲,这是由于启动脉冲和内部计数器状态不同步造成的。2/ST (26 脚)每次 A/D 转换周期结束后,ST 端都输出 5 个负脉冲,其输出 时间对应在每个周期开始时的 5 个位选信号正脉冲的中间,ST 负脉冲宽度等于 1/2 时钟周期。第一个 ST 负脉冲在上次转换周期结束后 101 个时钟周期产生。因为每个选 信号(D5-D1)的正脉冲宽度为 200 个时钟周期(只有 AZ 和 DE 阶段开始时的第 一个 D5的脉冲宽度为 201 个 CLK 周期),所以 ST 负脉冲之间相隔也是 20

20、0 个 时钟周期。需要注意的是,若上一周期为保持状态(R/H=“0”)则 ST 无脉冲信 号输出。ST 信号主要用来控制将转换结果向外部锁存器、UARTs 或微处理器进行传送。3BUSY(21 脚)在双积分阶段(INT+DE,BUSY 为高电平,其余时为低电 平。因此利用 BUSY 功能,可以实现 A/D 转换结果的远距离双线传送,其还原方 法是将BUSY 和 CLK“与”后来计数器,再减去 10001 就可得到原来的转换结果。4OR ( 27 脚) 当输入电压超出量程范围 (20000) , OR 将会变高。 该信号在 BUSY言号结束时变高。在 DE 阶段开始时变低。5UR (28 脚)

21、当输入电压等于或低于满量程的 9% (读数为 1800) , 贝 当 BUST言号结束,UR 将会变高。该信号在 IN 图阶段 2 始时变低 5 的波形图6POL( 23 脚)该信号用来指示输入电压的极性。当输入电压为正,则 POL等于“ 1”,反之则等于“ 0”。该信号 DE 阶段开始时变化,并维持一个 A/D 转 换调期。7位驱动信号 D5、D4、D3、D2、D1 (12、17、18、19、20 脚)每一位驱动信号分别输出一个正脉冲信号,脉冲宽度为200 个时钟周期,其中 D5 对应万位选通,以下依次为千、百、十、个位。在正常输入情况下,D5-D1 输出连续脉冲。当输入电压过量程时,D5-

22、D1 在 AZ 阶段开始时只分别输出一个脉冲,然 后都处于低电平,直至 DE 阶段开始时才输出连续脉冲。利用这个特性,可使得 显示器件在过程时产生一亮一暗的直观现象。8B8、B4 B2、B1 (16、15、14、13 脚)该四端为转换结果 BCD 码输出, 采用动态扫描输出方式,即当位选信号 D5=“ 1”时,该四端的信号为万位数的 内容,扬州工业职业技术学院第22页共 35 页D4=“ 1”时为千位数内容,其余依次类推。在个、十、百、千四位数的内扬州工业职业技术学院第23页共 35 页容输出时,BCD 码范围为 0000-1001,对于万位数只有 0 和 1 两种状态,所以其 输出的 BCD

23、 码为“ 0000”和“ 0001”。当输入电压过量程时,各位数输出全部为 零,这一点在使用时应注意。最后还要说明一点,由于数子部分以 DGN 端作为接地端,所以所有输出端 输出电平以 DGNG 作为相对参考点。基准电压,基准电压的输入必须对于模拟公 共端 COh是正电压。8?分2OOCLK|DOD4D3D2DIST图2222 ICL7135L. n_n_.-Ln_JTL. n_n_:rnmI-.-ooooo-的波形图IcOOCLK扬州工业职业技术学院第24页共 35 页与单片机系统的串行连接在 ICL7135 与单片机系统进行连接时,使用并行采集方式,要连接 BCD 码数 据输出线,可以将

24、ICL7135 的/STB 信号接至 AT89C52 的 P3.2 (INTO)。ICL7135 需要外部的时钟信号,本设计采用 CD4060 来对 4M 信号进行 32 分 频得到 125KHZ 的时钟信号。CD406C 计数为14级2进制计数器,在数字集成电 路中可实现的分频次数最高,而且 CD4060 还包含振荡电路所需的非门,使用更 为方便。图2.2.2.3 ICL7135与系统的连接图R/HDISTRBD2REFD3IN+D4III-D5ALGCOMBlCLKB2B4CRF+B8CEF-POLOVENGUNDE14GBUSYIMTOUTAUTOOEFOUT2079J877122327

25、282?31VCCPOP1OPlP11P2P12P3P13P4P14P5P15P6P】占P7P17P27INT1F25INTOP25P24T1P23TOP22P21EAATP20XTAL1XTAL2RESETRXTRD-TXDV7RALE/PROGGNDPSEH24252SZ72829303?3334353537383940_4544S342U2382526二U1146?340扬州工业职业技术学院第25页共 35 页图2.2.2.4CD4060时钟发生电路2.3 单片机部分单片机选用的是 ATME 公司新推出的 AT89S52 如图 2.3.1 所示。该芯片具 有低功耗、高性能的特点,是采用

26、CMO 工艺的 8 位单片机,与 AT89C51 完全兼 容。AT89S52还有以下主要特点:1采用了 ATMEL 公司的高密度、非易失性存储器(NV-SRAM 技术;2其片内具有 256 字节 RAM 8KB 的可在线编程(ISP)FLASH 存储器;3有 2 种低功耗节电工作方式:空闲模式和掉电模式4片内含有一个看门狗定时器(WDT,WDT 包含一个 14 位计数器和看门狗VCC30P扬州工业职业技术学院第26页共 35 页定时器复位寄存器(WDTRST)只要对 WDTRS 按顺序先写入 01EH 后写入 0E1HWDT 便启动,当 CPU 由于扰动而使程序陷入死循环或“跑飞”状态时,WD

27、T!卩可有效地使系统复位,提高了系统的抗干扰性能。图2.3.1 89S52引脚图2.4 液晶显示部分显示接口用来显示系统的状态, 命令或采集的电压数据。 本系统显示部分用 的是 LCD液晶模块,采用一个 16X1 的字符型液晶显示模块,点阵图形式液晶由M行XN 列个显示单元组成,假设 LCD 显示屏有 64 行, 每行有128 列,每 8 列对应 1 个字节的 8 个位,即每行由 16 字节,共 16X8=128 个点组成,屏上 64X16 个显示单元和显示 RAM 区 1024 个字节相对 应,每一字节的内容和屏上相应位置的亮暗对应。一个字符由6X8 或 8X8 点阵组成,即要找到和屏上某几

28、个位置对应的显示 RAM 区的 8 个字节,并且要使 每个字节的不同的位为 1其它的为 0为 1的点亮,为 0的点暗, 这样一来就组成某个字符。但对于内带字符发生器的控制器来说,显示字符就比 较简单了,可让控制器工作在文本方式,根据在LCD 上开始显示的行列号及每行的列数找出显示 RAM 对应的地址,设立光标,在此送上该字符对应的代码即Pl JOCPU匚P12EP1 JC(MOSH P15CfMO) P1JflC(&CK) P1.7CRSTCPJJOC(TKD) P31 CfHTOi P32C(fTTHi旳匚(TOt P3C (T1|P35COT)P3J6CRDlMJCXTAUC XTAL1匚

29、GNDC21402询|338437i5366357MlA3321ta3111抑T2291T328U271t526to2517241ra23|t92212Q21VCC POJO (ACO) POJ (ADI) P02CAD2) PO.S (ADJ) POM (AC4) P05(AD6)TOJB(ADB P0.7(AD71阳ALE/TOG PSEiiJP2.7(A15| P2tAt4iP2J5(AmP2J4(A1Z1 P2.3(At1JJP2J2(At( P2J IA9】JP2JO(ASPDIP扬州工业职业技术学院第27页共 35 页可。2.4.1 1601 使用说明LCD-1601OfJOOVo

30、ltage:-1999.9oQQQQQaQQQQQHQQ表241.1LCD1601液晶模块的引脚引脚符号功能说明1GND接地2Vcc+5V3VL驱动LCD一般将此脚接地4RS寄存器选择0:指令寄存器(WRITE Busy flag,位址计数器(READ1:数据寄存器(WRITE,READ5R/WREAD/WRITE选择1:READ 0:WTITE6E读写使能(下降沿使能)7DB0低4位二态、双向数据总线L L - -ImImu u 3aI-HU3aI-HU 6 6rnnrnn0一爸二寸HUSa二9口OFTTSH扬州工业职业技术学院第28页共 35 页续表241.1 LCD1601液晶模块的引脚

31、8DB19DB210DB311DB4咼4位二态、双向数据总线另外DB7也是一个Busy flag12DB513DB614DB7寄存器选择,如表所示:表2.4.1.2寄存器选择控制线操作RSR/W操作说明00写入指令寄存器(清除屏幕,等)01读Busy flag(DB7),以及读取位址计数器(DB0DB6值10与入数据寄存器(显示各字型等)11从数据寄存器读取数据Busy flag(DB7):在此位未被清除为“ 0”时,LCD#无法再处理其他指令要求。显示地址:内部地址计数器的计数地址:SB7=0(DB0- DB6)第一行 00、01、02,等,第二行 40、41、42,等,可配合检测 DB7=

32、1 (RS=0,R/W=1)读取目前显示字的地址,判断是否需要换行。表 2.4.1.3LCD1601 16X1 显示字的地址1234567891011121314151600010203040506074041424344454647外部地址:DB7=1 亦即 80H内部计数地址,可以用此方式将字显示在某 一位置。扬州工业职业技术学院第29页共 35 页LCD 各地址列举如下表:表241.4LCD1601 16X 1显示字的外部地址16X1 16 字 1 行 1601123456789101112131415168081828384858687C0C1C2C3C4C5C6C7表2.4.1.5

33、LCD1601的指令组指令说明设置码RSR/WD7D6D5D4D3D2D1D0清除显示幕000000000*光标回到原点000000001*进入模式设定00000001I/DS显示幕ON/OFF0000001DCB移位000001S/CR/L*功能设定00001DLNF*字发生器地址设疋0001AGC设置显示地址0001ADD忙碌标志位BF001BF显示数据10写入数据读取数据11读取数据I/D I/D=1表示加1,I/D=0表示减1S S=1表示显示幕ON S=0表示OFFD D=1表示显示屏幕ON D=0表示显示屏幕OFFC C=1表示光标ONC=0表示光标OFFB B=1表示闪烁ONB=

34、0表示显示闪烁OFFS/C S/C=1表示显示屏幕移位S/C=0光标移位R/L R/L=1表示右移R/L=0表示左移扬州工业职业技术学院第30页共 35 页DLDL=1表示8位DL=0表示4位FF=1表示5X10点矩阵F=0表示5X7点矩阵NN=1表示2行显示行N=0表示1行显示行BFBF=1:内部正在动作BF=0:可接收指令或数据码242 液晶显示部分与 89S52 的接口如图所示:用 89S52 的 P2 口作为数据线,用 P0.1、P0.2、P0.3 分别作为LCD 的 E、R/W RS 其中 E 是下降沿触发的片选信号,R/W 是读写信号,RS 是寄 存器选择信号本模块设计要点如下:显

35、示模块初始化:首先清屏,再设置接口数据位为 8 位,显示行数为 1 行,字型为 5X7 点阵,然后设置为整体显示,取消 光标和字体闪烁,最后设置为正向增量方式且不移位。向 LCD 的显示缓冲区中送 字符,程序中采用 2 个字符数组,一个显示字符,另一个显示电压数据,要显示 的字符或数据被送到相应的数组中,完成后再统一显示首先取一个要显示的字符或数据送到 LCD 的显示缓冲区,程序延时 2.5ms,判断是否够显示的个数,不 够则地址加一取下一个要显示的字符或数据。D7-DOAT89S52ELCDR/WRS2.4.2.1液晶与89S52的接口2.5 通讯模块89S52 内部已集成通信接口 URT

36、只需扩展一片 MAX232 芯片将输出信号转 换成RS-232 协议规定的电平标准,MAX232 是一种双组驱动器/接 收 器,每个接收器将EIA/TIA-232-E 电平输入转换为 5V TTL/CMOS 电平。每 个驱动器将 TTL/CMOS 俞入电平转换 为 EIA/TIA-232-E 电平。即 EIA 接口,就扬州工业职业技术学院第31页共 35 页是把 5V 转换为-8V 到-15V 电位 0V 转换为 8V 到 15V 再经 RXD 俞出,接收时由 RXD 输入,把-8V 到-15V 电位转换为 5V, 8V 到 15V 转换为 OV。MAX232 勺工作电压只 需 5V,内部有振

37、荡电路产生正负 9V 电位。1|;3|C1-T1IN R10UTT2INR20LTT10JTR1INT20UTR2INVS-C2+G:A .U211蚕6MAX232图2.5.2 MAX232元件图扬州工业职业技术学院第32页共 35 页图2.5.2 MAX232引脚功能图扬州工业职业技术学院第33页共 35 页第三章系统的软件设计3.1 主程序设计ICL7135A/D 与单片机连接电路的软件设计系统的程序流程图如图所示。主 程序一开始运行则设置堆栈起始地址为 70H,设置中断寄存器,用来对 ICL7135 的中断进行计数,每 5 次后清零,完成一次数据采集工作,然后设置ICL7135的 STB

38、 端的中断的优先级。紧接着 LCDM1601 进行一次清屏,使其各个指令、数 据寄存器的值进行清空,屏幕不显示任何字符。以前面对 1601B 的介绍,只要将 01H送到数据总线,使 RS=0 R/W=0 E 有个下降沿的脉冲就可以完成清屏工作。 用以下指令实现 MOV P2,#01H ;送到数据 DB7-DB0,调用子程序 ENABLE 由于下降沿时,内部数据要送到 RAM%,所以要有一个延时子程序,使这个下降 沿持续 2.5 毫秒。内部RAMt 指令代码后就开始对 RAM 进行清零,所以屏幕原有扬州工业职业技术学院第34页共 35 页图3.1.1主程序流程图扬州工业职业技术学院第35页共 3

39、5 页的字符将被清除。接着对 1601 进行功能的设定。MOV P2,#01111000B 按表 3.1.1 来看是设定显示器按 2 行显示,每行 8 位,5X7 点阵。调用一次子程序 ENABLE 程序,写入 CPU 的指令寄存器中。每次向 LCDM 中写入一个指令,就调用一次 ENABLE 然后再对显示器进行闪烁、 光标等功能进行设定。 显示器的 RAM 地址按 加1方法进行读写。再设定第一行字符,也就是 Voltage 的显示地址 80H。 字符 Voltage 的 TABLE表地址送到 DPTF 中,然后调用远程查表命令,依次把 数据送到 P2 口,这时再调用子程序 WRITE3 使

40、LCD1601 的 RS=1, R/W=0 使使能 端 E 产生一个下降沿脉冲,将数据送入到数据寄存器中,接下来执行子程序 DISPLAY1 它的主要功能是将 TABLE 表中的字符输出到 LCD 中去。调定好显示字 符数即远程查表的次数,就开始查表了。例如第一个字符“ V”的 ASCII 码是 56H,就将这个码送到 P2 口,再调用使 能数据子程序,使 RS=1(数据区使能)写入显示数据区,R/W=0 表示写,E=来个 下降沿延时 2.5 毫秒,使数据写入 RAM 内。完成 TABLE 表输出以后,向指令 RAM 中写入第2 行的起 始地址为 OCH 再调用显示采样数据的子程序。采样 数据

41、存放的数据地址安排如下图所示,首先将 60H 中的数显示在正负号的位置 上,按照 ASCII 码表,正号不显示(#20H),负号显示“” (#2DH。GOH 61HG2H 63H 64H 65H图 4.1.2 数据地址3.2 A/D 中断程序设计个小数点十百千万正负扬州工业职业技术学院第36页共 35 页图 3.2.1 中断子程序流程图ICL7135 每一分钟完成 3 次据的采集工作,1/3 秒完成后向 CPU 申请中断,CPU这时暂停工作,为中断服务中断响应后关中断,将 PSWACC 压栈,判断是否首1L压入堆栈f设置寄存器1取转换数据是第一次中断吗?读档位、极性是八数点位吗T需要消隠吗?消

42、隐存数存数地址加1、中断次数加1岀栈Y置小数点位需要牟隐吗?开始设置小数点卷Y_存数地址加一Y消隐扬州工业职业技术学院第37页共 35 页次中断,如果是首次中断,则将正负号标志位置入60H 再把万位置入 61H 中,如果不是首次中断,则跳到 NEXT 处,如果是第二次中断,则将千位数置入62H中,如果是第三次中断,再将百位数置入63H 中,第四次中断则将十位数置入64H 中,第五次中断则将小数点位置入 65H 中,同时个位置入 66H 中。同时清除 中断次数寄存器 30H 中的值,完成中断后将 ACC PSW 出栈,开中断。消隐的思想:每次电压采集后,CPU 各数据送到 LCD 显示,将可能出

43、现以下 几种需要消隐的情况。例如:2000V 档量程:0199.9此时万位的值 0不符合人们的视觉习惯,需要把万位的值消隐掉,编程是将#20 H 送入万位,使其在 LCD 中不显示任何字符即可。同样的情况如下:需要消隐万位、千位需要消隐万位、千位、百位需要消隐万位需要消隐万位、千位在采集到数据之后,置数之前判断档位,是2V 档不消隐,是其他档位时再看要消隐的位之前有几个是零。 例如 2000V 档量程,-0001.9V ,在 2 次中断时判断档 位是 2000V 档,第 1 位是零,消隐第 2 位千位。3.3 通讯模块程序设计89S52 单片机内部有一个全双工的串行通信口,即串行接收和发送缓冲

44、器(SBUF,这两个在物理上独立的接收发送器,既可以接收数据也可以发送数据。 但接收缓冲器只能读出不能写入,而发送缓冲器则只能写入不能读出,它们的地 址为99Ho 这个通信口既可以用于网络通信,亦可实现串行异步通信,还可以构 成同步移位0019.90001.9200V 档量程:019.99001.9920V 档量程:01.999需要消隐万位2000V 档量程:扬州工业职业技术学院第38页共 35 页寄存器使用。如果在传行口的输入输出引脚上加上电平转换器,就可方便地构成标准的 RS-232 接口 89S52 的串行口有 4 种工作方式,1 种同步方式, 3种异步方式。本方式选方式 1, 一帧数据

45、有 10 位,包括起始位 0、8 位数据位 和 1 位停止位 1。 串行口电路在发送时能自动加入起始位和停止位。 在接收时,停止位进入 SCON中的 RB8 位。方式 1 的波特率是可变的,由定时器 1 的溢出率 决定。由定时器 1 最好工作在方式 2 上(自动重装载模式),这样只需对 TH1 设 置一次即可。数据通过 TXD输出,在 8 个位输出完毕后,SCO 寄存器的 TI 位被 设为 1, CPU 只要判断 TI 是 1,接着发送下一个字节。波特率的设定:定时器 T1 工作在方式 2 的初值为:fosc X (SMOD + 1)X=256-丄一;(1 1)(1.1)为了减小误差,时钟振荡

46、频率采用 11.0592MHz,选用定时器 T1 工作在方式 2 作波特率发生器,波特率为 300,设 SMOI 为 0,依公式(1.1 )得初值为:X=256_WO0 + 1)=I6O=AOH384 X300所以 TH1 = TL1 = A0HMOV SCON #50H;URATT作在方式 1 上MOV TMOD #20H;TIME1 工作在方式 2 上MOV TH1 , #0A0H本设计的中断十分重要,方式判断是否发送完毕。;设置波特率为 300为了减少相互间的干扰,保证可靠性,采用查询A6: JBC TI , A5;如果发送完毕跳,清标志位,跳到 A5。AJMP A6;否则跳到 A6,等

47、待A5: INC R0扬州工业职业技术学院第39页共 35 页结论/小结/心得体会电压测量通过不同的接口电路可实现温度、湿度、压力等测量,广泛应用于工业领域。本电路设计别具一格,是一种高精度、低功耗、宽量程、智能化的电 压表。可扩展键盘、EEPROM 报警电路,实现电压异常记录、报警。扬州工业职业技术学院第40页共 35 页致谢光阴如梭,转眼间,大学生涯将过去。遥想入学之时,恍如隔日,不免感叹时光易逝,韶华难追。在大学生涯即将结束之际,谨对四年来给予我关心与支持的良师益友和亲人们致以最诚挚的谢意!扬州工业职业技术学院第41页共 35 页参考文献1徐爱钧智能化测量控制仪表原理与设计(第二版)M.北京:北京 航空航天大学出版社,2004.2吴金戌,沈庆阳,郭庭吉.8051 单片机实践与应用M.北京:清华 大学出版社,2002.3张国勋,缩短 ICL7135A/D 采样程序时间的一种方法J 电子技 术应用,1993,第一期.4高峰,单片微型计算机与接口技术M.北京:科学出版社,2003.5刘伟, 赵俊逸, 黄勇, 一种基予 C8051F 单片机的 SOC 型数据采录器的 设计与实现A.天津市计算机学会单片机分会编2003 年全国单片机及嵌 如入式系统学术年会论文集(下册)C.北京:北京航空航天大学出版 社,2003 .790-7946http:/www.ic-on-

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

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!