毕业设计--基于单片机的转速测量系统设计 下载本文

内容发布更新时间 : 2024/5/2 10:03:39星期一 下面是文章的全部内容请认真阅读。

3.振荡器特性:

XTAL1和XTAL2分别为反向放大器的输入和输出。该反向放大器可以配置为片内振荡器。石晶振荡和陶瓷振荡均可采用。如采用外部时钟源驱动器件,XTAL2应不接。有余输入至内部时钟信号要通过一个二分频触发器,因此对外部时钟信号的脉宽无任何要求,但必须保证脉冲的高低电平要求的宽度。 4.芯片擦除:

整个PEROM阵列和三个锁定位的电擦除可通过正确的控制信号组合,并保持ALE管脚处于低电平10ms 来完成。在芯片擦操作中,代码阵列全被写“1”且在任何非空存储字节被重复编程以前,该操作必须被执行。

此外,AT89C51设有稳态逻辑,可以在低到零频率的条件下静态逻辑,支持两种软件可选的掉电模式。在闲置模式下,CPU停止工作。但RAM,定时器,计数器,串口和中断系统仍在工作。在掉电模式下,保存RAM的内容并且冻结振荡器,禁止所用其他芯片功能,直到下一个硬件复位为止。

4.4 最小系统的设计 4.4.1复位电路(图4.8):

MCS-51 单片机复位电路是指单片机的初始化操作。单片机启运运行时,都需要先复位,其作用是使CPU和系统中其他部件处于一个确定的初始状态,并从这个状态开始工作。因而,复位是一个很重要的操作方式。但单片机本身是不能自动进行复位的,必须配合相应的外部电路才能实现。

第 16 页 共42页

图4.8复位电路

①复位功能:

复位电路的基本功能是:系统上电时提供复位信号,直至系统电源稳定后,撤销复位信号。为可靠起见,电源稳定后还要经一定的延时才撤销复位信号,以防电源开关或电源插头分-合过程中引起的抖动而影响复位。

单片机的复位是由外部的复位电路来实现的。片内复位电路是复位引脚RST通过一个斯密特触发器与复位电路相连,斯密特触发器用来抑制噪声,它的输出在每个机器周期的S5P2,由复位电路采样一次。复位电路通常采用上电自动复位(如图4.9 (a))和按钮复位(如图4.9(b))两种方式。

图4.9 RC复位电路

第 17 页 共42页

②单片机复位后的状态:

单片机的复位操作使单片机进入初始化状态,其中包括使程序计数器PC=0000H,这表明程序从0000H地址单元开始执行。单片机冷启动后,片内RAM为随机值,运行中的复位操作不改变片内RAM区中的内容,21个特殊功能寄存器复位后的状态为确定值,见表1。

值得指出的是,记住一些特殊功能寄存器复位后的主要状态,对于了解单片机的

初态,减少应用程序中的初始化部分是十分必要的。 说明:表4-1中符号*为随机状态:

表4-1 寄存器复位后状态表 特殊功能寄存器 A B PSW 00H TCON 00H 初始状态 00H 特殊功能寄存器 TMOD 初始状态 00H 00H SP 07H TH0 TL0 00H 00H DPL 00H TH1 00H DPH 00H TL1 00H P0—P3 FFH SBUF 不定 IP ***00000B SCON 00H IE 0**00000B PCON 0********B PSW=00H,表明选寄存器0组为工作寄存器组; SP=07H,表明堆栈指针指向片内RAM 07H字节单元,根据堆栈操作的先加后压法则,第一个被压入的内容写入到08H单元中;Po-P3=FFH,表明已向各端口线写入1,此时,各端口既可用于输入又可用于输出 。IP=×××00000B,表明各个中断源处于低优先级; IE=0××00000B,表明各个中断均被关断; 系统复位是任何微机系统执行的第一步,使整个控制芯片回到默认的硬件状态下。

51单片机的复位是由RESET引脚来控制的,此引脚与高电平相接超过24个振荡周

第 18 页 共42页

期后,51单片机即进入芯片内部复位状态,而且一直在此状态下等待,直到RESET引脚转为低电平后,才检查EA引脚是高电平或低电平,若为高电平则执行芯片内部的程序代码,若为低电平便会执行外部程序。51单片机在系统复位时,将其内部的一些重要寄存器设置为特定的值,至于内部RAM内部的数据则不变。

4.4.2 晶振电路

晶振(图4.10)是晶体振荡器的简称,在电气上它可以等效成一个电容和一个电阻并联再串联一个电容的二端网络,电工学上这个网络有两个谐振点,以频率的高低分其中较低的频率是串联谐振,较高的频率是并联谐振。

AT89C51单片机内部有一个用于构成振荡器的高增益反相放大器。引脚XTAL1和XTAL2分别是此放大器的输入端和输出端。这个放大器与作为反馈元件的片外晶体谐振器一起构成一个自激振荡器。外接晶体谐振器以及电容C1和C2构成并联谐振电路,接在放大器的反馈回路中。对外接电容的值虽然没有严格的要求,但电容的大小会影响震荡器频率的高低、震荡器的稳定性、起振的快速性和温度的稳定性。因此,此系统电路的晶体振荡器的值为12MHz,电容应尽可能的选择陶瓷电容,电容值约为30μF。在焊接刷电路板时,晶体振荡器和电容应尽可能安装得与单片机芯片靠近,以减少寄生电容,更好地保证震荡器稳定和可靠地工作。晶体振荡电路如图3-6:

晶振有一个重要的参数,那就是负载电容值,选择与负载电容值相等的并联电容,就可以得到晶振标称的谐振频率。

第 19 页 共42页

图4.10晶振电路

4.4.3 最小系统的仿真

最小系统的仿真图4.11

图4.11 最小系统的仿真

附最小系统仿真程序如下: #include

sbit LED=P1^0; //定义LED接P1.0口// void Delay () //延时函数// {unsigned char i,j; for(i=255;i>0;i--) for(j=255;j>0;j--); }

void main () {while(1)

{LED=0; // LED灭//

第 20 页 共42页