51单片机的最小化应用系统
3、接着我们给单片机加一个指示灯。我们在单片机P1.7(8脚)上接一个发光二极管,这样就可以用来做单片机驱动发光二极管的简单实验了,图中发光二极管负极对单片机引脚P1.7之间串接了一个560欧姆的限流电阻,防止发光二极管和单片机的引脚P1.7因为电流过大烧坏,使发光二极管和单片机都工作在安全状态。
4、控制引脚EA接法。EA/VPP(31脚)为内外程序存储器选择控制引脚,当EA为低电位时,单片机从外部程序存储器取指令;当EA接高电平时,单片机从内部程序存储器取指令。。。AT89S51单片机内部有4KB可反复擦写1000次以上的程序存储器,因此我们把EA接到+5V高电平,让单片机运行内部的程序,我们就可以通过反复烧写来验证我们的程序了。
5、复位电路:在复位引脚(9脚)脚持续出现24个振荡器脉冲周期(即2个机器周期)的高电平信号将使单片机复位。如下图所示电容C和电阻R构成了单片机上电自动复位电路,复位后,单片机从0000H单元开始执行程序,并初始化一些专用寄存器为复位状态值,受影响的专用寄存器如下表所示:
寄存器 | 状态 | 寄存器 | 状态 |
---|---|---|---|
PC | 0000H | TCON | 00H |
ACC | 00H | TL0 | 00H |
PSW | 00H | TH0 | 00H |
SP | 07H | TL1 | 00H |
DPTR | 0000H | TH1 | 00H |
P0 -- P3 | FFH | SCON | 00H |
IP | xxx00000H | SBUF | 不确定 |
IE | 0xx00000H | PCON | 0xxx0000H |
TMOD | 00H |
至此,我们完成了51单片机的最小化应用系统的连接,只要正确的烧写程序,并接上+5V电源就可以了,单片机剩下的其他可以不接线悬空。
下面我们来写一个驱动发光二极管闪烁的程序,这是很简单的事情,只需要以一定的世界间隔,给p1.7高电平,然后低电平,如此重复,我们就看到了发光2极管在闪烁,程序如下:
完整的源程序如下:
;******** 51单片机的最小化应用系统主程序 ********
MAIN: CLR P1.7 ;主程序开始,P1.7输出低电平"0",让点亮发光二极管
ACALL DELAY ;调用延时子程序延时一段时间,让发光二极管亮一段时间
SETB P1.7 ;P1.7输出高电平"1",熄灭发光二极管
ACALL DELAY ;调用延时子程序延时一段时间,让发光二极管熄灭一段时间
AJMP MAIN ;跳转到程序开头重复执行
;******** 51单片机的最小化应用系统延时子程序 ********
DELAY: MOV R7,#255
Y1: MOV R6,#255
DJNZ R6,$
DJNZ R7,Y1
RET ;延时子程序返回
END ;程序结束
评论