自制三相供电电缆的漏电电阻测量与显示毕业论文_第1页
自制三相供电电缆的漏电电阻测量与显示毕业论文_第2页
自制三相供电电缆的漏电电阻测量与显示毕业论文_第3页
自制三相供电电缆的漏电电阻测量与显示毕业论文_第4页
自制三相供电电缆的漏电电阻测量与显示毕业论文_第5页
已阅读5页,还剩36页未读 继续免费阅读

下载本文档

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

文档简介

1、高等职业学校毕业论文姓 名: 学 号: 系 部: 专 业: 机电一体化 设计题目:三相供电电缆的漏电电阻测量与显示 指导教师: 职 称: 助理讲师 2012 年 5 月高等职业学校毕业设计任 务 书系部 系 专业年级 学生姓名 任务下达日期: 2011年 5 月 6 日毕业设计日期: 2011 年 5 月 6 日至 2012 年 5 月 4 日毕业设计题目:三相供电电缆的漏电电阻测量与显示毕业设计专题题目:三相供电电缆的漏电电阻测量与显示毕业设计主要内容和要求:本次设计采用爱特梅尔公司的AT89C51单片机,对井下三相不接地供电网绝缘电阻进行实时检测,并通过数码显示出绝缘电阻数值我们根据传统的

2、绝缘电阻在线检测技术,设计出用单片机来控制的在线绝缘电阻检测装置本设计中采用外加直流电源,通过人为制造中性点加入到三相不接地系统电网中,则三相对地绝缘电阻上将有一直流电流通过,此电流的大小变化能直接反映电网对地绝缘电阻的变化,为将这一直流变化采样并送到单片机处理,考虑可以通过串接在此回路的电阻Rg,将此直流电流工的变化转换为检测电压Ug的变化,即通过电阻Rg实现工V的变化,使检测电压Ug的变化也直接开始反映了电网对地绝缘电阻的变化为了将模拟检测电压信号Ug转换为数字信号,在此可考虑采用AD转换器件,从而通过将此数字信号传送至单片机进行数据的运算处理,最终结果通过LED显示被测绝缘电阻值。系主任

3、签字: 指导教师签字:高等职业学校毕业设计指导教师评阅书指导教师评语(基础理论及基本技能的掌握;独立解决实际问题的能力;研究内容的理论依据和技术方法;取得的主要成果及创新点;工作态度及工作量;总体评价及建议成绩;存在问题;是否同意答辩等):该生的三相供电电缆的漏电检测与显示,总体的设计思路是明确的,这个设计的实际运用价值也很大,此设计涉及到了很多知识,甚至多门学科,包括:单片机技术,传感器技术,测量和数据处理等,难度还是不小的,但学生不畏困难,多方查阅资料,虚心向老师请教积极和学生讨论,解决了不少硬件设计难题和突破软件编程难点,经过努力最终达到了预计的设计要求,但论文的图片处理部分略显粗糙。同

4、意答辩。成 绩: 80 指导教师签字: 年 月 日高等职业学校毕业设计评阅教师评阅书评阅教师评语(选题的意义;基础理论及基本技能的掌握;综合运用所学知识解决实际问题的能力;工作量的大小;取得的主要成果及创新点;写作的规范程度;总体评价及建议成绩;存在问题;是否同意答辩等):成 绩: 评阅教师签字: 年 月 日 高等职业学校毕业设计答辩及综合成绩答 辩 情 况提 出 问 题回 答 问 题正 确基本正确有一般性错误有原则性错误没有回答答辩委员会评语及建议成绩答辩委员会主任签字: 年 月 日系部领导小组综合评定成绩系部领导小组负责人: 年 月 日摘 要本设计中采用外加直流电源,通过人为制造

5、中性点加入到三相不接地系统电网中,则三相对地绝缘电阻上将有一直流电流通过,此电流的大小变化能直接反映电网对地绝缘电阻的变化,为将这一直流变化采样并送到单片机处理,考虑可以通过串接在此回路的电阻Rg,将此直流电流工的变化转换为检测电压Ug的变化,即通过电阻Rg实现工V的变化,使检测电压Ug的变化也直接开始反映了电网对地绝缘电阻的变化为了将模拟检测电压信号Ug转换为数字信号,在此可考虑采用AD转换器件,从而通过将此数字信号传送至单片机进行数据的运算处理,最终结果通过LED显示被测绝缘电阻值。关键词:单片机;数码显示;附加直流电流法;绝缘电阻在线检测目 录绪论11设计任务的分析与系统的总体计211

6、设计任务的分析212 系统的总体设计22 系统硬件设计421、硬件逻辑设计、器件介绍与选择4211、AT89CSI单片机概述4212、AD转换器 AD574622、硬件系统模块电路73 系统软件设计931、软件系统分析932、程序编制思路1041、硬件调试1342软件调试13结论16附录一:程序设计清单17附录二30附录三31绪论信息科学和微电子技术的飞速发展,在不断地冲击着人类的方方面面,并将从根本上改变我们的生活70年代以来,由于微处理机的发明和发展,使计算机走出了科学家的深院,为计算机的普及和推广应用开创了现实的可能性。当面向实时检测控制的单片机诞生以后,由于其诸多的独特特点,已经成为检

7、测控制应用系统中的优选机种。本次设计采用爱特梅尔公司的AT89C51单片机,对井下三相不接地供电网绝缘电阻进行实时检测,并通过数码显示出绝缘电阻数值我们根据传统的绝缘电阻在线检测技术,设计出用单片机来控制的在线绝缘电阻检测装置本设计中采用外加直流电源,通过人为制造中性点加入到三相不接地系统电网中,则三相对地绝缘电阻上将有一直流电流通过,此电流的大小变化能直接反映电网对地绝缘电阻的变化,为将这一直流变化采样并送到单片机处理,考虑可以通过串接在此回路的电阻Rg,将此直流电流工的变化转换为检测电压Ug的变化,即通过电阻Rg实现工V的变化,使检测电压Ug的变化也直接开始反映了电网对地绝缘电阻的变化为了

8、将模拟检测电压信号Ug转换为数字信号,在此可考虑采用AD转换器件,从而通过将此数字信号传送至单片机进行数据的运算处理,最终结果通过LED显示被测绝缘电阻值。1设计任务的分析与系统的总体计11 设计任务的分析对井下不接地的三相电源系统的绝缘电阻进行实时监测,对供电安全极为重要,绝缘电阻过低,将导致操作者触电电流过大,造成人身伤亡,这时要求排除故障或更换设备使绝缘电阻达到规定要求之上。首先人为制造三相不接地系统的中点,通过该点向三相电网加附加直流的方法,实现电压的在线测量,利用单片机前置电路实现模数转换,利用单片机的程序资源设计出信号处理和计算绝缘电阻值,最后通过单片机后置硬件和软件实现绝缘电阻的

9、数字显示。12 系统的总体设计一、传统的附加直流电源在线绝缘电阻检测系统简介 这种方法是在三相电网与大地之间附加一直流电源,则在三相对地绝缘电阻上将有一直流电流通过,该电流的大小变化就直接反应了电网对地绝缘电阻的变化电气原理图如下: 图1电气原理图二、硬件功能与框图设计1、硬件功能 本设计中采用外加直流电源,通过人为制造中性点加人到三相不接地系统电网中,则三相对地绝缘电阻上将有一直流电流通过,此电流的大小变化能直接反映电网对地绝缘电阻的变化,为了将这一直流变化采样并送到单片机处理,考虑可以通过串接在此回路的电阻Rg,将此直流电流1的变化转换为检测电压Ug的变化,即通过电阻Rg实现1八的变化,使

10、检测电压Ug的变化也直接开始反映了电网对地绝缘电阻的变化为了将模拟检测电压信号vg转换为数字信号号在此可考虑采用a周转换器件,从而通过将此数字信号传送至单片机进行数据的运算处理,最终结果通过LED显示模块发光显示被测绝缘电阻值。 2、硬件框图设计图2硬件框图2 系统硬件设计21硬件逻辑设计、器件介绍与选择该三相127伏不接地系统的绝缘电阻检测系统可分为以下五个部分:1、模拟检测电路 主要由三相电抗器L1(R1),单相电抗器L2(R2),外加直流电源12伏,被测电缆(R)等组成。2、电源部分 主要由变压器(220V15V、9V)、CW7805、CW7815、CW7915、和整流桥等元器件所组成,

11、为数字电路提供十15V直流电压,为模拟检测电路提供十12V直流电压,为模数转换电路提供正负15V的直流电压。3、检测采样与AD转换电路 主要由AD574及其外电路、检测电阻(I/V变换)Rg等组成。4、数据运算与处理单元 主要由AT89C51单片机及其外围电路组成。5、动态显示模块主要由段选驱动器74LS07作为数据线、P3口线为位选端,四块共阴极LED数码管等组成。211AT89CSI单片机概述 AT89CSI单片机是一种低功耗、高性能、内含 4KB的闪速存储器呼用(FlashMemory)的8位CMOS微控制器这种器件系以ATMEL高密度不挥发的存储技术制造,与工业标准MCS51指令系统和

12、引脚完全兼容片内闪速存储器的程序代码或数据可在线写入,也可通过常规的编程器编程。一、AT89C51单片机的特点: 1、与 MCS51产品兼容 2、片内有4K字节的闪烁可编程及可擦除只读存储器 3、宽工作电压VCC范围:2.76V 4、全静态工作方式:OHZ24HZ 5、三级程序存储器锁定 6、低功耗的闲置与掉电模式 二、AT89CSI芯片内部资源: 1、4KB闪速存储器 2、128个字节 RAM 3、32条 I0线4、两个16位定时计数器 5、五源两级中断结构 6、全双工串行口 7、片内振荡器及时钟电路 三、AT89CSI程序存储器编程 AT89CSI的片内程序存储器售后通常处于擦除状态,即每

13、地址单元的内容均为FFH,人们随时可对其编程,编程电压为:5V,12V 1)低压编程方式 5伏:在用户系统内对 AT89CSI进行编程较方便。 2)高压编程方式 12V:与常规的闪速存储器或 EPROM编程器相兼容。 1、编程步骤 a、向地址线上输人存储单元地址 b、向数据线上输人欲写进该单元的数据 c、给出正确的控制信号组合 d、若为高压编程方式芯片,则 EA/VPP接5V e、向ALE/PROG引脚施加一编程脉冲,字节写入周期为自定时的,通常不大于15msf、改变地址及数据,重复15步,直至整个存储器阵列写入完毕,或目的文件结束编程接口如下:图3编程接口图2、数据查询 AT89CSI提供有

14、数据查询功能,以探知写周期是否已经结束,在写周期进行期间,若试图读刚刚写入的字节,则在PO.7引脚上将得到所写数据最高位的反码,一旦写周期完成,则在PO口所有输出引脚上会得到刚刚写久的数据,数据查询可在每个写周期启动后动任何时刻开始。 3、RDYBSY 字节编程的进展情况亦可以通过RDY/BSY输出信号进行监视在编程期间ALE升为高电平之后,P3.4被拉成低电平,表示BUSY;当编程完毕时,P3.4复又变成高电平,表示READY,即已为下个字节的写入做好了准备。 4、程序校验若封锁位LB和LB2未经编程,则所写人的代码数据可通过地址及数据线被读出来进行校验。212 AD转换器 AD574AD5

15、74A是美国AD公司制造的12位 A/D转换芯片。 AD574A是具有三态输出的缓冲器,可和8位或16位微处理器总线直接接口的完整的12位逐次逼近型 A/D转换器它是目前国际市场上较先进的高集成度、价格低廉的12位逐次逼近型的 A/D转换器。一、AD574的特点: 1、无需外部缓冲器或者外围控制器,就可以与大多数具有8位或16位总线的通用微处理器连接。 2、经激光校准的高精度分压电阻和双极性偏移电阻提供四档经调整的输入范围,这就是单极性的010V和020V,双极性的-5V+5V和-10V+1OV。 3、内部齐纳参考电源电压校准到1000V,最大误差为1,温度系数为15PPM,基准电源可以为外部

16、提供1.5mA电流。二、AD574主要特性: l、全8位或全12位微机处理接口 2、高速转换速率:12位时为25us,8位时16us 3、片内具有电压基准和时钟电路 4、250us总线取数时间,能满足一般微处理器的要求 5、转换精度为0.05 功耗为390Mk。三、AD574作原理 当控制部分接受启动转换命令后,便启动芯片内部时钟电路,同时将逐次逼近寄存器SAR清0.然后,按逐次逼近的比较原理,控制 SAR 顺序转换根据 SAR的状态,内部 12位电流输出型 A/D转换电路逐次输出位权电流,以平衡输入信号电流比较器则根据A/D输出电流与输入信号电流的大小将SAR中对应的位保留或清除所有位比较完

17、后,逐次逼近寄存器的内容即为转换结果的二进制码。在比较完所有位后,逐次逼近寄存器向控制逻辑馈送1个转换结束信号,停止时钟脉冲,并允许外部命令控制读取转换结果数据。状态信号STS在启动时由低变高,表示转换正在进行(BUSY)在STS变高期间,输人模拟信号可以变化,从转换开始到STS再次变为低电平之前,模拟输入信号必须保持稳定转换结束时,STS变为低电平。AD574的启动控制和读数操作由5个控制信号共同作用,这5个控制信号是CE、CS、RC、128和AO. 操作真值表如下:22 硬件系统模块电路一、模拟检测电路设计 第一章中的系统总体设计方案中,我们提出了采用传统的附加直流电源在线绝缘电阻检测系统

18、(如图1),为了检测到绝缘电阻值,我们采用串接检测电阻Rg,通过检测Rg两端的电压,来反映被测绝缘电阻数值的变化,最后通过计算得出绝缘电阻的公式如下: r(12VU1)*RgR2*3R1 取Rg3.0k R1为三相电抗器的电抗,R11.5K; R2为单相电抗器的电抗,R2=1.25K; 被测绝缘电阻 r(12VU-1)*3-1,25*3-1.5k;Ug为检测电阻两端的电压,送到AD574的模拟信号输入端,经过A/D转换,将其变为一数字信号。二 AD574与89C51的接口设计AD574常用有两种工作方式:(1)将12位数据线直接挂在数据线总线上,必须将见DB11-DB4接到数据总线D7-D3上

19、,而DB3采用向高位取齐,接到D7-D4,分两次读取数据。(2)”独立式”既CE、128接+5V,CS、AO接地,仅用R/C来控制。 本次设计中采用了独立式结构。 本电路采用单极性输人方式,可对 010V、020V的模拟电压信号进行转换下图中电位器问 (100K)用作零位调整,电位器(10O)用作增益调整无论是启动、转换,还是结果输出,都要保证CE端为高电平,故CE端直接接+5V;AD574的12位转换结果直接与PO、P3口相连输出,所以12/8端接高电平根据AD574操作真值表,CS、AO两端接地;STS、R/C两端与单片机的控制信号相连。CPU可采用中断、查询、软件延时等方式读取AD574

20、A的转换结果,本次设计采用查询方式,则将转换结果结束状态线STS接到AT89C51的P2.1口。 注意:AD574电源的滤波、稳压和无高噪声是非常重要的,电源噪声会使输出代码不稳定。几毫伏电压会对ADC几位的误差,所以电源要加去耦电容01uF的瓷片电容或47uf的袒电容,数字地与模拟地要在芯片上就近接在一起,电路布线时应使模拟输入电路尽量远离数字输入电路。三 AT89C51与数码驱动显示模块的接口设计1 LED显示器接口LED显示一般有两种方法:(1)静态显示,利用串口的RXD、TXD和串入并出移位寄存器作为硬件基础或者直接利用8255A扩展日线把数码管的数据线挂在口线上。(2)动态显示,它的

21、优点是节约口线。 实际使用的LED显示器都是多位的对多位LED显示器本次设计采用动态扫描的方法进行显示,即逐个地循环点亮各个显示器虽然在任一时刻只有1位显示器被点亮,但由于人眼具有视觉残留效应,看起来与全部显示器持续点亮效果完全一样 为了实现LED显示器的动态扫描,除了要给显示器提供段(字型代码)的输入之外,还要对显示器加位的控制,这就是通常所说的段控和位控因此,多位LED显示器接口电路需要由两个输出口,其中一个用于输出8条段控线(有小数点显示)另一个用于输出位控线,位控线的数目等于显示器的位数2 显示缓冲区为了存放显示的数字或字符,通常在内部RAM中置显示缓冲区,其单元个数与LED显示器位数

22、相同在本程序中,4个显示器的缓冲区单元是41H44H,与LED显示器的对应关系为: 3 系统软件设计31 软件系统分析一 数据格式 单片机执行算术运算时,常用的数据格式有整数、小数和浮点数几种,整数的表示范围太小,如双字节无符号整数,其表示的数范围为065536,双字节有符号整数为-32768+32767,而且它们均不能表示小数而小数则不能表示大于或等于二的数采用定点混合小数,虽然可表示小数和大于1的数,但其表示范围太小,在实际使用时,数据的表示范围一般比较大,如本设计中绝缘电阻的测量范围为IK999.9K,故为了扩大数的表示范围,并保持一定的运算精度,在设计中采用浮点数的表示方法,其小数点位

23、置可按数值大小自动变化。针对本次系统的数据处理要求,精度要求并不太高,远小于 0.1一0.01的精度,用三字节浮点数表示方法己完全能满足系统要求这种三字节浮点数表示法速度快,所需存储量小。二、三字节浮点数表示法 在浮点表示法中,小数点的位置是不固定的因此,有可能将任意的一个二进制数N表示成以下的相同形式 一个浮点数分为阶码和尾数两个部分,并且都带有表示正负的阶浮与数浮,其格式如下:32 程序编制思路一 程序模块设计框图图4程序模版设计框图二 程序模块设计(一)主程序 MAIN 主程序MAIN:用于系统的初始化、A/D转换的调用、采集数据处理及显示子程序的调用(二)浮点数运算处理子程序1、D:实

24、际使用时,浮点数三字节浮点数取数子程序FML均放在存储器中,其中常用数据一般放在MCS51的内部 RAM中,所以需要有一个把内部RAM中的浮点数取到工作寄存器中进行运算的子程序功能:把(R0)指向的三字节浮点数送到R6(阶)R2R3中,把(R1)指向的三字节浮点数送到R7(阶)R4R5中。它不改变RO,R1的值。人口时:RO,R1中的内容分别为两个浮点数的阶码字节地址。2、三字节浮点数规格化于程序FSDT:在实际应用中,需要有一个程序来完成把一个非规格化数变规格化数的操作。A/D采集的电压值一般为二进制定点数,在进行浮点运算前必须将它转换成规格化浮点数另外,在进行加减运算以及比较两个浮点数的大

25、小时必须进行对阶处理,由于结果数不一定为规格化数,因此必须对结果进行规格化操作实际上规格化以及对阶处理都是通过阶码调整来实现。功能:入口地对时,执行右规格化,右移输入位为 3 gH 当FO=0时,对R6(阶)R2R3(尾数)进行右移一位 当PO=1时,对R7(阶)R4R5(尾数)进行右移一位 当CY=1时,对R6(阶)R2R3(尾数)进行左规格化,第一次左移输入位为FO入口:R6(阶)R2R3中存放浮点数R7(阶)R4R5中存放浮点数2出口:浮点数二规格化后存放在R6(阶)R2R3(尾数)中,浮点数2规格化后存放在 R7(阶)R4R5(尾数)中。 3、三字节浮点数加减处理子程序FABP: 两个

26、浮点数进行加减运算时,如果它们的阶码相等,则它们的尾数可直接进行加减运算;如果阶码不相等,则首先要对阶,使它们的阶码相等,小数点对齐,然后对尾数进行加减法运算,最后对结果进行规格化操作。对阶应该是小的阶码向大的阶码对齐,即增大小的阶码,同时把它的尾数右移,保持数值大小不变,直到小阶等于大阶为止。 功能:执行R6(阶)R2R3士 R7(阶)R4R5一R4(阶)R2R3 入口:位 3AH=0,执行加法: 位 3AH=1,执行减法 运算:采用小阶向大阶靠 4、三字节浮点数加法子程序FADD 功能:(RO)(RO1)(RO2)(R1)(R 1l)(R 12)送 R4(阶)R2R3 人口:加数和被加数分

27、别放在 RO,RI指向的内部RAN 出口:和存放在 R4(阶)R2R3中 说明:需要调用PMLD、FABP子程序。 5、三字节浮点数减法子程序FSUB: 功能:(RO)(RO1)(RO2)(RI)(R1l)(R12)送R4(阶)R2R3入口:被加数和加数分别存放在R0,R1指向的内部RAM 出口:差存放在R4(阶)R2R3中 说明:需要调用WLD、FABP子程序 6、三字节浮点数乘法子程序FMUL: 执行浮点乘法不需要对准小数点,只要将阶码相加,尾数相乘即可 功能:(RO)(RO1)(RO2)*(R1)(R11)(R12)送R4(阶)R2R3 人口:(R0)为被乘数存放地址,(R1)为乘数存放

28、地址 出口:积存放上R4(阶)R2R3中 说明:需要调用 DMUL、FSDT、FMLD子程序 7、三字节浮点数除法子程序 FDIV:执行浮点除法,应先调整被除法数的阶码,使被除数的尾数小于除数的尾数 功能:(RO)(RO十1)(RO2)(R1)(R11)(R1十2)送 R4(阶)R2R3 人口:(R0)指向被除数存放地址,(R1)为除数存放地址 出口:商存放在R4R2R3中,C1,除数=0 说明:需要调用DD、FSDT,FMLD子程序8、三字节浮点数存数子程序FSTR: 功能:把 R4(阶)R2R3的浮点数送到(R1)指向的RAM单元中 人口:R4(阶)R2R3中存放三字节浮点数 出口:三字节

29、浮点数存放在(R1)的指向单元中 9、三字节浮点数转换为定点数干程序FINT: 功能:把(R0)指向的三字节浮点数转换成二进制数,存放在R5R6中 人口:RO、RO+1、RO+2中存放三字节浮点数 出口:二进制数放在R5R6中(三)、数据显示模块DISPLAY 功能:(R0)指向的四个单元的BCD数,分别送到数码显示区,位选端通过位操作,小数点的位置通过程序编制设定在第三位数码管。 (四)模数转换子程序 ADC功能:读A/D转换结果,并存入RAM中。 AD574转换器程序设计方法: 1、定时采样方式 2、中断采样方式 3、程序查询方式我们在设计中采取第三种方式,在硬件电路上将AD574的STS

30、接89C51的P3.4口,通过查询P3.4口的状态,来判断转换是否结束,若该端电平为1表示正在转换,若为O则转换结束。4 系统调试41 硬件调试一 静态调试 1、在样机加电之前,对样机进行静态调试,包括对照原理图样机线路检查、元器件核对、电源输出电压稳定性检查等 2、加电检查各个点电位是否存在异常情况,如样机各电源电压是否正常 3、模拟检测电路加上u 电压,测量检测电阻Rg上是否有检测电压Ug 4、检查无误后,插上AD574、AT89CSI等集成块,准备连机调试 二 连机调试 1软件介绍: LCASI软件是 AEDK系列仿真机的调试软件软件支持 AEDK所有系列的51类仿真机,包括AEDK5l

31、S、AEDK51PH、AEDK5lHB、AEDK5ll、AEDK5lw、AEDK320y仿真机,AED5198、AEDK198A、AEDK5196(N仿真机的 51配置方式对于各种型号仿真机,软件功能上会稍有不同,比如最多可设置的断点数,支持的最高波特率等等,使用时清查阅相应的仿真机使用手册LCASI软件是基于WINDOWSW98操作平台的多窗口编辑、调试软件软件可使用两种界面方式在高细户界面方式,支持用户定制界面,包括菜单,工具栏,热键等用户可以按个人习惯改变工作界面软件采用多窗口和船坞化窗口相结合的标准调试界面方式,界面友好,使用方便LCASI软件全面支持汇编语言,CSI语言,PL川语言的

32、编译连接、调试软件支持单文件方式和工程化管理两种模式用户可自定义各种语言的关键词软件完全支持源语句级在线调试高级语言还支持源文件调试和汇编语言指令行对照调试用户可同时打开多个窗体编辑、调试、变量观察用户可在线对源文件直接编辑、编译、连接、加载和调试,软件支持编译错误源文件定位调试时用户可动态观察、修改设定变量(包括CPU片内寄存器、特殊寄存器及外部寄存器、内存)的值。2对于ADS 74调试时,因为我们把AD574接成单极性的,调整时必须使AD574的REF OUT 端的电平为10伏,DIP OFF端的电平为0输入以下调试程序,用 2 OV的可调电源来模拟输人电压 Yin , 同时接入一高精度数

33、字电压表来测量其值,先后加上5V和15V电源,运行下面的程序调节Vin的电压,可以看到显示器显示出对应的电压值,然后调整零点,即当模拟输人电压为 LSB/2=0.00012V时,调整零点电位器,使显示器的数字在00001之间跳动,在调整满刻度,即当模拟输入电压为FSR3LSR/2=9.9964时,调节增益电位器,使显示器的数字在FFEH乍FFH之间跳动最后进行半刻度校正检查,即当Vin=5V时,显示器的数字应为 100H。42软件调试一 源程序编写和汇编 首先要新建文件,原程序编写,编译二 软件调试 1、程序加载 在源程序编写、编译完成后,加载文件 2、程序调试 调试程序顺序:浮点数运算子程序

34、、显示子程序、A周转换子程序 3调试的技巧 通常一个调试程序应该具备至少四种性能: ·跟踪 ·断点 ·查看变量 ·更改数值3l跟踪调试 调试应用程序所提供的重要性能也许就是跟踪应用程序。跟踪应用程序使用户能够在运行应用程序时,看到PC指针在应用源代码程序中的确切位置,LCASI提供以下方法对程序的执行进行跟踪。 ·跟踪型单步 热键F7 ·通过型单步 热键FS 跟踪型单步仅执行一条源语句程序。但是,如果调用一函数,则进人函数中,在执行函数的第一条源语句行前停止。 ·通过型单步仅执行下一条源语句程序,然后又停止J果是调用一函数,

35、运行完整个函数并停止在函数返回处。32断点调试 如果已知程序中某块代码实际运行正常的情况下,仍用跟踪调试方法,将大大浪费时间,而且很枯燥,因此调试中第二个重要工具是在源代码中预定处设置断点,大多数调试程序通过使用断点中止程序执行。LCASI软件提供以下方法来设置断点达到中止程序执行目的:·设置或取消断点CTRL刀·执行到光标所在行F4 在代码中放置断点方法是事先将光标移动到用户希望放置断点的文本行位置时,按CTRL仔 热键或者点击相应的工具栏图标就可设置断点,最大断点个数由仿真机型号所决定。 LCASI调试软件还提供一次性断点:执行到光标所在行。如果用户按热键F4,调试程序

36、继续执行程序代码,直到它到达光标行处或调试程序遇到另一个断点。33查看变量 显然,通过一系列指令查看应用程序,了解导致某一错误的执行也是一种非常有效的方法。LCASI软件提供了以下几种方法对变量进行查看。·观察窗口·数据窗口 程序空间窗口 内部数据窗口 外部数据窗口 通过添加观察项菜单可以将用户希望观察的变量添加到观察窗口中,长期进行观察。用户程序在单步或断点停下时,将更新变量的取值。 用户可以直接移动鼠标到相应的变量名上,点击鼠标左键,将出现一个提示窗口,显示这个变量的当前值。 用户还可以打开程序空间窗口、内部数据窗口、外部数据窗口进行数据块观察。34更改数值 如果用户在

37、调试过程中了解到变量的内容(超值、未定义等)会对程序性能产生影响或引起异常时,立即更改变量的内容是很有效的方法,以确保该值在正确范围内不会产生错误。LCASI软件提供一系列更改变量数值的方法,以便用户能检查程序对整个变量值范围的反应,而无需为设置每个值而重新加载调试。在更改对话框中用户输人要更改的取值,点击确定按钮。用户可以在输入框中输人十六进制或十进制数据。43 综合调试一、仿真运行 连接样机和仿真系统,调试检测电阻,在 AD574的 010V端输入+5V电压信号,仿真运行程序若转换后数字存储单元有一定的数字量,则表示AD574己经工作了然后连上模拟检测电路,接上检测电阻,运行整个程序,观察

38、数码管显示是否有误。二、固化:1、关样机及仿真机工作电源; 各种芯片VPP电压可查资料或询问供货商,不能偏低,也不能过高通常标志12.5V的 EPROM,VPP应调整为13.V13.2V;标志 21V的EPROM VPP应调整为21.5V21.6V否则会损坏芯片,或者固化不可靠本次设计中VPP固化电压为+12V。2、将 89C5插人到仿真机内 875固化插座上; VPP电源仅在 EP命令时才能接上,固化完成后必须马上拔掉(断开)否则可能会损坏仿真机。3、打开样机及仿真机电源十SV,并调节固化电压十12V4、首先把程序加载到仿真机的程序存储器中,再通过菜单工具中的芯片固化把程序固化到89C51里

39、,再通过读人查看程序是否固化成功。 特别注意: 固化完后,立即断开VPP,否则可能损坏仿真机。  总结 毕业设计已经结束,在毕业设计中,我将理论应用到实际中去,同时明白了实际与理论的相互关系,提高了实践动手能力根据任务书我就开始查资料,方案论证,拿出设计方案,主要从下面几个方面展开工作一、硬件电路设计、组装、调试在这一方面,我根据设计任务的要求,进行模块设计,具体分四大模块:检测电路、前置通道(A/D周转换)、单片机处理、后置通道(数码显示) 二、我是负责软件与硬件设计的,首先硬件设计,在实验时不断的进行方案调整,优化结够,简化配置在软件设计时,我根据设计模块的类别,主要分

40、三大模块设计:A周转换程序编制、浮点数据处理、数码显示程序设计我们从整个设计的流程图入手,各功能子程序实现模块化、子程序化这样,既便于调试、连接,又便于移植、修改对各部分程序存储区、数据存储区进行合理分配当然,在整个设计过程中,我们也遇到了很多困难我们先计划调节数码显示部分,一开始数码显示数字有误,后来经过重新编制,终于编制成功,人工随便置四个数,都能显示出来,最终显示部分用了74LS04作为位选驱动有够的功率而且设计任务书要求数码显示小数点前三位,小数点后一位,根据这一要求,我们又在第三位数码管上通过程序编制加人了小数点显示在浮点数据处理部分,由于浮点数处理起来较麻烦,为力保程序正确,我们采

41、用逐个调试子程序方法,使每个子程序首先都能正确运行,然后在主程序中直接调用子程序来实现浮点数处理 三、应用软件的连接调试、固化、脱机运行 在整个系统连接调试过程中,遇到了一些比较棘手的问题,我们的程序在仿真机上能正确运行,可脱机运行总是不行能够正确仿真,说明我们的程序、前置电路、后置显示电路都没有问题,原因可能是 89C5没有工作所以我检测了一下 89C5的复位电路,发现 89C5复位电路的复位电压没有瞬时电压于是我检查复位电路,是电容断路 总之,通过本次毕业设计本人在各方面收益很大首选,本人学会了如何对所设计的课题进行综合分析,主要是对其可行性的分析它包括电路原理的可行性以及实际电路设计、安

42、装等方面的可行性其次,这次毕业设计对培养本人的毅力、耐心、细心也是大有好处的最后,通过本次毕业设计 另外,本次毕业设计能够取得圆满成功,我要特别感谢导师王晓娟的悉心指点,从老师那里学会了好多事情,如何对待工作,生活。 这毕业设计对我收益非浅。不但让我学到了很多新的理论知识,培养了我的动手实践能力,更重要的是让我在面临问题时,不再惶恐, 不再犹豫,而是大胆、细致、全面的对它进行综合分析,再通过各种途径解决问题。另外,这次毕业设计也培养了我的毅力恒心和耐性。相信这些东西在我以后的工作、生活中肯定会发挥它们的作用,助我前进!   附录一:程序设计清单*主程序* org 0000h

43、 ajmp main org 0030h main:mov ro, 60h mov rl,70h mov sp, 07h clr 41h clr 42h olr 43h olr 44h mov p2, 02h Icall dushu setb 3ch mov r3, 61h mov r2, 60hIcall intf  mov a, 04h ;乘法 mov ro,a i nc r0 mov a,0a0h mov ro,a inc r0 mov a,00h mov ro,a dec r0 dec r0 Icall fmulIcall fstr0  mov a, 0dh ;除法

44、 mov r0,ainc rImov a, 0ffhmov rl,ainc rImov a, 0f0hmov r1, adec r1dec rlIcall fdivIcall fstrl, mov a,06h ;u 检mov r0,ainc romov a,90hmov r0,ainc romov a,00hmov r0,adec r0dec r0Icall fdivIcall fstr0 mov a,#01h ;-1.25mov r1,ainc r1mov a,#0a0hmov r1,ainc r1mov a,#00mov r1,ainc r1mov a,#00mov r

45、1,adec r1dec r1Lcall fsub mov a,#02h ;-3mov r1,ainc r1mov a,#0c0hmov r1,adec r1dec r1Lcall fsubLcall fstr0 mov a,#02hmov r1,ainc r1mov a,#0c0hmov r1,ainc r1mov a,#oohmov r1,adec r1dec r1Lcall fmulLcall fstro mov a,#01hmov r1,ainc r1mov a,#80hmov r1,ainc r1mov a,#00hmov r1,adec r1dec r

46、1Lcall fsubLcall fstr0Lcall ;调用三字节浮点数转换为定点数存放在r5,r6 mov 40h,r2Lcall bcdzh ;bcd转换mov a,#0fhanl a,r3mov 41h,3mov a,#0f0hanl a,r4swap amov 42h,amov a,#0fhanl a,r4mov 43h,afbcd: mov r0,#44h :小数转化为BCDLoop1: clr cmov r2,40hmov a,r2mov b,#10mul abmov r2,axch a,baddc a,#0mov r0,ainc r0djnz r4,loop1

47、0;d: lcall displaydjnz r4,djnb p2.1,duLjmp disk1du :ljmp dushudisplay:clr p2.0 ;查字型码表 clr p2.1mov dptr,#tabmov a,41hmovc a,a+dprtmov a,42hmov a,43hmovc a,a+dptradd a,#80hmov 43h,amov a,44hmovc a,a+dprtmov 44h,amov 44h,#66hsetb p3.0setb p3.1setb p3.2setb p3.3 diskl:mov pl,41hclr p3.0Lcall de110s

48、etb p3.0mov p1,42hclr p3.1Lcall de110setb p3.1mov p1,43hclr p3.2Lcall de110setb p3.2mov p1,44hclr p3.3Lcall de110setb p3.3clr p2.0sjmp diskldel10:mov 20h,#05 ;延时子程序del11:mov 21h,#08deli2:djnz 21h,del12 djnz 20h,del11 retdushu:mov r0,#60hclr p2.0clr p2.1jb p2.1,$steb p2.0mov r0,p0inc r0mov r0,p3mov a,r0anl a,#0f0hmov r1,aret双字节整数转换成三字节浮点数子程序 intf:: mov r6,#16mov r1,#70hsteb cclr f0Lcall fsdtmov a,r6clr cmov acc.7,cmov

温馨提示

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

评论

0/150

提交评论