接触电流测试仪设计毕业设计.doc

上传人:仙人指路1688 文档编号:3943933 上传时间:2023-03-28 格式:DOC 页数:55 大小:863.50KB
返回 下载 相关 举报
接触电流测试仪设计毕业设计.doc_第1页
第1页 / 共55页
接触电流测试仪设计毕业设计.doc_第2页
第2页 / 共55页
接触电流测试仪设计毕业设计.doc_第3页
第3页 / 共55页
接触电流测试仪设计毕业设计.doc_第4页
第4页 / 共55页
接触电流测试仪设计毕业设计.doc_第5页
第5页 / 共55页
点击查看更多>>
资源描述

《接触电流测试仪设计毕业设计.doc》由会员分享,可在线阅读,更多相关《接触电流测试仪设计毕业设计.doc(55页珍藏版)》请在三一办公上搜索。

1、沙学院 CHANGSHA UNIVERSITY毕业设计(论文)资料设计(论文)题目: 接触电流测试仪设计 系部: 电子与通信工程系 专 业: 电子信息工程 学 生 姓 名:班 级:指导教师姓名:最终评定成绩长沙学院教务处 二一一年二月制毕业设计(论文)原创性声明和使用授权说明原创性声明本人郑重承诺:所呈交的毕业设计(论文),是我个人在指导教师的指导下进行的研究工作及取得的成果。尽我所知,除文中特别加以标注和致谢的地方外,不包含其他人或组织已经发表或公布过的研究成果,也不包含我为获得 及其它教育机构的学位或学历而使用过的材料。对本研究提供过帮助和做出过贡献的个人或集体,均已在文中作了明确的说明并

2、表示了谢意。作 者 签 名: 日 期: 指导教师签名: 日期: 使用授权说明本人完全了解 大学关于收集、保存、使用毕业设计(论文)的规定,即:按照学校要求提交毕业设计(论文)的印刷本和电子版本;学校有权保存毕业设计(论文)的印刷本和电子版,并提供目录检索与阅览服务;学校可以采用影印、缩印、数字化或其它复制手段保存论文;在不以赢利为目的前提下,学校可以公布论文的部分或全部内容。作者签名: 日 期: 目 录第一部分 设计说明书一、设计说明书第二部分 过程管理资料一、 毕业设计(论文)课题任务书二、 本科毕业设计(论文)开题报告三、 本科毕业设计(论文)中期报告四、 毕业设计(论文)指导教师评阅表五

3、、 毕业设计(论文)评阅教师评阅表六、 毕业设计(论文)答辩评审表2011届本科生毕业设计(论文)资料第一部分 设计说明书(20 11 届)本科生毕业设计说明书(论文)接触电流测试仪设计系部: 电子与通信工程系 专 业: 电子信息工程 学 生 姓 名: 雷小明 班 级: 2 学号 2007044224 指导教师姓名: 马凌云 职称 讲师 最终评定成绩 20 11 年 5 月 长沙学院本科生毕业设计(论文)接触电流测试仪设计系 (部):电子与通信工程系专 业: 电子信息工程 学 号: 2007044224 学生姓名: 雷小明 指导教师: 马凌云 (讲师) 2011年 5 月摘 要本系统是以嵌入式

4、单片机系统为技术核心,利用单片机的信号处理功能而设计制作的一个接触电流测试仪。它有着高精度测量,低能耗,稳定可靠等优点。本设计主要向大家讲述人机对话和单片机的通信以及单片机进行控制切换和模数转换。简单介绍了接触电流测试的原理、特点和发展现状。并结合当前研究和应用中的问题指出了接触电流测试仪的发展趋势。主要介绍了接触电流测试仪的原理组成和其软件编程方法。接触电流测试仪以pcf8583芯片,74hc244芯片,atmega8芯片以及atmega32芯片为主控芯片,并对数据和信号进行收集和处理。用atmega32单片机进行数据处理和检测,并讨论在以此单片机为微处理器的仪表中采用一片atmega8实现

5、仪表键盘/显示器的最小化硬件设计技术。可以说这个测试仪结构简单,抗干扰性强,容易操作,功能完善等特点。关键词: 接触电流测试仪,人机对话,pcf8583芯片,atmega32单片机ABSTRACT The system uses an embedded microcontroller system as a core technology, and uses a single chip design signal to process functions as a touch current test instrument. It has the highlight of high preci

6、sion measurement, low energy consumption, stable and reliable etc. This designer primarily aims at presenting a man-machine dialogue and communication system, and the SCM control switches and analog-digital conversion. It introduces the principle of touch current tests, characteristics and developme

7、nt status. Combined with the current problems in the application of research and contact with current tester points out the trend, introduces the principle of touch current test instrument components and the software programming. Touch Current Tester using pcf8583 chips, 74hc244 chip based on atmega

8、8 chip as the main control chip to get the data and signal collection and processing. Microcontroller with atmega32 data processing and testing discuss this instrument microcontroller used for the microprocessor to achieve an atmega8 instrument keyboard / display to minimize hardware design techniqu

9、es. It can describe that the tester of simple structure, strong anti-interference, easy, functional and so on. Key words: Touch Current Tester, man-machine dialogue, pcf8583 chip, atmega32 SCM目 录摘 要IABSTRACTII第一章 前言11.1接触电流测试的发展及意义11.2课题研究内容21.3论文结构3第二章 仪器的结构和原理42.1接触电流42.2接触电流测试仪的工作原理52.3仪器部分结构和原理6

10、2.3.1模拟人体阻抗测试网络62.3.2信号放大72.3.3单片机及其接口82.3.4 A/D转换器8第三章 仪器硬件设计103.1系统信号输入通道103.2系统时钟电路113.3微型处理器atemga32123.4系统按键显示部分13第4章 仪器软件设计144.1主程序设计144.1.1软件设计说明144.1.2主程序流程图及程序144.2初始化说明194.2.1为什么要初始化194.2.2初始化进程194.3按键处理说明194.4菜单设计说明204.5 A/D转换说明224.6显示模块说明23第五章 系统模拟运行结果及其分析265.1Proteus仿真图265.2仿真运行图27结论29参

11、考文献30附 录31致 谢32第一章 前言1.1接触电流测试的发展及意义 随着社会的发展,人们使用的家用电器越来越多,品种和范围也越来越广,并且人员层次使用不一致,因此电子和电器设备的安全性就显得更加重要。家用电器安全的重要性不言而喻。而防触电是所有安全标准中最基本也是最重要的要求,家电产品的接触电流就是关于电器安全方面要求的内容之一,在中国强制认证(简称CCC认证)中也是产品安全型式认可试验的主要测试项目,以及生产企业确认检查的测试项目目前,对电气设备的安全性能测试时,大都采用旧的标准和测试手段,对设备的泄露电流进行测量,而这种测试方法,并没有充分考虑到设备在特定通电线路等状态下的最大接触电

12、流值,因而测试的结果是不全面的,也是不准确的。另外,还要考虑到测量期间设备的接地也必须按照制造厂所标记的设备在实际使用中指定要连接的接地系统类型(TN,TT,IT系统)的情况下进行测量。接触电流作为一项测试电器设备的绝缘性鞥工作,是电器设备进行安全性能考核的技术指标之一。其中接触电流,尤其是工作温度下的接触电流是一个最能确切反映实际工作状态的安全电流参考量,也是一个对人体安全有着直接影响的电参量 因为当电源线一端接地,人体触及电器外壳的情况下,电器泄漏电流会过人体流人大地,可能导致人身伤亡,因此进行准确的泄漏电流测试是检验安全性能的重要技术指标之一为此,按照国家标准GB12113-89接触电流

13、和接地线电流的测量的技术要求设计研制了文章下面将要介绍的电器设备接触电流测试仪。仪器在总体设计上,遵循标准的测量程序,充分考虑到电器设备在各种诸如:极性相反、断开保护接地等待特定通电状态下产生的最大接触电流值。该仪器的研制,为家电设备、家用和类似用途的电器在安全性能方面的测试与考核,提供了必要的检测仪器。IEC60990 接触电流和保护导体电流的测量方法中提到接触电流是“当人体或动物接触一个或多个装置的或设备的可触及零部件时,流过他们身体的电流。” 接触电流也称之为泄漏电流,然而经常会与耐压测试中的漏电流混为一谈,因此近些年的标准中或是相关的刊物中都把泄漏电流称作为 “ 接触电流 ” 。对于

14、I 类设备的电子产品可触及的金属部件或是外壳还应具备良好的接地线路,以作为基本绝缘以外的一种防电击保护措施。但是我们也经常遇到一些使用者随意将 I 类设备当成 II 类设备使用,或是说其 I 类设备电源输入端直接接地端 (GND) 拔除,这样就存在一定的安全隐患。这就是我们为什么要做接触电流测试的目的所在。1.2课题研究内容 科学技术日新月异的飞速发展,居多的电子电气设备越来越深刻地影响到人类社会的发展。而随之而来的用电设备的安全问题也为人们所越来越重视,因此接触电流应运而生,它在用电设备的安全使用方面起到了重要作用。在现实生活中, 触电是威胁人身安全的最危险因素。触电是由于电流通过人体而造成

15、的, 要毫安级的电流就能在健康人体内产生反应, 而且可能会由于不知不觉的反应导致间接死亡。更高的电流会对人体产生更大的危害。在特定条件下, 低于某些限值的电压一般不认为是危险电压。为了对可以接触或操作的部件上有可能出现的较高电压提供防护, 应将这样的部件接地或充分绝缘。标准用大量篇幅对产品的防触电保护提出了要求, 并采用了利用人体模拟网络对接触电流进行加权测试的方法, 规定接触电流不应超过交流限值0.7mA( 峰值) 和直流限值2.0mA。流过以上模拟人体阻抗网络的电流称为接触电流。接触电流的波形为非正弦波标准要求测量的接触电流值为最大的峰值电流, 所以使用一般的有效值电流表无法进行准确测量。

16、为了较为准确的测量接触电流的峰值, 在设计上采用波形量法测量接触电流波形的电压峰值, 再通过计算得出接触电流( I d )值。在采用波形测量法获取波形的峰值, 先可通过将整个波形数据进行实时采集, 然后换算得出波形最大的峰值, 再利用公式计算出接触电流的峰值,接触电流值I d =峰值/ 5 0 0 。为了能实时采集接触电流的波形数据, 并方便的处理采集的数据,采用P C 加虚拟示波器的方案。在这个方案中,波形数据被实时的采集, 加上P C在数据处理上的优势, 实时采集的数据被迅速转换成测量需要的数据。通过在P C 上执行的主控程序, 将硬件控制和数据处理显示集中到一起, 由外部进行统一的控制。

17、其功能方框图如图1所示。图1 功能方框图根据现在对接触电流测试仪的要求编写程序,选用单片机编程,通过Proteus仿真来判断电流测量仪是否可行,如果可以就设计接触电流测量仪,将实时采集的数据被迅速转换成测量需要的数据,使用单片机进行控制切换,通过模数转换器传输给单片机,触发程序根据控制量控制执行单元。在设计上采用波形测量法测量接触电流波形的电压峰值,再通过计算得出接触电流(Id)值。先可通过将整个波形数据进行实时采集,然后换算得出波形最大的峰值,再利用公式计算出接触电流的峰值。1.3论文结构根据设计的思路可以将论文分成五章来介绍:第一章是引言部分主要介绍接触电流测试仪的发展及意义,接触电流测试

18、仪的软件设计的概述。然后对此接触电流测试仪的软件设计的内容有一个简单的介绍及对设计的论文做一个的基本结构介绍。第二章主要介绍接触电流测试仪结构和工作原理。包括什么是接触电流接触电流的分类怎样测试接触电流即介绍测试接触电流的工作原理。接触电流即当人体或动物接触一个或多个装置的或设备的可触及零部件时, 流过他们身体的电流。接触电流可分为对地接触电流、表面对地接触电流以及表面间接触电流三种,各种接触电流的特点在第二章中有具体的介绍。因接触电流实测通过人体的电流不能在人身体上测试某种接触电流或电压,所以我们可以通过模拟人体阻抗网络来设计接触电流测试仪。其工作原理方面介绍了用到的模块电路原理图,功能表等

19、主要包括测量网络,AcDc转换器,运算放大器,量程转换,A/D转换器,数字表头。第三章介绍了仪器的硬件设计,介绍了系统信号输入通道中用到的74hc244芯片,系统时钟电路中用到的PCF8583芯片,微处理器atemga32的电路逻辑图,引脚图及逻辑功能。介绍了采用型号TG13650FEY液晶显示器部分。第四章介绍软件部分的功能实现,主要是通过程序控制接触电流的测试。第五章是仿真结果和结论,通过仿真结果来判断结果此测试仪的设计能否通过。第二章 仪器的结构和原理2.1接触电流接触电流 :当人体或动物接触一个或多个装置的或设备的可触及零部件时, 流过他们身体的电流。“接触电流”这一术语还可以表达茹干

20、不同的概念,如:泄露电流、保护导体电流、绝缘特性等等。接触电流的分类:对于不同结构的电子产品,接触电流的量测也是有不同的要求,但总括来说接触电流可分为对地接触电流、表面对地接触电流以及表面间接触电流测试三种。(1)对地接触电流:“由电源网络产生的漏电流穿过或跨过绝缘层并流入保护接地导线的电流。” I 类设备在保护接地导线断开的单一故障条件下,如果接地的人体接触到与该保护接地导线相连的可触及导体(如外壳),则这个对地接触电流将通过人体流到地,当这个电流大于一定值时,就有电击的危险。这种情况正如上述的事例,即使接地线出现了故障或最极端的情况下断开,这时外壳的漏电流亦不能对人体造成伤害。 如图一所示

21、,此时人就是充当了接地线路,流经人体电流也应在标准规定的限值之内。(2)表面对地接触电流:“从在正常使用时操作者或患者可触及的外壳或外壳部件(应用部分除外),经外部导电连接而不是保护接地导线流入大地或外壳其它部分的电流。 如果是II类内部电源设备,由于它们不具备保护接地线路,则要考虑其全部外壳的漏电流;但如果是I类设备,而它又有一部分的外壳没有和地连接,则要考核这部分的外壳接触电流。(3) 表面间接触电流:在正常或是单一故障条件下,设备与地无关联任意两点之间的漏电流,电流从设备的一部分流经人体后流入设备的另一部分。模拟人体阻抗网络:模拟人接触装置时的一个等效阻抗网络。即用于模拟人体阻抗,该阻抗

22、是接触电流流过人体实际存在的阻抗的模拟。由于接触电流是指人体接触到产品时流过人体的电流,而人体可以看成是一个阻抗网络,这个阻抗网络由电阻电容通过一定的连接方式组成。等效来看成接触电流就是流过这个阻抗网络的电流,这样我们就可以模拟一个等效的测试环境来对接触电流进行测量。在接触电流的测试过程中有两个关键点:等效的人体阻抗网络和流过这个网络电流的峰值。等效的人体阻抗网络即模拟人体阻抗网络,在国际上通行的比较能模拟真实情况的有7 种,如图2.1所示为其中比较常用的5种模拟人体网络。 图2.1 五种人体模拟阻抗网络2.2接触电流测试仪的工作原理 电器设备接触电流的测量原理是基于流经人体的电流可能引起的效

23、应。按标准要求,采用测量网络来模拟人体的阻抗,通过测量网络上的两个测试端于(AB),在被测试设备上易同时触及的零部件之间和可触及零部件与地之间进行测量。将测取的交流信号送AcDc转换器转换成直流信号,然后经运算放大器放大,以适合接触电流量程换档,精确显示读数的需要,同时将测取的电压信号换算为该测试网络下的电流值,并以电压信号的方式输送到AD转换器,经积分器对输入信号电压和基准电压进行积分等运算控制,最后由数字表头显示被测量值。根据测试过程的需要,本测试仪由单片机系统、测试网络、信号放大与采样保持、精密整流和峰值检波、AD转换、键盘、显示、外围接口电路等部分构成。其工作原理框图如图2.2所示。被

24、测试设备可以根据测量要求,进行端口设定,参数设置,系统设定等操作,而且操作方便读数直观。图2.2 工作原理示意图2.3仪器部分结构和原理2.3.1模拟人体阻抗测试网络由于要对人体的阻抗进行模拟,在进行网络设计时所使用的电阻为无感电阻且较高的热稳定性, 精度在1以内, 电容也使用品质较好的而且精度为1 。该设计该网络用电阻采用的是的无感高功率电阻, 精度为1 , 电容采用是PH I L I P公司的, 精度为1 。对于测量电器设备的接触电流, 用图2.3所示的测量网络表示人体的阻抗, 流入网络中的电流即为接触电流。A、B 端为两个测量端子。图2.3 测试网络电路图除了满足元器件精度要求外, 网络

25、的频率特性在设计也是非常重要的, 只有在一定的频率范围内满足输入输出要求的网络才算是合格的。由于在设计电路时, 电路板走线的长短和方向会对高频信号产生影响, 还有元器件的放置位置也会有影响, 如果设计不当, 当信号频率去到几百千赫兹甚至上兆赫兹时, 信号将出现比较大的衰减。如图2.3.1, 在进行设计时, 通过向该网络输入不同频率的信号, 测量U2的输出值来校验网络的特性。当频率比较低的时候, 还能满足频率特性参数要求, 但U2端的输出值是通过一个RC低通滤波器输出的, 随着输入信号频率的升高(频率超过2OOkHZ), 信号被快速的衰减, 此电路设计不能达到测试网络的特性参数要求。此时要对元件

26、的安装位置及参数进行调整, 并采用其它元件进行补偿,以满足该测试网络的频率特性要求, 见附录表1频率特性参数表。在设计其它网络时也要根据情况进行调整。网络切换的设计上使用单片机进行控制切换, 单片机通过串口与上位机主控程序进行交互,在主控程序中通过按键进行控制选择。2.3.2信号放大在模拟信号达到模数转换器时,为了减少转换误差,要求送入的模拟信号尽可能的大,如采用AD变换器进行模数转换时,在AD输人的范围内,希望输人的模拟信号尽可能达到较大值。然而,当被测参量范围较大时,如果单纯只使用一个放大倍数的放大器,在进行小信号转换时,可能会引入较大的误差,为解决这个问题,仪器通过设置多个放大器的不同放

27、大增益的方法来实现不同幅度信号的放大。如图2.4所示为信号放大电路图。在本仪器中采用单片机的智能技术,实现测试量程的自动切换。单片机根据被检测信号的强弱及测试量程要求自动切换放大器的放大倍数,既简化了手动量程转换操作,又完成了信号的高保真放大,提高了测量精度。图2.4 信号放大电路图2.3.3单片机及其接口AD转换的结果通过数据锁存器、数据缓冲器接口电路送入单片机ATMEGA32内数据存储器RAM,数据采样完毕后,ATMEGA32再从RAM取回数据,进行运算,处理求出最大峰值电流,将结果通过数显电路由液晶显示屏进行显示也可送串行接口连接打印机进行数据打印,并且可以通过RS-232串行口和PC机

28、进行通讯,把所测试结果在Pc机上进行监控、数据采集、数据打印,数据管理。2.3.4 A/D转换器对交流模拟信号进行量化,得到微机可识别的数字信号,这个过程由AD转换器来完成,本仪器采用了的是atmega32单片机其本身就包含AD转换器,能驱动共阳极半导体数码管显示器LED,显示亮度高,接采用频率为10kHz来计算,一个周期采集200个数据,以高速AD对模数波形进行量化, AI)转换准确度士005 士1个字,AD转换速率l 15次s,输入阻抗极高,典型值为1o n,对输入信号无衰减作用,失调温漂luA ,增益温漂5ppm ,电源电压5V,电流18mA。如图2.5所示为A/D转换器电路图。图2.5

29、所示为A/D转换器电路图第三章 仪器硬件设计3.1系统信号输入通道 本仪器采用了两组74HC244芯片作为信号的输入端口,如图3.1引脚图所示是74HC244三态八缓冲器/线驱动器, 74HC244芯片内部共有两个四位三态缓冲器,使用时可分别以1/OE和2/OE作为它们的选通工作信号。当1/OE和2/OE都为低电平时,输出端Y和输入端A状态相同;当1/OE和2/OE都为高电平时,输出呈高阻态。 图3.1 74HC244引脚图和逻辑图输入输出输出控制数据GAYLLHLHLHXZ图3.2 74HC244真值表3.2系统时钟电路如图3.2.1是PCF8583芯片的引脚图,PCF8583是一款时钟/日

30、历集成电路,基于结构为256字8位的2048位静态CMOS RAM。PCF8583的地址和数据通过双线双向的I2C总线串行传输。在数据字节已写或已读后,内置的字地址寄存器将会自动递增。PCF8583地址引脚A0用于编程硬件地址,允许在总线上连接两个器件,而不需其他额外的硬件。PCF8583内置32.768 kHz的晶振电路和RAM中的首8个字节用于时钟/日历和计数功能。紧接的8个字节可被编程用于闹钟寄存器,也可充当自由RAM空间。PCF8583剩余的240字节则是自由RAM区域。其主要特性为:I2C总线接口,工作电压2.5V至6V,时钟工作电压(0 to +70 )1.0V至6.0V,2408

31、位低压RAM,数据保持电压:1.0V至6V,工作电流(FSCL = 0Hz):最大50 mA,带四年日历的时钟功能,带闹钟和溢出指示的多用定时器。图3.3 PCF8583引脚图 系统时钟电路图3.2.2,1,2引脚一个晶振电路,晶振频率为3Mhz,两个电容为1uf,A0引脚接地,SCL和SDA两个引脚接分别接两个数据储存器,从而构成系统的时钟模块。图3.4 系统时钟电路图3.3微型处理器atemga32如图3.3为atemga32引脚图,其具有以下特点:两个具有独立预分频器和比较器功能的8位定时器/ 计数器,一个具有预分频器、比较功能和捕捉功能的16位定时器/ 计数器,具有独立振荡器的实时计数

32、器RTC、四通道PWM、8路10位ADC、8个单端通道、TQFP 封装的7个差分通道,一个具有可编程增益(1x, 10x, 或200x)的差分通道,面向字节的两线接口、可编程的串行USART、可工作于主机/ 从机模式的SPI串行接口,具有独立片内振荡器的可编程看门狗定时器,片内模拟比较器。 32K 字节的系统内可编程Flash(具有同时读写的能力,即RWW),1024 字节 EEPROM,2K 字节 SRAM,32 个通用I/O 口线,32 个通用工作寄存器,用于边界扫描的JTAG 接口,支持片内调试与编程,三个具有比较模式的灵活的定时器/ 计数器(T/C), 片内/ 外中断,可编程串行USA

33、RT,面向字节的两线串行接口,8 路10 位具有可选差分输入级可编程增益(TQFP 封装) 的ADC ,具有片内振荡器的可编程看门狗定时器,一个SPI 串行端口,以及六个可以通过软件进行选择的省电模式。 工作于空闲模式时CPU 停止工作,而USART、两线接口、A/D 转换器、SRAM、T/C、SPI 端口以及中断系统继续工作;掉电模式时晶体振荡器停止振荡,所有功能除了中断和硬件复位之外都停止工作;在省电模式下,异步定时器继续运行,允许用户保持一个时间基准,而其余功能模块处于休眠状态; ADC 噪声抑制模式时终止CPU 和除了异步定时器与ADC 以外所有I/O 模块的工作,以降低ADC 转换时

34、的开关噪声; Standby 模式下只有晶体或谐振振荡器运行,其余功能模块处于休眠状态,使得器件只消耗极少的电流,同时具有快速启动能力;扩展Standby 模式下则允许振荡器和异步定时器继续工作。3.5 微型处理器atemga32引脚图3.4系统按键显示部分显示部分是采用型号TG1365OFEY液晶显示,按键区设置了六个键,如图3.4.1所示,分别为向上、向下、向左、向右、取消、确定六个按键。一个测试状态开关,两个led灯分别表示警报灯和测试灯。图3.6 按键操作区第4章 仪器软件设计4.1主程序设计4.1.1软件设计说明软件设计可以说是接触电流测试仪软件设计的关键,同时也是这次设计的重点。软

35、件设计控制着硬件设计的功能实现,只有实现了软件设计的功能才能实现整个测试仪的功能。系统程序由主程序,中断处理子程序,按键处理程序以及显示子程序等组成。对时间计时采用定时器定时中断产生,没有选择用软件延时的方式,这样不占用CPU的时间。定时器T0产生5 ms定时中断,在中断服务程序中有一个计数器,每产生200次中断,有一个1秒计数。按键扫描采用单个按键的扫描,有相应的按键处理子程序,程序中包括按键去抖动,按键的键后处理,去抖动采用延时去抖法。显示子程序在主程序中被调用对时间进行实时显示。4.1.2主程序流程图及程序主程序流程图如图4.1所示,主要完成系统的初始化,按键扫描,显示程序及其他子程序调

36、用等功能。void main ( void )INT8U i;Init_devices();Initial(); while(1) WDR(); /*外部按键响应*/if( ExtKey_Pressed )ExtKey_Pressed = FALSE;ExtKey_DealWith();/*按键响应*/if( Key_Pressed )Key_Pressed = FALSE;if (AutoPress)AutoPress-; Key_Valu = AutoKeyVal; if (AutoPress)Key_Pressed = TRUE;图4.1主程序流程图if (KeySound)Buzzer

37、_ON(3);Key_DealWith();/*菜单显示*/if (!AutoPress)&(State=STOP)MenuDisp();/*读取时间*/if (tRead8563=40)tRead8563 = 0;GetPCF8563();/ 200ms/*运行测试*/ if ( State = RUN )Control();/ 输出控制DispInit();StateInfo();TestingFace(); / 显示测试界面DispAll();BackLight(); / 背光else if ( State = PAUSE )DispInit();StateInfo();TestingF

38、ace(); / 显示测试界面DispAll();BackLight(); / 背光elseBitMove = 0;CtrlPort = 0;OutPort = 0;CurChanel = 0;Step = STEP_clr;memset(StartTime,0xff,sizeof(StartTime);memset(StopTime ,0xff,sizeof(StopTime );/*测试完成后,检验测试结果是否合格?*/if (Pass=TRUE)Buzzer_ON(1000);/ 1SMessage(600,5); / 合格 3Selse if (Pass=FALSE)Buzzer_ON

39、(2000); / 2SMessage(600,6);/ 不合格 3SPass = 0xff;/* 接收处理*if ( UART_State = TX_Make )TX_Pack( UART_Cmd ); / 形成发送数据else if ( UART_State = RX_Done )RX_Unpack(); / 接收结束后处理接收数据并准备发送内容 else if ( UART_State = RX ) if ( UART_Tx_Req&IO_Ctrl )/ 切换通道 UART_Tx_Req &= IO_Ctrl;UART_Cmd = J;UART_State = TX_Make; else

40、 if ( UART_Tx_Req&AD_Clear )/ 询问接触电流采集值 UART_Tx_Req &= AD_Clear;UART_Cmd = Z;UART_State = TX_Make; else if ( UART_Tx_Req&AD_Quer )/ 询问接触电流采集值 UART_Tx_Req &= AD_Quer;UART_Cmd = Q;UART_State = TX_Make; else if ( UART_Tx_Req&CK_Vset )/ 设定程控电源输出电压 UART_Tx_Req &= CK_Vset;UART_Cmd = v;UART_State = TX_Make

41、; else if ( UART_Tx_Req&CK_Vquer )/ 询问程控电源电压 UART_Tx_Req &= CK_Vquer;UART_Cmd = V;UART_State = TX_Make; else if ( UART_Tx_Req&CK_Aquer )/ 询问程控电源电流 UART_Tx_Req &= CK_Aquer;UART_Cmd = A;UART_State = TX_Make; else if ( UART_Tx_Req&CK_Vout ) / 打开程控电源输出 UART_Tx_Req &= CK_Vout;UART_Cmd = O;UART_State = TX

42、_Make; /*更改时钟*/if ( Modify8563 )for ( i=0; i8; i+ )SetClocki=GetClocki;Modify8563 = FALSE;/*写8563*/if ( Write8563 )SetPCF8563();Write8563 = FALSE;/*保存数据*/if( SignSave )Save();4.2初始化说明4.2.1为什么要初始化一般的情况下是在上电的时候初始化,还有就是程序跑飞和出现异常时也要初始化,初始化的目的就是把所有用到的标志位、变量回到设定的初始值,以及引脚的分配,配置寄存器写入需要的值,像时钟的选择(内部、外部)一般在上电时就做好,以后不是特殊需要是不改动的,引脚功能

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 办公文档 > 其他范文


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号