单片机汇编程序实例

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

单片机程序入门小例子(汇编语言)

声明:以下3个例子都是正确的,都已经验证过。希望能给刚刚学习单片机的人一点参考。

编写人:大连民族学院自动化专业

例1:流水灯(加按键)

ORG 0000H

KEY1:MOV A,#0FEH

CLR C

LOOP1:MOV P2,A

RLC A

ACALL DELAY

JNB P3.7,KEY2

LJMP LOOP1

KEY2:MOV A,#0FEH

LOOP2:MOV P2,A

RL A

ACALL DELAY

JNB P3.6,KEY1

LJMP LOOP2

DELAY:MOV R7,#20

D1:MOV R6,#200

D2:MOV R5,#123

NOP

DJNZ R5,$

DJNZ R6,D2

DJNZ R7,D1

RET

END

例2:数码管动态显示

ORG 0000H

AJMP MAIN

ORG 0003H

AJMP PINT0

ORG 0100H MAIN:MOV SP,#40H

CLR IT0

SETB EX0

SETB EA HERE:MOV 30H,#00H

MOV 31H,#01H

MOV 32H,#02H

MOV 33H,#03H

LOOP:MOV R0,#30H

MOV R1,#4

MOV R3,#0FEH

MOV DPTR,#TAB

LOOP1:MOV A,@R0

MOVC A,@A+DPTR

MOV P0,A

MOV P1,R3

LCALL DELAY

INC R0

MOV A,R3

RL A

MOV R3,A

DJNZ R1,LOOP1

SJMP LOOP

TAB:DB 0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90H DELAY:MOV R6,#6

LD:ACALL DELAY1

DJNZ R6,LD

DELAY1:MOV R7,#124

NOP

LOOP2:NOP

NOP

DJNZ R7,LOOP2

RET

DELAY2:MOV R7,#20

D1:MOV R6,#200

D2:MOV R5,#123

NOP

DJNZ R5,$

DJNZ R6,D2

DJNZ R7,D1

RET

ORG 0200H

PINT0:MOV A,#0C0H

MOV R3,#0FEH

MOV P0,A

MOV P1,R3

LCALL DELAY2

RETI

END

例3:用汇编语言编写一个秒表程序

ORG 0000H

AJMP MAIN

ORG 0003H

LJMP TINT0

ORG 000BH

LJMP TIMER0

ORG 0013H

LJMP TINT1

ORG 0100H MAIN:MOV SP,#40H

MOV TMOD,#01H

MOV TL0,0B0H

MOV TH0,03CH

SETB TR0

SETB ET0

SETB EX0

SETB EX1

SETB PX0

SETB IT0

SETB IT1

SETB EA HERE:MOV 30H,#00H

MOV 31H,#00H

MOV 32H,#00H

MOV 33H,#00H

MOV 34H,#00H

MOV R4,#0 LOOP:MOV R0,#31H

MOV R1,#4

MOV R3,#0F7H

MOV DPTR,#TAB

MOV R5,#0

LOOP1:MOV A,@R0

MOVC A,@A+DPTR

MOV P0,A

MOV P1,R3

INC R5

CJNE R5,#2,DDD

CLR P0.7

MOV R5,#0

DDD:LCALL DELAY

INC R0

MOV A,R3

RR A

MOV R3,A

DJNZ R1,LOOP1

SJMP LOOP

TAB:DB 0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90H DELAY:MOV R6,#6

LD:ACALL DELAY1

DJNZ R6,LD

DELAY1:MOV R7,#124

NOP

LOOP2:NOP

NOP

DJNZ R7,LOOP2

RET

TIMER0:PUSH PSW

PUSH ACC

MOV TL0,0B0H

MOV TH0,03CH

INC 30H

MOV A,30H

CJNE A,#02H,TIME

MOV 30H,#00H

INC 31H

相关文档
最新文档