基于单片机的数字电压表(8)

2019-05-18 21:11

北京化工大学北方学院毕业设计(论文)

第4章 系统调试

基于单片机的数字电压表在组装好以后,便可进入系统的在线(联仿真器)调试,其主要任务是排除样机硬件故障,并完善其硬件结构,试运行所设计的程序,排除程序错误,优化程序结构,使系统达到期望的功能,进而固化软件,使其能够产品化。

第4.1节 硬件调试

单片机应用系统的硬件和软件调试是交叉相互进行的,但通常是先排除样机中明显的硬件故障,尤其是电源故障,才能安全地和仿真器相连,进行综合调试。

4.1.1硬件电路故障及解决方法

(1)错线、开路、短路:由于设计错误和加工过程中的工艺性错误所造成的错线、开路、短路等故障。

解决方法:在画原理图时仔细检查、校正即可解决。

(2)元器件损坏:由于对元器件使用条件的不熟悉以及制作调试过程中操作不当致使器件损坏。

解决方法:在设计过程中要明确各元器件的工作条件,严格按照元器件正常工况下进行操作,损坏的元器件要及时更换,以免损坏其他元件或影响电路功能的实现。

(3)电源故障:设计中存在电源故障,即上电后将造成元器件损坏、无法正常供电,电路不能正常工作。电源的故障包括:电压值不符和设计要求,电源引出线和插座不对应,各档量程选择电路之间的短路,变压器功率不足,内阻大,负载能力差等。

解决方法:电源必须单独调试好以后才能加到系统的各个部件中。当所有部分在该电源作用下都能正常工作,就选用该电源。

4.1.2硬件调试方法

本设计调试过程中所用的调试方法是静态测试:

在样机加电之前,首先用万用表等工具,根据硬件电器原理图和装配图仔细

31

北京化工大学北方学院毕业设计(论文)

检查样机线路的正确性,并核对元器件的型号、规格和安装是否符合要求。应特别注意电源的走线,防止电源之间的短路和极性错误,并重点检查扩展系统总线(地址总线、数据总线和控制总线)是否存在相互间的短路或与其它信号线的短路。第二步是加电后检查各个插件上引脚的电位,仔细测量各点电位是否正常,尤其应注意单片机插座上的各点电位,若出现较高电压值,联机时将会损坏仿真器。第三步是在不加电情况下,除单片机以外,插上所有的元器件,最后用仿真适配器将样机的单片机插座和仿真器的仿真接口相连,为联机调试做准备。

第4.2节 软件调试

4.2.1软件电路故障及解决方法

设计软件部分可能出现这种错误的现象:

(1)当以断点或连续方式运行时,目标系统没有按规定的功能进行操作或什么结果也没有,这是由于程序转移到意外之处或在某处死循环所造成的。

解决方法:这类错误的原因是程序中转移地址计算错误、堆栈溢出、工作寄存器冲突等。在采用实时多任务操作系统时,错误可能在操作系统中,没有完成正确的任务调度操作,也可能在高优先级任务程序中,该任务不释放处理器,使CPU在该任务中死循环。通过对错误程序的修改使其实现预期的功能。

(2)结果不正确

目标系统基本上已经能正常操作,但控制有错误动作或者输出的结果不正确。这类错误大多是由于计算程序中的错误引起的。对于本设计而言,由于采用的是单片机C51语言,在检查程序时,需要按模块一步步查询、修改,直到所有模块都能正常工作,则显示结果会达到预期值。

4.2.2软件调试方法

软件调试所使用的方法有:计算程序的调试方法、I/O处理程序的调试法、综合调试法等。

(1)计算程序的调试方法

计算程序的错误是一种静态的固定的错误,因此主要用单拍或断点运行方式来调试。根据计算程序的功能,事先准备好一组测试数据。调试时,用仿真器的写命令,将数据写入计算程序的参数缓冲单元,然后从计算程序开始运行到结束,

32

北京化工大学北方学院毕业设计(论文)

运行的结果和正确数据比较,如果对有的测试数据进行测试,都没有发生错误,则该计算程序调试成功;如果发现结果不正确,改用单步运行方式,即可检查出错误所在。计算程序的修改视错误性质而定。若是算法错误,那是根本性错误,应重新设计该程序;若是局部的指令有错,修改即可。如果用于测试的数据没有全部覆盖实际计算的原始数据的类型,调试没有发现错误可能在系统运行过程中暴露出来。

(2)I/O处理程序的调试

对于A/D转换一类的I/O处理程序是实时处理程序,因此一般用全速断点运行方式或连续运行方式进行调试。

(3)综合调试

在完成了各个模块程序(或各个任务程序)的调试工作以后,便可进行系统的综合调试。综合调试一般采用全速断点运行方式,这个阶段的主要工作是排除系统中遗留的错误以便提高系统的动态性能和精度。在综合调试的最后阶段,应在目标系统的晶振频率内工作,使系统全速运行目标程序,实现了预定功能技术指标后,便可将软件固化,然后在运行固化的目标程序,成功后目标系统便可脱机运行。一般情况下,这样一个应用系统就算研制成功。

1

第4.3节 本章小结

当一个系统的硬件部分与软件部分全部设计完后,设计工作并没有结束,整个系统能否正常运行需要严格的调试才能确定。调试一般先从硬件部分入手,若系统能够正常的工作,则不需软件调试;否则先确定硬件部分是否出现问题,硬件部分出现问题,先解决硬件故障,待硬件故障解决后,进行软件调试,直至系统能够正常工作为止。

1

摘自周坚《单片机轻松入门》.

33

北京化工大学北方学院毕业设计(论文)

结 论

基于单片机的数字电压表的设计方案有许多种,本次毕业设计只是其中的一种。模数转换器、单片机、数码管等元器件的选型可以千变万化,但作为以单片机为核心的数字电压表的工作原理大同小异。这个相同点就是:先检测到一个模拟电压,如果电压值较小,可以通过放大器适当地将电压信号放大;如果电压值较大,可以通过分压电路将电压信号适当缩小,总之保证处理过的电压信号满足模数转换器的模拟电压输入范围。然后模数转换器转换模拟输入电压,输出与模拟电压对应的数字电压,并将该数字量通过数据总线输入到单片机中。最后单片机通过软件程序处理,得到易于被人们所接受的十进制电压值,并通过数码管显示出来。

硬件电路设计完毕后,软件程序设计同样十分重要。对于通常所用到的单片机,大部分都属于MCS-51系列的或者与其兼容,因此编写程序既可以选用汇编指令,又可以选用单片机C51语言。这两种语言各有千秋,优点和缺点相互补充,根据设计的侧重点,可以选择其中的一种。在本设计中,由于硬件电路较为复杂,为了避免过多地与硬件打交道,并且希望程序具有较好的可读性,易于维护、开发,所以选用了高级语言:C语言,即单片机C51语言。

综上所述,作为一个完整的系统,硬件设计与软件设计都是同样重要的,只有当系统的硬件部分与软件部分都准确无误后,系统才可以正常工作。

34

。。。810P00P01P02P03P04P05P06P07262345678910GND54ACT573WR?1KR48D?R?8.2KR?10KR?90KABCDEFGDP911123D1D2D3D4D5D6D7D8abcdefdpgQ1Q2Q3Q4Q5Q6Q7Q8。30PF11.0592MHZDIODED?R?150PDIODER1210KD?1N4733AD?C?2附 录1

北京化工大学北方学院毕业设计(论文)

35

10KC?CAPR?10KR?10KC?CAPVCCP1.0/T2P1.1/T2EXP1.2P1.3P1.4P1.5P1.6P1.7CSRDWRADC08041P102P113P124P135P146P157P168P17VCC20191817161514131211VCCCLKRDB0DB1DB2DB3DB4DB5DB6DB7CSRDWRCLKININTRVIN+VIN-AGNDVREF/2DGND1CS2RD3WR45678910P2.0/A8P2.1/A9P2.2/A10P2.3/A11P2.4/A12P2.5/A13P2.6/A14P2.7/A15DULAWELAAT89S522122232425262728VCC1

U201WELA11OELEVCCVCC20R11

四位数码管LED1LED2LED3LED412341457P00P01P02P03P04P05P06P07D1D2D3D4D5D6D7D8Q1Q2Q3Q4Q5Q6Q7Q8234567891918171615141312VCCVCC40VCCU191DULA11OELEVCCVCC201918171615141312ABCDEFGDP10GND54ACT573WU24C3119Y718C33XTAL1XTAL2

R47REST1K30PFR49RSTP0.0/AD0P0.1/AD1P0.2/AD2P0.3/AD3P0.4/AD4P0.5/AD5P0.6/AD6P0.7/AD73938373635343332P00P01P02P03P04P05P06P07123456789R?SW-4WAYVCCC3210K931VCCPSEN29ALE3010UFRSTEA/VPPPSENALEC?0.1UR?DIODE100C?0.8UAR?R?90KR?10KR?SW-4WAY1011121314151617P3.0/RxDP3.1/TxDP3.2/INT0P3.3/INT1P3.4/T0P3.5/T1P3.6/WRP3.7/RDOPA336ND?1N4733A20VSS


基于单片机的数字电压表(8).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:网络工程师学习笔记(全)

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: