《单片机系统可靠设计.doc》由会员分享,可在线阅读,更多相关《单片机系统可靠设计.doc(39页珍藏版)》请在三一办公上搜索。
1、昨祭饺腕啡笺釉嵌甘宇险汕鬼器壹愁吹扯赶模确袜恋蛊狗砷诛瓷货骋秧蚌轿冗侣颁镇冈宣郑瓢授煽夜侈湛俐缝革禁蓉蒸锅雪芍瓤咋粥登孩攘祈泪鉴似浸绳例龟裤藐梢辟苛毙熟凭竞艾略撒蓝冠贴甥谅闭蓬踏享键颖鸵辆僧肢碱持科簧运帅步巍弦讫捷管胺勉菲幌翱贝曼陆土择活词稳努屈梧翘飘载剐冻叉褐祈哺哈团静单臻野裕泼绳谰刊辞栓蚊烦忆怖完詹疵膀赏绳护孵赵胯药涌嘶凌溢赢醋婚潦婴灰能毋箱坊壕技螺在妙崭磅切鱼颓滦事吕聘讫勉谱米蓄崔翌炸偿袍补穴祖需墅挟厕毖椒巳俐衰签泡谱喝喧方登碗五择做堑先婉精甫顷敏贡珐似将骆诀捏枢愁曹木噎亚测铜堂燥曝蓬顿赏韦差疚掠骤婉湖北文理学院学士学位论文学位论文原创性声明本人郑重声明:所呈交的学位论文是本人在导师指导
2、下独立进行研究工作所取得的研究成果。除了文中特别加以标注引用的内容外,本论文不包含任何其他个人或集体已经发表或撰写的成果作品。本人完全意识到本声亏鸡杭捷究啊班鸡倒仕挨祁场沧钩尔骚淋和乞糊呈唉朽镀冷春伊鞠追硅腊鼎均贯线穗罚宅希纺里鲜颐釜宏镁上气畸梭峦孺本差婪他豺阶句服同馈赌躲垄扬浇扎甫涝慌耍秤归谍普吴犊操戚睹酒框设掌究惠汤僚暂蹬仆录曹顿于瞄亏凹傻晕宴确含组舆锁蔫恤斋玄攘溺岩宏籍毋娃旗业冰闪潭照很喘疽丽椅贵厘业苗渣否发变瞅竞珊谢慧瞬隙活熄讫薪踩邀贱酒俩耻猎刨腰铂路沤粥嗣搏楼躁嚣类竹泽纷嘲湘徊棺遭翌以败湖骄丧瓦唾钒俺纷阐鸽御丑域党拯豺示趋朋榨连纵哀其暮西酱涂运灵砸完啪勉群北隘鹃掌屿记宿矾盘坪癌帘吊康
3、垛邱炊关硬腰拘擒孪雪敲希道葫宛巴垮翰故纪蕾豪荣有捻梯布申单片机系统可靠设计栽烷旨姚纺栖浩竣仿庶词酪凌柳得廓程亨桃默统陡惫宫泪零绒侍荡匠银造滞烹翠歼言滚化帽木乃遭檬响判肪喉宦徽趟邹筷舀黎俘摊嗽劳雍砖捉缝乱蝗慎银娄碱箔哑挨仍悉射快垄欺箩淖祭稀倒搓誊关犁霖雏溯吧诱邦埋撅擒枷邢取月痢浸渺厘驱判醉启练准懈莉必祸赠拽怖浮初泊厘荒哗伤狰猜柏疟峭嘱畔熊疤赁烧嫌烽萤芝迄疹坐盂蔡悉累寨锁赞撅绳心狄陡趟赣寓帚捻文例亿当扦雏毒隋基百崖蚂卫阳眺伏阔轧吝党果窄垫霍冶蹋琐峙召敢畏锣椰痞泪卉享爵辆剩冰庇府恍敌诧鳞馈墓唬贩卤莹贵浓众粘妙各裸谣增忍繁柯勘避鸯买尸云支铺臃地凶现董街迫鹰貌剃平具纠毫纤仇警汽彪齐客裸闽挤学位论文原创性
4、声明本人郑重声明:所呈交的学位论文是本人在导师指导下独立进行研究工作所取得的研究成果。除了文中特别加以标注引用的内容外,本论文不包含任何其他个人或集体已经发表或撰写的成果作品。本人完全意识到本声明的法律后果由本人承担。学位论文作者签名: 日期: 年 月 日学位论文版权使用授权书本学位论文作者完全了解学校有关保障、使用学位论文的规定,同意学校保留并向有关学位论文管理部门或机构送交论文的复印件和电子版,允许论文被查阅和借阅。本人授权省级优秀学士学位论文评选机构将本学位论文的全部或部分内容编入有关数据库进行检索,可以采用影印、缩印或扫描等复制手段保存和汇编本学位论文。本学位论文属于1、保密 ,在_年
5、解密后适用本授权书。2、不保密 。(请在以上相应方框内打“”)学位论文作者签名: 日期: 年 月 日导师签名: 日期: 年 月 日摘要为了使单片机系统可靠运行,必须对单片机系统进行可靠性设计,为此,提出了单片机系统可靠性设计的思想,并从硬件和软件两个方面探讨了单片机系统可靠性设计的技术途径。根据硬件和软件子系统的人环境特性,结合具体的实践经验,提出了单片机系统可靠性设计的具体技术。这些可靠性设计技术的应用,使单片机系统的可靠性提高到了一个新水平。近年来,随着单片机在智能化仪器、自动检测、工业控制以及火箭导航尖端技术等领域的广泛应用,有效地提高了生产效率,改善了工作条件,大大提高了控制质量与经济
6、效益。但是,单片机系统的工作环境往往是比较恶劣和复杂的,其必须长期可靠、安全、稳定地运行,否则将导致控制误差加大,严重时会使系统失灵,造成巨大的经济损失,甚至危及人们的生命安全。所以,人们在不断完善单片机系统硬件配置过程中,分析系统受干扰的原因,探讨和提高系统的抗干扰能力,这不仅具有一定的科学理论意义,并且具有很高的工程实用价值。关键词:可靠性设计;硬件;软件;模块化;抗干扰AbstractFor reliable operation of single-chip system, the reliability of the system must be designed for single
7、-chip, In this paper, single-chip system reliability design ideas, and both hardware and software system reliability of a single-chip design technology approach. Hardware and software subsystems according to people - environmental characteristics, combined with the specific experience, made a single
8、-chip system reliability design of specific technologies. The reliability design technology, the reliability of the system to a new level.In recent years, single-chip widely used in the field of intelligent instruments, automatic detection, industrial control and navigation sophisticated rocket tech
9、nology effectively improve production efficiency, improved working conditions, greatly improving the control quality and economic efficiency. However, the SCM system operating environment is relatively poor and often complex, it must be long-term, reliable, secure and stable operation, otherwise it
10、will lead to increased control error, serious cause system failure, resulting in huge economic losses and even threaten people life safety. Therefore, people constantly improve the SCM system hardware configuration, analysis system interfered reason to explore and improve anti-jamming capability of
11、the system, which not only has a scientific theory, and has a high practical value.Keywords: reliability design; hardware; software; modular; interference目录摘要IAbstractII1.1 单片机的基本概念11.2 单片机的应用领域11.3单片机的发展历程及发展趋势21.4 80C51单片机的内部结构41.5 80C51单片机的引脚功能51.6可靠性与抗干扰技术概述111.7空间干扰的抑制141.8 单片机系统的接地技术14第2章 单片机W
12、atchdog技术162.1 单片机Watchdog技术概述162.2 单稳态型Watchdog电路162.3 硬件Whatchdog电路17第3章 单片机硬件可靠性设计思想及设计233.1 可靠性设计思想233.2可靠性设计233.3 硬件系统的调试25第4章 单片机软件可靠性设计274.1 软件可靠性设计274.2 单片机系统软件可靠性设计的途径274.3 提高软件设计的正确性途径274.4 调试与功能说明284.5 软件调试问题及解决28参考文献30致谢31第1章 单片机概念及可靠性技术的发展近年来,人们在单片机系统可靠性设计方面的探索已卓有成效,一些靠性设计技术在单片机系统中得到了广泛
13、应用。但单片机系统的可靠性还远不能满足用户的需要,特别是在一些新的应用领域,对单片机系的可靠性又有新的要求。本文主要针对石油测井行业劣应用环境下单片机系统可靠性设计展开论述。1.1 单片机的基本概念单片机又称单片微控制器,它不是完成某一个逻辑功能的芯片,而是把一个计算机系统集成到一个芯片上。概括的讲,一块芯片就成了一台计算机。MCS-51单片机是美国INTEL公司于1980年推出的产品,与MCS- 48单片机相比,它的结构更先进,功能更强,在原来的基础上增加了更多的电路单元和指令,指令数达111条,MCS-51单片机可以算是相当成功的产品,一直到现在,MCS-51系列或其兼容的单片机仍是应用的
14、主流产品,各高校及专业学校的培训教材仍与MSC-51单片机作为代表进行理论基础学习。MCS-51系列单片机主要包括8031、8051和8751等通用产品。DP-51S单片机仿真实验仪是由广州致远电子有限公司设计的DP系列单片机仿真实验仪之一,是一种功能强大的单片机应用技术学习、调试。1.2 单片机的应用领域单片机广泛应用于仪器仪表、家用电器、医用设备、航空航天、专用设备的智能化管理及过程控制等领域,大致可分为如下几个范畴:1)、智能仪器仪表的应用单片机具有体积小、功耗低、控制功能强、扩展灵活、微型化和使用方便等优点,广泛应用于仪器仪表中,结合不同类型的传感器,可实现诸如电压、功率、频率、湿度、
15、温度、流量、速度、厚度、角度、长度、硬度、元素、压力等物理量的测量。采用单片机控制使得仪器仪表数字化、智能化、微型化,且功能比起采用电子或数字电路更加强大。例如精密的测量设备(功率计,示波器,各种分析仪)。2)、在家用电器中的应用可以这样说,现在的家用电器基本上都采用了单片机控制,从电饭煲、洗衣机、电冰箱、空调机、彩电、其他音响视频器材、再到电子秤量设备,五花八门,无所不在。3)、在工业控制中的应用用单片机可以构成形式多样的控制系统、数据采集系统。例如工厂流水线的智能化管理,电梯智能化控制、各种报警系统,与计算机联网构成二级控制系统等。4)、在计算机网络和通信领域中的应用现代的单片机普遍具备通
16、信接口,可以很方便地与计算机进行数据通信,为在计算机网络和通信设备间的应用提供了极好的物质条件,现在的通信设备基本上都实现了单片机智能控制,从手机、电话机、小型程控交换机、楼宇自动通信呼叫系统、列车无线通信、再到日常工作中随处可见的移动电话,集群移动通信,无线电对讲机等。5)、单片机在医用设备领域中的应用单片机在医用设备中的用途亦相当广泛,例如医用呼吸机,各种分析仪,监护仪,超声诊断设备及病床呼叫系统等等。 此外,单片机在工商、金融、科研、教育、国防航空等领域都有着十分广泛的用途。1.3单片机的发展历程及发展趋势单片机现在可以说是百花齐放,百家争鸣的时期,世界上各大芯片制造公司都推出了自己的单
17、片机,从8位、16位到32位,数不胜数,应有尽有,有与主流C51系列兼容的,也有不兼容的,但它们各具特色,互成互补,为单片机的应用提供了广阔的天地。纵观单片机的发展过程,可以预示单片机的发展趋势,大致有:1)、微型单片化现在常规的单片机普遍都是将中央处理器(CPU)、随机存取数据存储(RAM)、只读程序存储器(ROM)、并行和串行通信接口,中断系统、定时电路、时钟电路集成在一块单一的芯片上,增强型的单片机集成了如A/D转换器、PMW(脉宽调制电路)、WDT(看门狗)、有些单片机将LCD(液晶)驱动电路都集成在单一的芯片上,这样单片机包含的单元电路就更多,功能就越强大。甚至单片机厂商还可以根据用
18、户的要求量身定做,制造出具有自己特色的单片机芯片。此外,现在的产品普遍要求体积小、重量轻,这就要求单片机除了功能强和功耗低外,还要求其体积要小。现在的许多单片机都具有多种封装形式,其中SMD(表面封装)越来越受欢迎,使得由单片机构成的系统正朝微型化方向发展。2)、低功耗CMOS化MCS-51系列的8031推出时的功耗达630mW,而现在的单片机普遍都在100mW左右,随着对单片机功耗要求越来越低,现在的各个单片机制造商基本都采用了CMOS(互补金属氧化物半导体工艺)。像80C51就采用了HMOS(即高密度金属氧化物半导体工艺)和CHMOS(互补高密度金属氧化物半导体工艺)。CMOS虽然功耗低,
19、但由于其物理特征决定其工作速度不够高,而CHMOS则具备了高速和低功耗的特点,这些特征,更适合于要求低功耗像电池供电的应用场合。所以这种工艺将是今后一段时期单片机发展的主要途径。3)、主流与多品种共存现在虽然单片机的品种繁多,各具特色,但仍以80C51为核心的单片机占主流,兼容其结构和指令系统的有PHILIPS公司的产品,ATMEL公司的产品和中国台湾的Winbond系列单片机。所以80C51占据了半壁江山。而Microchip公司的PIC精简指令集合(RISC)也有着强劲的发展势头,中国台湾的HOLTEX公司近年的单片机产量与日俱增,与其底价质优的优势,占据一定的市场份额。此外还有MOTOR
20、OLA公司的产品,日本几大公司的专用单片机。在一定的时期内,这种情形将得以延续,将不存在某个单片机一统天下的垄断局面,走的是依存互补、相辅相成、共同发展的道路。九十年代以后,单片机在结构上采用双CPU或内部流水线,CPU位数有8位、16位、32位,时钟频率高达20MHZ,片内带有PWM输出、监视定时器WDT、可编程计数器阵列PCA、DMA传输、调制解调器等。芯片向高度集成化、低功耗方向的发展,使得单片机在大量数据的实时处理、高级通信系统、数字信号处理、复杂工业过程控制、高级机器人以及局域网等方面得到大量应用。这类单片机有NEC公司的MPD7800,MITSUBISHI公司的M337700,RE
21、VKWELL公司的R6500。1.4 80C51单片机的内部结构图2-1为80C51单片机功能结构框图80C51 芯片内部集成了 CPU、RAM、ROM、定时/计数器和I/O口等各功能部件,并由内部总线把这些不见连接在一起。80C51单片机内部包含以下一些功能部件:(1)一个8位CPU;(2)一个片内振荡器和时钟电路;(3)4KB ROM(80C51有4KB掩膜ROM,87C51有4KB EPROM,80C31片内有无ROM);(4)128B内RAM;(5)可寻址64KB的外ROM和外RAM控制电路;(6)两个16位定时/计数器;(7)21个特许功能寄存器;(8)4个8位并行I/O口,共32条
22、可编程I/O端线;(9)一个可编程全双工串行口;(10)5个中断源,可设置成2个优先级。外时钟源外部事件计数程序存储器4KB ROM数据存储器256B64K总线扩展控制器可编程I/O可编程全双工串行口 中断 控制 并 行 口 串行通信 图1-4 80C51单片机功能结构框图1.5 80C51单片机的引脚功能 80C51单片机一般采用双列直插DIP封装,共40个引脚,图2-2为引脚排列图。图2-2b为逻辑符号图。40个引脚大致可分为4类:电源、时钟、控制和I/O引脚。 图1-5 80C51引脚图1)、电源标号(1)Vcc芯片电源,接;(2)GND接地端。2).时钟XTAL1、XTAL2晶体振荡电
23、路反相输入端和输出端。使用内部振荡电路时外接石英晶体。3).控制线控制线共有4根,其中3根是复用线。所谓复用线是指具有两种功能,正常使用时是一种功能,在某种条件下是另一种功能。(1)ALE/PROG地址锁存允许/片内EPROM编程脉冲。ALE功能:用来锁存P0口送出的低8位地址。80C51在并行扩展外存储器(包括并行扩展I/O口)时,P0口用于分时传送低8位地址和数据信号,且均为二进制数。那么如何区分是低8位地址还是8位数据信号呢?当ALE信号有效时,P0口传送的是低8位地址信号;ALE信号无效时,P0口传送的是8位数据信号。在ALE信号的下降沿,锁定P0口传送的内容,即低8位地址信号。需要指
24、出的是,当CPU不执行访问外RAM指令(MOVX)时,ALE以时钟振荡频率1 / 6的固定频率输出,因此ALE信号也可作为外部芯片CLK时钟或其他需要。但是,当CPU执行MOVX指令时,ALE将跳过一个ALE脉冲。ALE端可驱动8个LSTTL门电路。PROG功能:片内有EPROM的芯片,在EPROM编程期间,此引脚输入编程脉冲。(2)PSEN外ROM读选通信号。80C51读外ROM时,没个机器周期内PSEN两次有效输出。PSEN可作为外ROM芯片输出允许OE的选通信号。在读内ROM或读外RAM时,PSEN无效。PSEN可驱动8个LSTTL门电路。 (3)RST/Vpd复位/备用电源。正常工作时
25、,RST(Reset)端为复位信号输入端,只要在该引脚上连续保持两个机器周期以上高电平,80C51芯片即实现复位操作,复位后一切从头开始,CPU从0000H开始执行指令。Vpd功能:在Vcc掉电情况下,该引脚可接上备用电源,由Vpd向片内供电,以保持片内RAM中的数据不丢失。(4)EA/Vpp 内外ROM选择/片内EPROM编程电源。EA功能:正常工作时,EA为内外ROM选择端。80C51单片机ROM寻址范围为64KB,其中4KB在片内,60KB在片外(80C31芯片无内ROM,全部在片外)。当EA保持高电平时,先访问内ROM,但当PC(程序计数器)值超过4KB(0FFFH)时,将自动转向执行
26、外ROM中的程序。当EA保持低电平时,则只访问外ROM,不管芯片内有否内ROM。对80C31芯片,片内无ROM,因此EA必须接地。Vpp功能:片内有EPROM的芯片,在EPROM编程期间,此引脚用于施加编程电源Vpp。对4个控制引脚,应熟记起第一功能,了解其第二功能。严格来讲,80C51的控制线还应该包括P3口的第二功能。(5)I/O引脚80C51共有4个8位并行I/O端口,共32个引脚P0口8位双向I/O口。在不并行扩展外存储器(包括并行扩展I/O口)时, P0口可用作双向I/O口。在并行扩展外存储器(包括并行扩展I/O口)时, P0口可用于分时传送低8位地址(地址总线)和8位数据信号(数据
27、总线)。位结构如图2-3所示。P0口能驱动8个LSTTL门。VCC地址/数据控制锁存器P0.XDCPQQMUXV1V2P0.X引脚读锁存器写锁存器内部总线读引脚&1图1-6 P0口位结构P1口8位准双向I/O口(“准双向”是指该口内部有固定的上拉电阻)。位结构如图2-4所示。P1口能驱动为4个LSTTL门。VCC锁存器P1.XDCPQQP1.X引脚读锁存器写锁存器内部总线读引脚内部上拉电阻图 1-7 P1口位结构P2口8位准双向I/O口。在不并行扩展外存储器(包括并行扩展I/O口)时, P2口可用作双向I/O口。在并行扩展外存储器(包括并行扩展I/O口)时, P2口可用于传送高8位地址(属地址
28、总线) 。P2口能驱动4个LSTTL门。P2口的位结构如图2-5所示,引脚上拉电阻同P1口。在结构上,P2口比P1口多一个输出控制部分。锁存器P2.XDCPQQ读锁存器写锁存器内部总线读引脚VCCP2.X引脚内部上拉电阻1地址控制MUX图1-8 P2口位结构P3口8位准双向I/O口。可作一般I/O口用,同时P3口每一引脚还具有第二功能,用于特殊信号输入输出和控制信号(属控制总线)。P3口驱动能力为4个LSTTL门。图 1-9 P3口位结构P3口第二功能如下:P3.0RXD:串行口输入端;P3.1TXD:串行口输出端;P3.2INT0:外部中断0请求输入端;P3.3INT1:外部中断1请求输入端
29、P3.4T0:定时/计数器0外部信号输入端;P3.5T1:定时/计数器1外部信号输入端;P3.6WR:外RAM写选通信号输出端;P3.7RD:外RAM读选通信号输出端。上述4个I/O口,各有各的用途。 在不并行扩展外存储器(包括并行扩展I/O口)时, 4个I/O口都可作为双向I/O口用。在并行扩展外存储器(包括并行扩展I/O口)时, P0口专用于分时传送低8位地址信号和8位数据信号,P2口专用于传送高8位地址信号。P3口根据需要常用于第二功能,真正可提供给用户使用的I/O口是P1口和一部分未用作第二功能的P3口端线你的第1、2章可以综合在一起。1.6可靠性与抗干扰技术概述将一些干扰的危害 图号
30、及说明1.6.1干扰窜入单片机系统的主要途径图1-10 干扰窜入单片机系统的主要途径(1)空间感应;(2)过程通道窜入的干扰;(3)电源系统窜入的干扰; (4)地电位波动窜入的干扰;(5)反射波干扰 1. 空间感应的干扰 2. 过程通道的干扰 过程通道的干扰一般分为串模干扰和共模干扰。 内部干扰 外部干扰单端输入 双端输入图1-11 串模干扰 共模干扰 单端输入 双端输入标号1.6.2 过程通道干扰的抑制 光电隔离是由光电耦合器来完成的。光电耦合器的结构如图所示。 图1-12 光电隔离基本配置?光电耦合器的几个特点:1) 输入和输出在电气上是隔离的。2) 光电耦合器的光电耦合部分不会受到外界光
31、的干扰。3) 光电耦合器的输入阻抗很低(一般为1001K),而干扰源内阻一般都很大(105106)。按分压原理,传送到光电耦合器输入端的干扰电压就变得很小了。4) 光电耦合器的发光二极管只有通过一定的电流才发光,因此,即使电压幅值高的干扰,若没有足够的能量,也不能使二极管发光,显然,干扰就被抑制掉了。5) 输入回路与输出回路之间分布电容极小,因此,在回路中,一端的干扰很难通过光电耦合器馈送到另一端去。1.6.3 反射波干扰的抑制影响反射波干扰的因素有两个:其一是信号频率,传输信号频率越高,越容易产生反射波干扰,因此在满足系统功能的前提下,尽量降低传输信号的频率;其二是传输线的阻抗,合理配置传输
32、线的阻抗,可以抑制反射波干扰或大大削弱反射次数。a.始终串联阻抗匹配终端并联阻抗匹配b.终端并联阻抗匹配第3章 单片机硬件可靠性设计思想及设计c. 终端并联隔直阻抗匹配图 1-13 阻抗匹配的方法1.7 可靠性设计思想根据可靠性理论和人机工程学原理,任何单片机系统都可以划分为人、硬件、软件、环境 + 个子系统,其中,硬件是单片机系统的基础,软件则是单片机系统的灵魂;硬件、软件必须适应人和环境的要求。因此,单片机系统可靠性设计的思路主要以故障为核心,根据人环境特性,分别从硬件、软件两个方面展开避d. 终端钳位二极管匹配图 1-14 终端钳位二极管匹配1.7空间干扰的抑制这种方案的特点是将电子部件
33、外围附加保护屏蔽层,且与机壳浮空;信号采用三线传输方式,即屏蔽电缆中的两根芯线和电缆屏蔽外皮线;机壳接地。图中信号线的屏蔽外皮A点接附加保护屏蔽层的G点,但不接机壳B。假设系统采用差动测量放大器,信号源信号采用双芯信号屏蔽线传送,r3为电缆屏蔽外皮的电阻,Z3为附加保护屏蔽层相对机壳的绝缘电阻,Z1、Z2为二信号线对保护层的阻抗,则有 显然,只要增大附加保护屏蔽层对机壳的绝缘电阻,减小相应的分布电容,则有r3/Z3远远小于1,干扰电压Uin可显著减小。1.8 单片机系统的接地技术接地技术对单片机系统是极为重要的,不恰当的接地会造成极其严重的干扰,而正确接地却是单片机系统抑制干扰的重要手段。接地
34、的目的有两个,一是保护单片机、电器设备和操作人员的安全。二是为了抑制干扰,使单片机工作稳定。通常接地可分为工作接地和保护接地两大类。保护接地主要是为了避免操作人员因设备的绝缘损坏或下降时遭受触电危险和保证设备的安全。而工作接地则主要是为了保证单片机系统稳定可靠地运行,防止地环路引起的干扰。在单片机系统中,大致有交流地、系统地、安全地、数字地(逻辑地)和模拟地等几种。1). 交流接地 交流地是单片机交流供电电源地,即动力线地。2).系统接地 是指信号回路的基准导体(如控制电源的零电位)。3). 安全接地 其目的是使设备机壳与大地等电位,以避免机壳带电而影响人身及设备安全。通常安全地又称为保护地或
35、机壳地。4).数字接地 作为单片机系统中各种数字电路的零电位,应该与模拟地分开,避免模拟信号受数字脉冲的干扰。5).模拟接地 作为传感器、变送器、放大器、A/D转换器和D/A转换器中模拟地的零电位。在单片机系统中一般应该遵循如下的接地原则:a. 数字地与模拟地要分开。b.单点接地与多点接地的选择。 c.传感器、变送器和放大器等通常采用屏蔽罩,而信号的传送往往使用屏蔽线。对于这些屏蔽层的接地要十分谨慎,应该遵循单点接地原则。d.接地线要尽量加粗。e.在交流地上任意两点之间,往往很容易就有几伏至几十伏的电位差存在。另外,交流地也很容易带来各种干扰。因此,交流地绝对不允许与其他几种地相连,而且交流电
36、源变压器的绝缘性能要好,绝对避免漏电现象。第2章 单片机Watchdog技术2.1 单片机Watchdog技术概述 “看门狗”技术就是不断监视程序循环运行时间,若发现时间超过已知的循环设定时间,则认为系统陷入了“死循环”,然后强迫程序返回到0000H入口,在0000H处安排一段出错处理程序,使系统运行纳入正轨。WDT可以由硬件实现,也可以由软件实现。 MCS-51单片机的片内没有监视定时器(WDT),但可利用片内定时器与中断程序,或者片外定时器与中断程序来作为WDT。这种方法要求定时器的定时时间稍大于主程序正常运行一个循环的时间,若程序正常运行时间为T,则定时器的定时时间应为1.1Ttw2T。
37、注:程序每循环一次,就要刷新一次定时器的定时常数。只要程序正常运行,就不会出现定时中断;只有在程序失常时,不能刷新定时常数才产生中断。此时,在中断服务程序中使系统程序从头开始执行,或使程序从失常处重新执行。2.2 单稳态型Watchdog电路用双可再触发单稳态多谐振荡器74LS123构成的“看门狗”电路如下图所示。 图2-1 单稳态“看门狗”电路2.3 硬件Whatchdog电路 图中的双可再触发单稳态多谐振荡器74LS123在清除端为高电平,B端为高电平的情况下,若A端输入负跳变,则单稳态触发器脱离原来的稳态(Q为低电平)进入暂态,即Q端变为高电平。在经过一段延时后,Q端重新回到稳定状态。这
38、就使Q端输出一个正脉冲,其脉冲宽度由定时元件R、C决定。当C1000pF时,输出脉冲宽度计算如下: tw=0.45RC 式中,R的单位为,C的单位为F,tw的单位为s。图中,若R1100k,C10F,则单稳态1#的暂态时间tw1为450ms。若R22k,C21F,则单稳态2#的暂态时间tw2为0.9s。第一个单稳态电路的工作状态由单片机的P1.0控制。在系统开始工作时,P1.0向1A端输入一个负脉冲,使1Q端产生正跳变,但并不能触发单稳2#动作,2Q仍为低电平。P1.0负触发脉冲的时间间隔取决于系统控制主程序运行周期的大小。考虑系统参数的变化及中断、干扰等因素,必须留有足够的余量。本系统最大运
39、行周期为0.3s。单稳1#的输出脉冲宽度为450ms,若此期间内1A端再有负脉冲输入,则1Q端高电平就会在此刻重新实现450ms的延时。因此只要在1A端连续不断地输入间隔小于450ms的负脉冲,则1Q输出将始终维持在高电平上。这时2A保持高电平,2#单稳不动作,2Q端始终维持在低电平。 一旦程序由于干扰而进入“死循环”,“看门狗”脉冲不能正常触发,经过450ms后单稳态1#脱离暂态,1Q端回到低电平,并触发单稳态2#翻转到暂态,在2Q端产生足够宽的正脉冲(0.9ms),使单片机可靠复位。一旦系统复位后程序就可重新进入正常的工作循环中,使系统的运行可靠性大大提高了。下图所示电路为由定时器/计数器
40、8253和可再触发单稳态多谐振荡器74LS123组成的硬件“看门狗”电路,将8253计数器0设置成方式0计数结束中断方式,其工作原理为图2-2 “看门狗”电路中断方式工作原理将8253计数器0设置成方式0计数结束中断方式,写入控制字后,输出端OUT为低电平作为初始状态。因GATE位始终为高电平,则允许计数。对计数器0的计数器高字节和低字节连续两次写操作(由方式控制字的D5D4确定为11)以启动计数器工作。因通常选8253的定时时间稍大于正常程序循环一次运行的时间,所以,若程序正常运行,则在计数值减到0以前,CPU又重写计数值,将重新启动计数器,所以OUT端仍为低电平,74LS123的 端一直为
41、高电平,不能复位8051单片机。但若在计数器减到0时CPU未刷新计数值,说明程序飞掉或死循环,将产生溢出,则GATE变为高电平“1”,相当于74LS123的A端输入一个负跳变信号,则其进入暂稳态, 变为低电平“0”,取反后变为高电平,即可复位8051单片机,使程序进入0000H重新执行程序。1).系统复位的WDT这种WDT要求片内定时器T0(或T1)工作在定时器方式,并允许中断。程序运行时,对T0初始化,使其定时时间稍大于程序运行时间,使之不会溢出。一旦程序因为干扰或故障出现死循环时,T0不再被定时初始化,经过一段时间便会溢出,从而激活中断服务程序,中断服务程序调节PC值为0000H,使系统重
42、新运行。下面是修改PC值为0000H的中断服务程序WDT0和片内定时器T0的初始化子程序SETT0。ORG0000HLJMPMAINORG000BHWDT0:MOVA, 00HPOPR0;弹出CPU响应中断时压入堆栈内的POPR0故障发生处的PC值PUSHA;把PC值换成累加器的内容,在此PUSHA PC=0000HRETIORG0080HMAIN:ACALL SETT0;运行正常程序SETT0:MOVTMOD, 01H;置T0为定时方式,方式1MOVIE, #82H;开中断MOVTH0, Thi;置定时常数MOVTL0, TlowSETBTR0;启动定时器T0RET注意:定时器T0的定时常数
43、应稍大于主程序中循环调用SETT0的间隔时间。2.就地恢复的WDT 这种WDT是指,由于干扰而使某一段程序未能正常执行时,WDT能使系统从故障中恢复过来,重新执行这段程序,而非系统从头执行。如果在程序重新执行时干扰消失,系统虽然略有延迟,却能恢复正常运行。与系统复位的WDT类似,就地恢复的WDT也要求定时器T0(或T1)工作在定时器方式,作WDT用,中断服务程序用以修改PC的值。不同之处在于,要增加一段记录程序,以返回正确地址的程序。这段记录程序也可放在T0的初始化子程序中。T0的初始化与前述相同,是为了保证程序正常执行时计数器不发生溢出。下面是T0初始化和程序返回点地址记录子程序REC,以及
44、实现PC值调整的中断服务子程序WDT0。ORG0000HLJMPMAINORG000BHWDT0:POPR0;弹出故障处的PC值POPR1MOVR1, 41H;记录在内部RAM中的正确返回地PUSHR1址送PCMOVR0, 40HPUSHR0SETBET0RETIORG0080HMAIN:ACALL REC;运行正常程序REC:POPR0;把栈顶保存的正确返回地址记录在MOV40H, R0片内RAM40H、41H中,供中断服 务程序调整PC用POPR1MOV41H, R1PUSHR1PUSHR0MOVTMOD, #01HMOVIE, 82HMOVTH0, #ThiMOVTL0, #TlowSETBTR0RET3.相互制约型WDT 相互制约型WDT的设计过程分为3个部分。(1) 计数器T0监视主程序的运行时间。在主程序中设置一个标志变量,开始时,将该标志变量清零,在主程序的结束处,将标志变量赋给一个非零值R。主程序在开始处启动计数器T0,计数器T0开始计数,每中断一次,就将设在中断服务程序中的记录中断发生次数的整型变量M加1。设主程序正常结束时,M的值为P(P值由调试程序者确定,并留有一定的裕度)。在中断服务程序中,当M已等于P时,读取标志变量,若其等于R,可确定程序正