桂林电子工业学院毕业设计(论文)报告用纸 第 9 页 共 46 页
9.两个16位定时器/计数器 10.5个中断源 11.可编程串行通道 12.低功耗的闲置和掉电模式 13.片内振荡器和时钟电路 3.管脚说明:
——VCC:供电电压。 ——GND:接地。
——P0口:P0口为一个8位漏级开路双向I/O口,每脚可吸收8TTL门电流。当P1口的管脚第一次写1时,被定义为高阻输入。P0能够用于外部程序数据存储器,它可以被定义为数据/地址的第八位。在FIASH编程时,P0 口作为原码输入口,当FIASH进行校验时,P0输出原码,此时P0外部必须被拉高。
——P1口:P1口是一个内部提供上拉电阻的8位双向I/O口,P1口缓冲器能接收输出4TTL门电流。P1口管脚写入1后,被内部上拉为高,可用作输入,P1口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。在FLASH编程和校验时,P1口作为第八位地址接收。
——P2口:P2口为一个内部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出4个TTL门电流,当P2口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入。并因此作为输入时,P2口的管脚被外部拉低,将输出电流。这是由于内部上拉的缘故。P2口当用于外部程序存储器或16位地址外部数据存储器进行存取时,P2口输出地址的高八位。在给出地址“1”时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时,P2口输出其特殊功能寄存器的内容。P2口在FLASH编程和校验时接收高八位地址信号和控制信号。
——P3口:P3口管脚是8个带内部上拉电阻的双向I/O口,可接收输出4个TTL 门电流。当P3口写入“1”后,它们被内部上拉为高电平,并用作输入。作为输入,由 于外部下拉为低电平,P3口将输出电流(ILL)这是由于上拉的缘故。
P3口也可作为AT89C51的一些特殊功能口,如下表2-1所示:
口管脚 P3.0 P3.1 P3.2 P3.3 P3.4 P3.5 备选功能 RXD(串行输入口) TXD(串行输出口) /INT0(外部中断0) /INT1(外部中断1) T0(记时器0外部输入) T1(记时器1外部输入) 9
桂林电子工业学院毕业设计(论文)报告用纸 第 10 页 共 46 页
P3.6 P3.7 /WR(外部数据存储器写选通) /RD(外部数据存储器读选通) P3口同时为闪烁编程和编程校验接收一些控制信号。
——RST:复位输入。当振荡器复位器件时,要保持RST脚两个机器周期的高电平时间.
——ALE/PROG:当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的地位字节。在FLASH编程期间,此引脚用于输入编程脉冲。在平时,ALE端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的1/6。因此它可用作对外部输出的脉冲或用于定时目的。然而要注意的是:每当用作外部数据存储器时,将跳过一个ALE脉冲。如想禁止ALE的输出可在SFR8EH地址上置0。此时, ALE只有在执行MOVX,MOVC指令是ALE才起作用。另外,该引脚被略微拉高。如果微处理器在外部执行状态ALE禁止,置位无效。
——/PSEN:外部程序存储器的选通信号。在由外部程序存储器取指期间,每个机器周期两次/PSEN有效。但在访问外部数据存储器时,这两次有效的/PSEN信号将不出现。
——/EA/VPP:当/EA保持低电平时,则在此期间外部程序存储器(0000H-FFFFH),不管是否有内部程序存储器。注意加密方式1时,/EA将内部锁定为RESET;当/EA端保持高电平时,此间内部程序存储器。在FLASH编程期间,此引脚也用于施加12V编程电源(VPP)。
——XTAL1:反向振荡放大器的输入及内部时钟工作电路的输入。 ——XTAL2:来自反向振荡器的输出。 2.4.2 什么是单片机系统
单片机系统的基本结构框图如图4所示。从图中可以看出,对于一个典型的单片机系统而言,主要由单片机、晶振和复位电路、输入控制电路、输出显示电路以及外围功能器件5个部分组成。
除了上文中介绍过的单片机外,单片机系统中的其他4个部分的主要作用和器件如下。
⑴晶振和复位电路:单片机系统的必要组成部分,控制单片机的机器周期和功能复位。
⑵输入控制:是指在一定要求下,采取何种形式的控制方式来实现单片机不同功能的转换,以及控制指令以何种方式传送到单片机。常用的输入控制方法有按键、矩阵键盘、串行通信等方式。
10
桂林电子工业学院毕业设计(论文)报告用纸 第 11 页 共 46 页
晶振、复位电路 输入控制 单片机 输出显示 外围功能器 图4 单片机系统的基本组成
⑶输出显示:是指单片机将需要显示的数据发送到LED、液晶等显示模块,并控制LED等显示模块按照一定的格式显示的功能。此外,输出对象还有电机、传感器等特殊的功能器件。
⑷外围功能器件:单片机只是控制器件,对应与一定的设计要求,需要加入特定功能的器件。例如外部存储器,单片机通过对外部存储器的读写操作,完成对数据的存储器的读写操作,完成对数据的存储和读取,从而扩展单片机的存储单元和数据。此外,常用的外围器件还有A/D、D/A、74LS07门电路以及特定功能的传感器等。
单片机的最简单系统是指单片机能正常工作所必须的外围元件,主要由单片机、晶振电路和复位电路构成。而输入/输出部分则通过单片机的I/O口实现。 2.4.3 单片机系统的应用
单片机的应用十分广泛,在工业控制领域、家电产品、智能化仪器仪表、计算机外部设备,特别是机电一体化产品中,都有重要的用途。其主要的用途可以分为以下方面。
● 显示:通过单片机控制发光二极管或是液晶,显示特定的图形和字符。 ● 机电控制:用单片机控制机电产品做定时或定向的动作。
● 检测:通过单片机和传感器的联合使用,用来检测产品或者工况的意外发生。 ● 通信:通过RS-232串行通信或者是USB通信,传输数据和信号。 ● 科学计算:用来实现简单的算法。
那么单片机是不是解决上述应用的惟一选择呢?当然不是!目前,在自动控制中,一般有3种选择,分别是嵌入式微机、DSP和单片机,他们的性能比较如表2-2所示。
表2-2 嵌入式微机、DSP、单片机性能比较 指标 运算速度 信息处理量 嵌入式微机 一般 大 DSP 快 大 单片机 慢 小 11
桂林电子工业学院毕业设计(论文)报告用纸 第 12 页 共 46 页
体积和重量 系统集成度 开发成本 典型器件 大 高 适中 SUPERDX型嵌入式模块 小 一般 高 DSP-56800 TMS320C54X 小 低 低 MCS-51 MCS-98 单片机最明显的优点是价格便宜,从几元人民币到几十元人民币。这是因为这类芯片的生产量很大,技术也很成熟。
其次,单片机的体积也远小于其他两种方案。单片机本身一般用40脚封装,当然功能多一些的单片机也有引脚比较多的,如68引脚,功能少的只有10多个或20多个引脚,有的甚至只有8只引脚。
当然,单片机无论在速度还是容量方面都远小于其他两种方案,但是实际上工作中并不是任何需要计算机的场合都要求计算机有很高的性能。例如,控制电冰箱温度的控制器就不需要使用嵌入式系统,用一片51就可以轻松实现。所以应用的关键是看是否够用,是否有很好的性能价格比。51系列的单片机已经面世十多年,依然没有被淘汰,还在不断的发展中,这就说明是它有广阔的应用前景。 2.5 部分电路功能 2.5.1 晶振电路
简单地说,没有晶振,就没有时钟周期,没有时钟周期,就无法执行程序代码,单片机就无法工作。
单片机工作时,是一条一条地从ROM中取指令,然后一步一步地执行。单片机访问一次存储器的时间,称之为一个机器周期,这是一个时间基准。一个机器周期包括12个时钟周期。如果一个单片机选择了12MHz晶振,它的时钟周期是1/12us,它的一个机器周期是12*(1/12)us,也就是1us。
MCS-51单片机的所有指令中,有一些完成得比较快,只要一个机器周期就行了,有一些完成得比较慢,得要2个机器周期,还有两条指令要4个机器周期才行。为了衡量指令执行时间的长短,又引入一个新的概念:指令周期。所谓指令周期就是指执行一条指令的时间。
例如,当需要计算DJNZ指令完成所需要的时间时,首先必须要知道晶振的频率,设所用晶振为12MHZ,则一个机器周期就是1us。而DJNZ指令是双周期指令,所以执行一次要2us。如果该指令需要执行500次,正好1000us,也就是1ms。
机器周期不仅对于指令执行有着重要的意义,而且机器周期也是单片机定时器和计数器的时间基准。例如一个单片机选择了12MHz晶振,那么当定时器的数值加1时,实际经过的时间就是1us,这就是单片机的定时原理。 1、晶振的选择
12