P1口转弯灯实验报告

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

P1口转弯灯实验

一、实验目的

了解P1口的使用,学习汇编语言编程方法与调试技巧。 二、实验内容

P1.0开关接5V 时右转弯灯闪亮,P1.1开关接5V 时左转弯灯闪亮,P1.0、P1.1开关同时接5V 或接地时,转弯灯均不闪亮。标志位为1表示现在有灯亮。

四、实验接线图

7047

五、实验步骤

P1.0,P1.1分别接拨动开关JP40的某两位,P1.4~P1.7依次接LED 指示灯JP32的某四位,连续运行本程序;应看到转弯灯正确闪亮,在用单步方式调试本程序时需修改延时子程序(例如可把延时程序第一个字节改成返回指令22H ),

以便观察。

六、实验程序

ORG 0000H

LJMP PX00

ORG 0C30H

PX00: MOV P1, #0FFH ;初始化

PX03: MOVA,P1

MOV B,A

ANL A,#03H

CJNE A, #01H, PX01 ;满足只是P1.0为高条件吗?

JB 00H, PX04 ;闪烁标志位

CLRP1.4

CLR P1.5 ;开右灯

SETB P1.6

SETB P1.7 ;关左灯

MOV R2,#20H

LCALL DELY ;延时

SETB 00H ;置标志位

LJMP PX03 ;继续查状态

PX04: SETB P1.4

SETBP1.5

SETB P1.6 ;关灯

SETB P1.7

MOV R2,#20H

LCALL DELY ;延时

CLR 00H ;清标志位

AJMP PX03 ;继续查状态

PX01: CJNE A,#02H,PX02 ;满足只是P1.1为高条件吗?

JB 01H, PX05 ;判标志位

SETB P1.4

SETB P1.5 ;开左灯

CLR P1.6

CLR P1.7 ;关右灯

MOV R2, #20H ;延时

LCALL DELY

SETB 01H ;置标志位

LJMP PX03 ;继续查状态

PX05: SETB P1.4

SETB P1.5

SETB P1.6 ;关灯

SETB P1.7

MOV R2,#20H

LCALL DELY ;延时

CLR 01H ;清标志位

LJMP PX03 ;继续查状态

PX02: SETB P1.4

SETB P1.5

SETB P1.6 ;关灯

SETB P1.7

LJMP PX03 ;继续

ORG 0213H

DELY: PUSH 02H

DEL2: PUSH 02H

DEL3: PUSH 02H ;延时

DEL4: DJNZ R2, DEL4

POP 02H

DJNZ R2, DEL3

POP 02H

DJNZ R2, DEL2

POP 02H

DJNZ R2, DELY

RET

END

七、实验现象与结论

实验现象:P1.0开关接5V时右转弯灯闪亮,P1.1开关接5V时左转弯灯闪亮,P1.0、P1.1开关同时接5V或接地时,转弯灯均不闪亮。标志位为1表示现在有灯亮。

心得体会:通过本次试验掌握了单片机IO口的应用。能够熟练的操作I/0 口,使其输入输出。进一步了解了延时子程序的编写,以及它在程序中的意义。

相关文档
最新文档