【单片机】实验一 I/O口输出控制实验
一、实验目的
1.熟悉PROTEUS单片机仿真软件的使用。
2. 熟悉Keil C51软件的使用
3.掌握单片机I/O口输出的控制方法。
二、实验设备(仪器)
PC 微机一台
三、实验内容
1.按照Keil C51 集成开发环境的要求,建立一段程序,然后进行编译并进行软件仿真。
2.输入实验例程,利用P1口作为输出控制端口,控制8位LED流水闪烁。
四、实验步骤
图3.1实验线路图
1.单片机I/O 接口的原理如图3.1所示。从图中可以看出,当单片机P1口某位为低电平时,对应的LED会亮,反之熄灭。
2.打开Keil C51 集成开发环境,建立一个工程并输入相应程序.
3.输入以下程序并进行编译、调试,观察、分析现象,说明P1 口的赋值与LED 亮灭的关系,在空白部分填加注释。
四.实验程序
实验仿真结果
输入以下程序并进行编译、调试,观察、分析现象,说明P1 口的赋值与LED 亮灭的关系,在空白部分填加注释。
ORG 0000H
LJMP Main
ORG 00F0H
Main:
Loop: MOV P1,#0FEH
ACALL DELAY
MOV P1,#0FDH ;#立即寻址,将0FDH传送到P1中,11111101, P1.1为低电平 LED 灯亮
ACALL DELAY ;#调用延时子程序
MOV P1,#0FBH
ACALL DELAY
MOV P1,#0F7H
ACALL DELAY
MOV P1,#0EFH
ACALL DELAY
MOV P1,#0DFH
ACALL DELAY
MOV P1,#0BFH
ACALL DELAY
MOV P1,#07FH
ACALL DELAY
SJMP LOOP
DELAY: MOV R1,#10
DEL1: MOV R2,#200
DEL2: MOV R3,#126
DEL3: DJNZ R3,DEL3 ; #R3作减法计数器,每次减一,不为0就转走,即此循环等待,R3不为0,继续等待,直到R3=0结束循环,往下执行
DJNZ R2,DEL2
DJNZ R1,DEL1
RET
END
思考题:请思考并描述调试工具中单步调试、运行、步入、步出的区别。
单步执行:每次只运行一行的代码。
步入:如果碰到这一行的代码是函数,就进入函数体里面继续运行。
步出:如果碰到一行代码是一个函数,就把它理解为一个单独的指令,直接全部执行完