- 184
- 0
- 约2.35千字
- 约 11页
- 2021-01-10 发布于山东
- 举报
单片机应用系统开发作业
利用中断控制 8 盏灯花样闪烁
学校:沈阳理工大学
专业:信息对抗技术
学号: 1411050121
姓名: 吴志飞
1.系统设计要求:
设晶振频率为 12MHZ,利用中断系统使主程序 P0 口进行
花样显示。显示规律为:
1) P0 口连接 8 个 LED,依次左移闪亮;
2) 当按下 INT1 时, 8 个 LED灯依次右移闪亮;
3) 当按下 INT0 时, 8 个灯闪亮 5 次。
2.系统设计分析:
单片机的最小系统 +8 盏 LED灯+排电阻。
本系统涉及到两个外中断,中断优先级,左移右移等问题。在
设计时可能要设计中断优先级。左移右移需要用到两个移位指令 RL
和 RR。
3.系统原理图设计:
系统所需原件为单片机 AT89C51,瓷片电容 CAP30pf,晶振CRYSTAL12MHZ,电解电容 CAP-ELEC,电阻 RES,发光二极管 LED8只,排电阻 RESPACK-8以及开关 SWITCH。利用中断控制 8 盏 LED灯花样
闪烁的原理图如 1.1 所示。
图 1.1 利用中断制 8 盏 LED灯花样闪烁原理图
系统流程图设计 :
开 始
中断设置
开中断
是否发生中断
Y
中断 0?中断 1?
中断 1
中断 0
调用中断子程序 1
调用中断子程序 0
N
LED左移闪亮
结 束
图 1.2 利用中断控制 8 盏灯花样闪烁流程图
中断子程序 0 中断子程序 1
保护现场 保护现场
LED闪亮 5 次 LED右移闪亮
恢复现场 恢复现场
中断返回 中断返回
系统源程序设计:
汇编源程序:
ORG 0000H
AJMP START
ORG 0003H
AJMP INTR0
ORG 0013H
AJMP INTR1
START:MOV IE,#85H
MOV IP,#01H
MOV TCON,#00H
MOV SP,#60H
MOV P0,#0FFH
MOV P3,#0FFH
MOV A,#0FEH
LP1: MOV P0,A
RL A
LCALL DELAY
SJMP LP1
INTR0:PUSH ACC
PUSH PSW
MOV R1,#10
MOV A,#00H
XH: MOV P0,A
LCALL DELAY
CPL A
DJNZ R1, XH
POP PSW
POP ACC
RETI
INTR1:PUSH ACC
PUSH PSW
MOV A,#7FH
MOV R2,#16
XH1: MOV P0,A
LCALL DELAY
RR A
DJNZ R2, XH1
POP PSW
POP ACC
RETI
DELAY: MOV R7,#20
DELAY1: MOV R6,#20
DELAY2: MOV R5,#248
DJNZ R5,$
DJNZ R6,DELAY2
DJNZ R7,DELAY1
RET
END
C语言源程序:
#includereg51.h
#includeintrins.h
void delay();
#define uint unsigned int
#define uchar unsigned char
uchar temp;
uint i;
void main(void)
{
IE=0X85;
IP=0X01;
TCON=0X00;
temp=0xfe;
while(1)
{
P0=temp;
delay();
temp=_crol_(temp,1);
}
}
void int0() interrupt 0
{ uchar s; s=0x00; for(i=0;i10;i++)
{
P0=s;
delay();
s=~s;
}
}
void int1() interrupt 2
{
uchar temp1;
temp1=0x7f;
while(1)
{
P0=temp1;
delay();
temp1=_cror_(temp1,1);
}
}
void delay()
{
uint i,j;
for(i=0;i256;i++)
for(j=0;j256;j++)
{;}
在 keil 中进行调试:
(1)创建“中断控制 8 盏灯花样闪亮”项目,选择单片机型
号为 AT89C51,汇编源程序,保存为“中断控制 8 盏灯花样闪
亮.ASM”或“中断控制 8 盏灯花样闪亮 .C”。
(2)将源程序添加到项目中。
(3)打开项目菜单,选择 Options for target ’target 1’
选项,点击 output 一项,在 Create HEX File 前打上对勾。
(4)编译源程序,如果有问题,则需要调试修改,若没有错
误,则成功创建“中断控制 8 盏灯花样闪亮 .HEX”文件。
图 1.3 编译成功提示图
在 Proteu
原创力文档

文档评论(0)