总结与展望
第4章 实现过程
4.1 安装软件
本设计需要安装Keil编程与调试软件、STC-ISP下载软件和Protel 99 SE画图软件。
4.2 画出原理图
1.图4.1所示为电源电路图:
图4.1 电源电路图
25
C1RP1130pU1X119XTAL1C212M18XTAL230p9RESPACK-82.图4.2所示为秒表电路原理图:
RSTP0.0/AD0P0.1/AD1P0.2/AD2P0.3/AD3P0.4/AD4P0.5/AD5P0.6/AD6P0.7/AD7393837363534333223456789293031PSENALEEAP2.0/A8P2.1/A9P2.2/A10P2.3/A11P2.4/A12P2.5/A13P2.6/A14P2.7/A152122232425262728总结与展望
图4.2 秒表电路原理图
D4LED-BLUELED-BLUE26
D5D6LED-BLUED3D2D1LED-BLUELED-BLUER210k32112345678P3.0/RXDP3.1/TXDP3.2/INT0P3.3/INT1P3.4/T0P3.5/T1P3.6/WRP3.7/RDP1.0P1.1P1.2P1.3P1.4P1.5P1.6P1.71011121314151617U2VCCDQGNDDS18B2023.0LED-BLUEAT89C51C510uVCCR31k复位C4220UFC3104R110k电压输入D7LED-BLUEGND 总结与展望
4.3 所需工具及电子元件
1.所用工具:30W电烙铁1把,数字万用表1个。
2.电子元件:+5V直流电源线1串,开关1个,电阻1KΩ1只,5.1KΩ8只,红色 LED灯1只,30pF瓷片电容两只,12MHZ石英晶振1块,按键2个,STC89C52RC单片机及底座各1块,9012三极管8只,4位共阳极数码显示器2块,12cm×18cm万用板1块,导线若干,焊锡1件,DS1820单总线数字温度计。
4.4 焊接
根据元器件种类和体积以及技术要求将其布局在电路板上的适当位置。可以先从体
积较大的器件开始,如单片机底座、电源稳压器、数码显示管等。待体积较大的元器件布局好之后,小型的电子元器件就可以根据间隙面积灵活布置。元件的装配方式一般有直立式、俯卧式和混合式三种。
①直立式。电阻、电容等都是竖直安装在印刷板上的。这种方式的特点是:在一定的单位面积内可以容纳较多的电子元件,同时元件的排列也比较紧凑。缺点是:元件的引线过长,在一个平面上,欠美观,元器件引脚弯曲,且密度较大,元器件之间容易引脚碰触,可靠性欠佳,且不太适合频率较高的电路采用。
②俯卧式。电阻、电容等都是俯卧式安装在印刷板上的。这样可以明显地降低元件的排列高度,可实现薄形化,同时元器件的引脚也最短,适合于较高工作频率的电路采用,也是目前采用最广泛的一种安装方式。
③混合式。为了适应各种不同条件的要求或某些位置受面积所限,在一块印刷电路板上,有的元器件则采用俯卧式。这受到电路结构各式以及机壳内尺寸的限制,同时灵活处理。
元器件配置布局应考虑的因素:
①电路板是矩形,元件排列的长度方向一般应与电路板的长边平行,这样不但可以提高元件的装配好的印刷电路板更美观。
②应尽可能地缩短元件及元件之间的引线。尽量避免电路板上的导线的交叉,设法减小它们的分布电容和互相之间的电磁干扰,以提高系统工作的可靠性。
③应以功能电路的核心器件为中心,外围元件围绕它进行布局。
④要注意各种门电路多余的处理,或接电源端或接地端,并按照正确的 方法实现不同逻辑门的组合转换。
⑤元器件的配置和布局应有利于设备的装配、检查、高度和维修。 元器件焊接注意事项:
焊接前务必认准元件数值,会认元件上的标识和会用数字多用表测试。焊接时速度
27
总结与展望
要快,电烙铁不可长时间停留在电路板和元件的焊脚上。特别是晶振、发光二极管电容、三极管等元件,时间过长容易导致元器件损坏。当初板子做好以后,我一口气就把所有的元件焊上去了,这样对于没有调试过的板子,就很难找到原因。所以焊接的顺序很重要,应该是应该按功能划分的器件进行焊接,顺序是功能部件的焊接然后调试再另一功能部件的焊接,这样容易找到问题的所在。下图4.3所示为焊接的硬件实物图:
图4.3 焊接的硬件实物图
4.5 软件调试和硬件调试
4.5.1 软件调试
单片机应用系统的调试包括硬件和软件两部分,但是他们并不能完全分开。先说一个概念:软件调试,在企业程序设计里(把企业商务类型的软件开发叫企业程序设计,
28
总结与展望
把单片机与驱动程序这样接触底层汇编与硬件相关的程序设计叫底层程序设计),软件调试一般都用来跟踪变量的赋值过程,以及查看内存堆栈的内容,查看这些内容的目的在于观察变量的赋值过程与赋值情况从而达到调试的目的。由于企业程序的宿主就是开发它的计算机本身,因此企业程序设计比起底层程序设计,特别是单片机的程序设计调试来的更直观,调试也更方便。
单片机的程序设计调试分为两种,一种是使用软件模拟调试,意思就是用开发单片机程序的计算机去模拟单片机的指令执行,并虚拟单片机片内资源,从而实现调试的目的,但是软件调试存在一些问题,如计算机本身是多任务系统,划分执行时间片是由操作系统本身完成的,无法得到控制,这样就无法时时的模拟单片机的执行时序,也就是说 ,不可能像真正的单片机运行环境那样执行的指令在同样一个时间能完成(往往要完成的比单片机慢)。为了解决软件调试的问题,第二种是硬件调试,硬件调试其实也需要计算机软件的配合,大致过程是这样的:计算机软件把编译好的程序通过串行口、并行口或者USB口传输到硬件调试设备中(这个设备叫仿真器),仿真器仿真全部的单片机资源(所有的单片机接口,并且有真实的引脚输出),仿真器可以接入实际的电路中,然后与单片机一样执行。同时,仿真器也会返回单片机内部内存与时序等情况给计算机的辅助软件,这样,就可以在软件里看到真实的执行情况。不仅如此,还可以通过计算机软件实现单步、全速、运行到光标的常规调试手段。 总结一下两者的不同与相同: 相同点:
1:都可以检测单片机执行时序下的片内资源情况(如R0-R7 、PC计数器等) 2:可以实现断点、全速、单步、运行到光标等常规调试手段。 不同点:
1:软件调试无法实现直接连接硬件电路的调试,只能通过软件窗口虚拟硬件端口的电平输出情况而仿真器可以实现与单片机一样的功能的硬件连接,从某种意义上说这个时候仿真器就是一个单片机。
2:软件调试执行单片机指令的时间无法与真实的单片机执行时间画上等号,也就是说如果一个程序在单片机中要执行300us,可能在计算机中执行的时间可能会比这个长很多,而且无法预料。仿真器则是完全与单片机相同。
3:软件调试只能是一种初步的,小型工程的调试,比如一个只有几百上千行的代码的程序,软件调试能很好的完成,如果是一个协调系统,可能还需要借助几个单片机仿真器和相关的仪器才能解决。
4:软件仿真不需要额外花钱,而硬件需要,一个仿真器一般都上千元,同时可以仿真许多种单片机的工作。
最后,调试一般都是在发生错误与意外的情况下使用的,如果程序能正常执行调试
29