51单片机实验及代码

loading 分享 2026-8-21 下载文档

单片机实验

实验一:开发环境的应用

(1)将数据存储器的40H-4FH的内容复制成00H-0FH,并将40H-4FH的内容整体复制到外部数据存储器的1050H-105FH. (2)P1口接八只二极管,使二极管逐个循环点亮

ORG 0000H AJMP START ORG 0100H START:

MOV A,#00H

MOV R0,#40H

LOOP:

MOV @R0,A

SECOND:

MOV DPTR,#1050H

MOV R1,#40H INC A INC R0

CJNE A,#10H,LOOP

COPY:

MOV A,@R1

MOVX @DPTR,A INC DPTR INC R1

CJNE R1,#50H,COPY SJMP $ END

实验二:外部中断

(1)用单脉冲信号申请中断,在中断服务程序中对输出信号进行翻转(可通过P1.0接一二极管观察)

ORG 0000H LJMP START ORG 0003H LJMP INT ORG 0100H START:

SETB EX0

SETB PX0 SETB IT0 SETB EA SJMP $

INT:

CPL P1.0

RETI

END

(2)用单脉冲信号申请中断,要求对中断进行累加计数,并将计数结果显示在二极管上

ORG 0000H LJMP START ORG 0003H LJMP INT ORG 0100H START:

MOV A,#00H MOV P1,A SETB EX0 SETB PX0 SETB IT0 SETB EA SJMP $ INT:

MOV P1,A INC A RETI

END

实验三:定时器实验

(1)用定时器1的方式1定时,P1.0节发光二极管,使二极管每秒闪烁五次

ORG 0000H LJMP MAIN ORG 001BH LJMP INT ORG 0100H MAIN:

MOV TMOD,#10H MOV TH1,#3CH

MOV TL1,#0B0H MOV R2,#2 SETB EA SETB ET1 SETB TR1 SJMP $ INT:

DJNZ R2,NEXT CPL P1.0 MOV R2,#2 NEXT:

MOV TH1,#3CH

50ms × 2 = 100ms ; MOV TL1,#0B0H SETB TR1 RETI END

(2)用定时器1的方式2计数,T1引脚接单脉冲,用P1口接二极管显示计数。

ORG 0000H LJMP MAIN ORG 001BH LJMP LOOP ORG 0100H MAIN:

MOV TMOD,#60H MOV TH1,#00H MOV TL1,#00H SETB EA SETB ET1 SETB TF1 SETB TR1 SJMP $ LOOP:

MOV P1,TL1 LJMP LOOP RETI


51单片机实验及代码.doc 将本文的Word文档下载到电脑
搜索更多关于: 51单片机实验及代码 的文档
相关推荐
相关阅读