单片机并行I/O口的应用实验
设计性试验
2012年11月7日星期三第三四节课
一、实验目的
1、熟悉Proteus软件和Keil软件的使用方法。
2、熟悉单片机应用电路的设计方法。
3、掌握单片机并行I/O口的直接应用方法。
4、掌握单片机应用程序的设计和调试方法。
二、设计要求
1、用Proteus软件画出电路原理图。,。
2、编写程序:要求LED0至LED7以秒速率循环右移。
3、编写程序:要求LED0至LED7以秒速率循环左移。
4、编写程序:要求在灯移动的同时,蜂鸣器逐位报警。
三、电路原理图
四、实验程序流程框图和程序清单
/***********
(1)LED0~LED7以秒速率循环右移
**************/
ORG 0000H
MAIN: MOV A, #11111110B
LOOP: MOV P1, A ;LED0灯亮,其他全灭
LCALL DELAY1s ;调用1s延时子程序
RL A ;累加器内容循环左移
LJMP LOOP ;继续循环
/***********
1s延时子程序
*******************/
DELAY1s:MOV R7, #0A7H
DL1: MOV R6, #0ABH
DL0: MOV R5, #10H
DJNZ R5, $
DJNZ R6, DL0
DJNZ R7, DL1
NOP
RET
END
/***********
(2)LED0~LED7以秒速率循环左移
**************/
ORG 0000H
MAIN: MOV A, #01111111B
LOOP: MOV P1, A ;LED7灯亮,其他全灭
LCALL DELAY1s ;调用1s延时子程序
RR A ;累加器内容循环右移
LJMP LOOP ;继续循环
/********************
1s延时子程序
**********************/
DELAY1s:MOV R7, #0A7H
DL1: MOV R6, #0ABH
DL0: MOV R5, #10H
DJNZ R5, $
DJNZ R6, DL0
DJNZ R7, DL1
NOP
RET
END
/**********
(3)要求在灯循环移动的同时,蜂鸣器逐位报警
**************/
ORG 0000H
MAIN: MOV A, #11111110B
LOOP: MOV P1, A ;LED0灯亮,其他全灭
CPL ;开蜂鸣器
LCALL DELAY05s ;
SETB ;关蜂鸣器
LCALL DELAY05s ;
RL A ;累加器内容循环左移
LJMP LOOP ;继续循环
/*********
****************/
DELAY05s:MOV R7, #17H
DL1: MOV R6, #98H
DL
实验二并行IO口 来自淘豆网m.daumloan.com转载请标明出处.