单片机循环灯控制设计 第2页
硬件电路设计
1.1设计要求
有八个发光二极管,要求第一个闪烁十次后转到下一个继续闪烁,如此循环不止,八个信号灯通过限流电阻,接到I/O口线上,把单片机正确接线包括晶振与看门狗上电复位,+5V电源及地线,编程:单片机上电复位后把接有八个灯的口给置零,编一个100MS的中断子程序,根据你所设定的闪烁时间进行设定产生几次中断开始灯的明灭,每次明灭将30H(自定义,程序开始时清零)加1,查看是否够10,如果到10刚将接灯的I/O口的数送入A,然后再将带进位位右移或左移,然后返回循环就可以了
1.2芯片选取及介绍
1.2.1 8051的主要性能
1、8位微处理器和控制器
2、内含一个一位布尔运算处理器,可直接对数据的位进行操作和运算,特别适用于逻辑控制。
3、内部含有4KB的程序ROM。
4、2个16位的计数/定时器。
5、内部时钟振荡器
6、全双工方式的串行接口(UART)
7、两极中断优先权的6个中断源/5个中断矢量的中断逻辑。
8、哈佛结构的存储器组织,支持高达64K为单周期指令,支持六种寻址方式。
9、最高时钟振荡频率可达12MHZ,大部分指令执行时间为1µs,乘、除指令为4µs。
1.2.2 信号引脚介绍
1、输入/输出口线
~ 口8位双向口线
~ 口8位双向口线
~ 口8位双向口线
~ 口8位双向口线
2、ALE 地址锁存控制信号
在系统扩展时,ALE用于控制把 口输出的底8位地址送入锁存器锁存起来,以实现低位地址和数据的分时传送。此外由于ALE是以六分之一晶振频率的固定频率输出的正脉冲,因此可作为外部时钟或外部定时脉冲使用。
3、 外部程序存储器读选通信号
在读外部ROM时 有效(低电平),以实现外部ROM单元的读操作。
4、 访问程序存储器控制信号
当 信号为低电平时,对ROM的读操作限定在外部程序存储器;而当 信号为高电平时,则对ROM的读操作是从内部程序存储器开始,并可延续至外部程序存储器。
5、RST 复位信号
当输入的复位信号延续2个机器周期以上高电平时即为有效,用以完成单片机的复位操作。
6、XTAL1和XTAL2外接晶体引线端
当使用芯片内部时钟时,此二引线端用于外接石英晶体和微调电容;当使用外部时钟时,用于接外部时钟脉冲信号。
7、VSS地线 VCC+5V 电源
1.2.3 信号引脚的第二功能
由于工艺及标准化等原因,芯片的引脚数目是有限的,例如MCS—51系列芯片引脚数目40条,但单片机为实现其功能所需要的信号数目却远远超过此数,因此就出现了供需矛盾,所以只能“复用”,即给一些信号引脚赋予双重功能。
1、常见的第二功能信号
(1) 口线的第二功能信号
的8条口线都定义有第二功能,详见下表2—1
表2—1 口线的第二功能
(2)EPROM存储器程序固化所需要的信号
有内部EPROM的单片机芯片(例如87C51),为写入程序需提供专门的编程脉冲和编程电源,它们也是由信号引脚以第二功能的形式提供的,即:
编程脉冲: 30脚(ALE/PROG)
编程电压(25V):31脚( / )
(3)备用电源引入
MCS—51单片机的备用电源也是以信号引脚第二功能的方式由9脚(RST/VPD)引入的。当电源发生故障,电压降低到下限值时,备用电源经端向内部RAM提供电压,以保护内部RAM中的信息不丢失。
1.3 硬件连接图取晶振频率6MHZ,则一个机器周期为1us,设待求的计数初值为X,则有:
(216—X)×2×10-6=100×10-3
X=15536
转化为二进制数:0011110010110000,则十六进制为3CB0
有计数初值 TH1=3CH TL1=0B0H
TMOD寄存器初始化 TMOD=10H