debated-小学英语学习四方法
上海电力学院
单片机实验报告
题 目:
P3.3口输入
P1口输出
院 系: 电自学院
班 级:
学生姓名: 学号:
指导教师:
年月日
一、 实验目的
1、掌握单片机P3口、P1口简单使用。
2、学习延时程序的编写和使用。
二、 实验内容?
1、P3.3口做输入口,外接一脉冲,每输入一个脉冲,P1口按十六进制加一
输出。 2、P1口做输出口,编写程序,使P1口接的8个发光二极管L0—L7按16
进制加一的方式点
亮发光二极管。
三、 实验说明?
1、P1口是准双向口,它作为输
出口时与一般的双向口使用方法相同,由
准双向口结构可知:当P1口作为输入口时,必须先对它置高电
平,使
内部MOS管截止,因内部上拉电阻是20KΩ—40KΩ,故不会对外部
输入产生影响
。若不先对它置高,且原来是低电平,则MOS管导通,
读入的数据不正确。
2、延时子程序的延时计算。
对于延时的程序
DELAY
:MOV R6,#00H
DELAY1:MOV R7,#80H
DJNZ R7,$$
DJNZ R6,DELAY1
查指令表可知MOV、DJNZ指令均需用两个机器周期,而一个机器周期
时间长度为12
6.0MHZ,所以该段指令执行时间为:
(((128+1)×256)+1)×2×(12÷6000000)=132.1ms。
四、 实验原理图
图(1-1)
五、 实验程序框图
主程序:
开 始
P3.3为高吗?
N
P3.3真的为高吗?
Y
Y
延时子程序:
R6设初值FFH
R7设初值FFH
N
延 时
N
R7-1=0否?
Y
R6-1=0否?
N
Y
Y
返 回
P3.3为低吗?
N
图(1-3)
延 时
A+1送P1口
循 环
图(1-2)
六、
实验步骤
1、P3.3用插针连至K1,JU2(P1.0~P1.7)用8芯线连至JL(L0~L7)。
2、调试、运行程序test1中的。
3、开关K1每拨动一次,L0~L7发光二极管按16进制方式加一点亮。
七、实验程序
ORG 0000h
AJMP HA1S
ORG 0030H
HA1S:
MOV A,#00H
HA1S1: JB P3.3,HA1S1
MOV
R2,#20H
LCALL DELAY
JB P3.3,HA1S1
HA1S2: JNB P3.3,HA1S2
MOV R2,#20H
LCALL DELAY
JNB P3.3,HA1S2
INC A
PUSH ACC
MOV P1,A
POP ACC
AJMP HA1S1
DELAY:PUSH 02H
DELAY1: PUSH 02H
DELAY2: PUSH 02H
DELAY3: DJNZ R2,DELAY3
POP 02H
DJNZ R2,DELAY2
POP 02H
DJNZ
R2,DELAY1
POP 02H
DJNZ R2,DELAY
RET
END
八、实验心得
通过本次实验我基本学会了单片机P3口、P
1口简单使用和延时程序的编写
及使用。虽然实验中我也遇到了一些问题,如结果无法显示等,但在老师
的指导、
帮助下,我最后还是完成了本次实验的实验要求。