基于ATF89S52的单片机硬件电路设计
一、单片机电路
单片机采用ATF89S52
1.时钟电路Xl、C2、C3与单片机内部的反相放大器一起构成时钟振荡电路,采用12MHz晶振,AT89S52的机器周期为12个振荡周期,每个机器周期正好lμs.
2.复位电路Cl、R9构成上电复位电路,S5是手动复位按键。
3.其他AT89S52单片机内部有8k字节FlashROM、256字节RAM,不用外扩程序存储器和数据存储器,因此其EA脚固定接高电平,ALE和:IPSEN脚悬空。
二、电源
由于AT89S52的工作电压为4V~5.5V,而输出驱动的继电器采用9V直流电,故直接采用市售的9V直流稳压电源,再加5V稳压电路组成其电源电路。
三、键盘电路
根据系统要求,需要用按键来完成定时时间输入、定时工作启动等。按键的状态通过与其相连的I/O口送到单片机中,根据所按的键去执行相应的程序。常用的按键电路有矩阵式键盘和独立式按键两种。
1.矩阵式键盘矩阵式键盘如图2所示。矩阵由若干行和若干列组成,按键跨接在行和列之间,而行、列分别接至单片机的I/O口。单片机则通过先将某行置为特定状态,再读取列来获知是否有键按下,逐行设置状态,再读取列,便可知道所按的键的行列位置。
2.独立式按键独立式按键如图3所示。每个按键直接接到单片机的一个I/O口,单片机读取该口可获知按键的状态。
3.多功能定时器的键盘具体到本产品,可以用设置、加、减共3个键来完成16个定时时间的设置和选择,用启动键来启动定时器工作,故只需要4个按键(Sl~S4),分别接至单片机的P1.4~P1.7口。AT89S52的P1口是内部带上拉电阻的准双向口,将P1.4~P1.7置为输人状态,断开时读取相应的口线为高电平,按键按下时为低电平,故不必外接上拉电阻。
四、显示电路
根据系统要求,需要用数码管来显示预置时间及剩余时间。显示时、分、秒共需要6位数码管,显示定时的路数需要1位数码管,而单片机当前的工作状态,则用一只双色发光二极管指示。
1.LED数码管带小数点的LED数码管由8段发光二极管组成,分别定义为a、b、c、d、e、f、g和dp,8段发光二极管的一个同名端接在一起,定义为公共端(com)。根据所接同名端的不同,LED数码管分为共阴和共阳两种,图4为其外形及结构图。要令数码管显示不同的字符,一要分别控制各段的独立端的电平,二要控制公共端,使相应的发光二极管点亮。如要显示“1”,则应使b、c点亮。以共阴数码管为例,应向b、c端送高电平,其余段送低电平,向com端送低电平。我们通常称控制a~g和dp的信号为段码,控制com端的信号为位码。
2.单片机与LED数码管的接口单片机与LED数码管的接口分为静态显示和动态显示两种。静态显示时,数码管的段信号和位信号始终保持不变,在多位显示时,每一位数码管的段信号都需要用锁存器进行锁存。动态显示则采取I/O口分时复用的方式输出数码管的段信号,由位选信号决定某一时刻哪一位数码管显示。由于人眼的视觉暂留效应,只要让多位数码管轮流显示,而同一位数码管每次显示相同的字符,则所看到就是固定的字符串了。
3.多功能定时器的显示电路如图l所示,显示电路由共阴数码管PLL~PL4、达林顿驱动电路UI~N2803A、R卜R8等组成,采用动态显示方式。PLl~PL3分别显示秒、分和时,PL4显示时间段。Po口为数码管的段选输出口。P2.0~P2.6为数码管的位选输出口。由于AT89S52只有4个TTL门的驱动能力,因此需要外接驱动电路。
五、语音电路
语音芯片采用APl840芯片。
单片机的P1.O~P1.3口用于控制语音段的输出。
六、输出驱动电路
输出驱动电路由ULN2803A和继电器K1组成,Kl的触点通过J3引出,可供用户控制相关电器。
七、其他
为了使用户设置的数据在系统断电后能够保持,在电路中还增加了串行E2PROM存储器24C02,用单片机的P3.3~P3.5分别控制其数据的读写。
IC5为一体化的红外接收头,可以接收红外遥控信号。用户也可以采用遥控方式控制定时器的工作。J2是ISP编程口,有了该接口,用户可以通过计算机对电路中的单片机编程。
- Windows CE 进程、线程和内存管理(11-09)
- RedHatLinux新手入门教程(5)(11-12)
- uClinux介绍(11-09)
- openwebmailV1.60安装教学(11-12)
- Linux嵌入式系统开发平台选型探讨(11-09)
- Windows CE 进程、线程和内存管理(二)(11-09)