安徽建筑工业学院毕业设计(论文)
空间。如果是使用AT89C51或其它内部有程序空间的单片机时,此引脚接成高电平使程序运行时访问内部程序存储器,当程序指针PC值超过片内程序存储器地址(如8051/8751/89C51的PC超过0FFFH)时,将自动转向外部程序存储器继续运行。此外,在将程序代码烧录至8751内部EPROM、89C51内部FALSH时,可以利用此引脚来输入提供编程电压(8751为2lV、AT89C51为12V、8051是由生产厂方一次性加工好)。
XTAL1:接外部晶振的一个引脚。在单片机内部,它是一反相放大器输入端,这个放大器构成了片内振荡器。它采用外部振荡器时,此引脚应接地。
XTAL2:接外部晶振的一个引脚。在片内接至振荡器的反相放大器输出端和内部时钟发生器输入端。当采用外部振荡器时,则此引脚接外部振荡信号的输入。
(3)振荡器特性:
XTAL1和XTAL2分别为反向放大器的输入和输出。该反向放大器可以配置为片内振荡器。石晶振荡和陶瓷振荡均可采用。如采用外部时钟源驱动器件,XTAL2应不接。有余输入至内部时钟信号要通过一个二分频触发器,因此对外部时钟信号的脉宽无任何要求,但必须保证脉冲的高低电平要求的宽度。 (4)芯片擦除:
整个PEROM阵列和三个锁定位的电擦除可通过正确的控制信号组合,并保持ALE管脚处于低电平10ms 来完成。在芯片擦操作中,代码阵列全被写“1”且在任何非空存储字节被重复编程以前,该操作必须被执行。
此外,AT89C51设有稳态逻辑,可以在低到零频率的条件下静态逻辑,支持两种软件可选的掉电模式。在闲置模式下,CPU停止工作。但RAM,定时器,计数器,串口和中断系统仍在工作。在掉电模式下,保存RAM的内容并且冻结振荡器,禁止所用其他芯片功能,直到下一个硬件复位为止。
3.1.2 单片机工作电路
AT89C51单片机有4KB的Flash ROM(闪存)作为内部程序存储器(ROM),因此.用这种芯片构成的最小应用系统简单、可靠。
用AT89C51单片机构成最小应用系统时,只需将单片机接上时钟电路和复位电路即可。
该最小应用系统具有以下特点:
10
安徽建筑工业学院毕业设计(论文)
(1)有可供用户使用的大量I/O线。P0、Pl、P2、P3都可作为用户I/O口用,由于没有外部存储器扩展.EA应接高电平。
(2)内部存储器容量有限.只有4KB的地址空间。
当内部程序存储器不够用时。就需要扩展外部程序存储器。AT89C51单片机内部RAM 容量很小,当单片机需要存放大量数据时.就必须扩展外部数据存储器。此外AT89C51单片机的I/O口数量和功能很有限。也常常要扩展外部接口芯片。在本电路不需要太多的I/O口。且内部程序存储器也够用,所以不用扩展外部数据存储器和外部接口芯片。其电路图如图3.2所示:
图3.2 单片机最小系统图
3.1.3 时钟电路
时钟电路就是产生像时钟一样准确的振荡电路。AT89C51内部有一个用于构成片内振荡器的高增益反相放大器,振荡器产生的信号送到CPU,作为CPU的时钟信号.驱动CPU产生执行指令功能的机器周期。引脚XTAL1和XTAL2是此放大
11
安徽建筑工业学院毕业设计(论文)
器的输入端和输出端。这个放大器与作为反馈元件的片外石英晶体或陶瓷谐振器一起可构成一个自激振荡器。时钟电路的连接如图3.3所示:
图3.3 时钟电路
图中外接石英晶体(或陶瓷谐振器)以及电容C1和C2构成并联谐振电路,接在放大器的反馈回路中。对外接电容C1和C2的值虽然没有严格的要求,但电容的大小多,会影响振荡器频率的高低、振荡器的稳定性、起振圈内部振荡器的接法的快速性和温度稳定性。外接石英晶体时,C1和C2一般取(30pF±10pF);外接陶瓷谐振器时。C1和C2一般取(40pF±10pF)。外接的是石英晶体,所以C1、C2选择标称值30pF。
3.1.4 复位电路
单片机复位是使CPU和系统中的其他功能部件都处在一个确定的初始状态。并从这个状态开始工作。无论是在单片机刚开始接上电源时,还是断电后或者发生故障后都要复位。89系列单片机的复位信号是从RST引脚输入到芯片的施密特触发器中的。当系统处于正常工作状态时,且振荡器稳定后。如果RST引脚有高电平并维持2个机器周期(24个振荡周期).则CPU就可响应并且将系统复位。
复位电路由两部分组成,电容和电阻。当系统通电时VCC 上电压从无到有在RESET处会先处于高电平一段时间,然后由于该点通过电阻接地则RESET该点的电平会逐渐的改变为低电平,从而使得单片机复位口电平从1到0,达到给单片
12
安徽建筑工业学院毕业设计(论文)
机复位的功能。
上电复位:上电瞬间,电容充电电流最大,电容相当于短路,RST端为高电平,自动复位;电容两端的电压达到电源电压时,电容充电电流为零,电容相当于开路,RST端为低电平,程序正常运行。
手动复位:首先经过上电复位,当按下按键时,RST直接与VCC相连,为高电平形成复位,同时电解电容被短路放电;按键松开时,VCC对电容充电,充电电流在电阻上,RST依然为高电平,仍然是复位,充电完成后,电容相当于开路,RST为低电平,正常工作。单片机复位电路图如图3.4所示:
图3.4 复位电路图
3.2 红外遥控模块的电路设计 3.2.1 红外遥控的实现原理
红外遥控的实现主要是如何用程序去分析位0和位1。位0和位1所不同之处就是在高电平脉冲后的低电平脉宽不一样,采用脉宽调制的串行码,以脉宽为0.565ms、间隔0.56ms、周期为1.125ms的组合表示二进制的“0”;以脉宽为0.565ms、间隔1.685ms、周期为2.25ms的组合表示二进制的“1”。
解码的关键也是如何识别“0”和“1”,从位的定义我们可以发现“0”、“1”均以0.56ms的低电平开始,不同的是高电平的宽度不同,“0”为0.56ms,“1”为1.68ms,所以必须根据高电平的宽度区别“0”和“1”。如果从0.56ms低电平过后,开始延时,0.56ms以后,若读到的电平为低,说明该位为“0”,反之则为“1”,
13