MAX232的外围电路如
图2-4所示。MAX232的13、14脚(Rli、Tlo)分别接串口的数据发送端、数据输出端,11、12脚(Rlo、Tli)分别接单片机的11、10脚(TXD、RXD)。在1脚和3脚、4脚和6脚、2和16脚、6和15脚以及15和16脚之间分别接1个1uf的电容,即可使芯片正常工作,完成电平转换功能。
3.2.4AT89C52的定时/计数器概述
AT89C52单片机有3个独立的16位定时/计数器,即定时/计数器0(T0),定时/计数器1(T1)和定时/计数器2(T2)。它们都有定时或事件计数功能,可用于定时控制、延时、对外事件计数和检测等场合。
3个16位定时/计数器,其中T0,T1可作16位加1计数器,T2既可作16位加1计数器,也可作减1计数器,每个定时/计数器都可由软件设置为定时工作方式或计数工作方式。
当设置为计数工作方式时,通过引脚T0(P3.4),T1(P3.5),T2(P1.0)对外部脉冲信号计数,当输入脉冲信号从1到0负跳变时,计数器就自动就1。为了确保某个电平在变化之前至少被采样一次,要求电平保持时间至少是一个完整的机器周期。
当设置为定时方式时,AT89C52片内振荡器输出的时钟经12分频或6分频后,作为定时器的计数脉冲。每当来一个时钟下降沿时,定时器T0,T1或T2的数值加1,直至计满溢出为止。
3.2.5LED显示
LED数码管根据LED的接法不同分为共阴和共阳两类,了解LED的这些特性,对编程是很重要的,因为不同类型的数码管,除了它们的硬件电路有差异外,编程方法也是不同的。共阴和共阳极数码管的发光原理是一样的,只是它们的电源极性不同而已。将多只LED的阴极连在一起即为共阴式,而将多只LED的阳极连在一起即为共阳式。以共阴式为例,如把阴极接地,在相应段的阳极接上正电源,该段即会发光。当然,LED的电流通常较小,一般均需在回路中接上限流电阻。假如我们将"b"和"c"段接上正电源,其它端接地或悬空,那么"b"和"c"段发光,此时,数码管显示将显示数字“1”。而将"a"、"b"、"d"、"e"和"g"段都接上正电源,其它引脚悬空,此时数码管将显示“2”。四位共阳数码管管脚图如图3-6。
4KEIL仿真软件及Protel99SE的应用
4.1KEIL51的应用
硬件与软件的设计一般都要分别借助一些软件,如我们通常用作电路设计与制版的Protel,MCS-51程序开发工具KEIL等。
KeilC51uVision2集成开发环境是基于80C51内核的软件开发平台,支持工程建立、程序的编译与链接、软件仿真、硬件仿真、目标代码的生成等功能。KeilC51编译器在产生代码的准确性和效率方面达到了较高的水平。
与大多数集成开发环境类似,KeilC51集成开发环境也是用工程的方法来管理文件,在一个工程文件中源程序(C51程序、汇编程序)、头文件等都可以进行统一管理。
安装运行KEIL51,使用KEIL的开发工具进行项目开发过程,与其他软件开发项目的过程基本上相同:
创建C语言或汇编语言的源程序。
编译或汇编源文件。
纠正源文件中的错误。
从编译器和汇编器连接目标文件。
测试连接的应用程序。
4.2Protel99SE的应用
Protel软件是由澳大利亚的ProtelTechnolgy公司推出的,一直是从事印刷电路板设计的首选软件。在1990年,Protel软件由DOS平台发展到Windos平台,是世界上第一家运行在Windos平台的EDA(电子设计自动化)软件。Protel99SE是由Protel99版本发展而来的,是基于Windos环境下的EDA软件。
Protel99SE主要的功能模块
电路原理图(Schematic)设计模块。该模块主要包括设计原理图的原理图编辑器,用于修改、生成原件符号的元件库编辑器以及各种报表的生成器。
印刷电路板(PCB)设计模块。该模块主要包括用于设计电路板的PCB编辑器,用于PCB自动布线的Route模块。用于修改、生成元件封装的元件封装库编辑器以及各种报表的生成器。
可编程逻辑器件(PLD)设计模块。该模块主要包括具有语法意识的文本编辑器、用于编译和仿真设计结果的PLD模块。
电路仿真(Simulate)模块。该模块主要包括一个功能强大的数/模混合信号电路仿真器,能提供连续的模拟信号和离散的数字信号仿真。
4.3PCB板的设计制作
印制电路板(PCB)是电子产品中电路元件和器件的支撑件.它提供电路元件和器件之间的电气连接,是从原理图到实际产品必经的一道设计工序。PCB设计的好坏对抗干扰能力影响很大。要使电子电路获得最佳性能,元器件的布局及导线的布设是很重要的。为了设计质量好、造价低的PCB.应遵循以下一般原则:
布局(1)首先,要考虑PCB尺寸大小。PCB尺寸过大时,印制线条长,成本也增加;过小,元器件排列太密集,则会增加布线难度,还会引起相邻线的干扰。在确定PCB尺寸后,再确定特殊元件的位置。最后,根据电路的功能单元,对电路的全部元器件进行布局。
(2)某些元器件或导线之间可能有较高的电位差,应加大它们之间的距离,以免放电引出意外短路。带高电压的元器件应尽量布置在调试时手不易触及的地方。
(3)重量超过15g的元器件、应当用支架加以固定,然后焊接。
(4)以每个功能电路的核心元件为中心,围绕它来进行布局。元器件应均匀、整齐、紧凑地排列在PCB上.尽量减少和缩短各元器件之间的引线和连接。
(5)应留出印制扳定位孔及固定支架所占用的位置。
2)布线(1)输入输出端用的导线应尽量避免相邻平行。最好加线间地线,以免发生反馈藕合。
(2)电源线和地线的宽度应尽量的大,一般在2-3mm以上。
(3)PCB布线不可以走成直角,以免产生阻抗突变。
(4)尽量避免使用大面积铜箔,否则,长时间受热时,易发生铜箔膨胀和脱落现象。
3)焊盘焊盘中心孔要比器件引线直径稍大一些。焊盘太大易形成虚焊。焊盘外径D一般不小于(d+1.2)mm,其中d为引线孔径。对高密度的数字电路,焊盘最小直径可取(d+1.0)mm。
5仿真及调试过程
5.1硬件调试过程
本次设计的硬件电路主要由单片机89C58RD+、MAX232和LM386N1的外围电路组成,在调试电路的过程中也碰到了一些问题。(责任编辑:一枝笔写作事务所)