当前位置:文档之家› 实验三单片机IO口控制实验

实验三单片机IO口控制实验

实验三单片机I/O口控制实验
一、实验目的
利用单片机的P1口作I/O口,学会利用P1口作为输入和输出口。

二、实验设备及器件
PC机一台
单片机仿真器、编程器、实验仪三合一综合开发平台一台
三、实验内容
1.编写一段程序,用P1口作为控制端口,使D1区的LED轮流亮。

2.编写一段程序,用P1.0~P1.6口控制LED,P1.7控制LED的亮和灭(P1.7接按键,按下时LED亮,不按时LED灭)。

四、实验要求
学会使用单片机的P1口作为I/O口,如果有时间用户也可以利用P3口作I/O口来做该试验。

五、实验步骤
1.用导线把A2区的J61接口与D1区的J52接口相连。

原理如图所示。

2.先编写一个延时程序。

3.将LED轮流亮的程序编写完整并使用TKStudy ICE仿真器调试运行。

4.使用导线把A2区的J61接口的P1.0~P1.6与D1区的J52接口的LED1~LED7相连,另外A2区J61接口的P1.7与D1区的J53的KEY1相连。

原理如上图所示。

5.编写P1.7控制LED的程序,并调试运行。

(按下K1看是否全亮)
6.A2区J61接口的P1.7与D1区的J54的SW1相连。

然后再使用TKStudy ICE仿真器运行程序,查看结果。

六、实验预习要求
仔细阅读实验箱介绍中的各个接口内容,理解该实验的硬件结构。

还可以先把程序编好,然后在Keil C51环境下进行软件仿真。

七、实验参考程序
程序1:
ORG 0000H
LJMP Main
ORG 0100H
Main: MOV A,#0FFH
CLR C MainLoop:
CALL Delay
RLC A
MOV P1,A
SJMP MainLoop Delay:
MOV R7, #0 Loop:
MOV R6, #0
DJNZ R6, $
DJNZ R6, $
DJNZ R6, $
DJNZ R7, Loop
RET
END
程序2:
ORG 0000H
LJMP Main
ORG 0100H
Main: JB P1.7,SETLED CLRLED:
CLR P1.0
CLR P1.1
CLR P1.2
CLR P1.3
CLR P1.4
CLR P1.5
CLR P1.6
SJMP Main SETLED:
SETB P1.0
SETB P1.1
SETB P1.2
SETB P1.3
SETB P1.4
SETB P1.5
SETB P1.6
SJMP Main
END
八、实验思考题
(1)请同学们思考一下,还可以用哪些其它的方法编程能够实现以上功能。

(2)请思考,第二个程序中如果使用KEY1作为外部中断控制LED的亮和灭时,程序应如何修改。

相关主题