汇编语言lcall d200c,明天就要交课设了,蜂鸣器老有杂音,求大神赐教

该楼层疑似违规已被系统折叠 隐藏此楼查看此楼

ORG 0000H

SJMP M1

ORG 000BH

MOV TH0,R1 ;设置定时器初值

MOV TL0,R0

CPL P3.4 ;输出方波

RETI

************起始程序************************************

M0:MOV R5,#00H

M1:CLR A

MOV C,P1.0;判断是否为按键1

MOV ACC.0,C

JZ DO

MOV C,P1.1;判断是否为按键2

MOV ACC.0,C

JZ RAI

MOV C,P1.2 ;判断是否为按键3

MOV ACC.0,C

JZ MI

MOV C,P1.3

MOV ACC.0,C

JZ FA

MOV C,P1.4

MOV ACC.0,C

JZ SO

MOV C,P1.5

MOV ACC.0,C

JZ LA

MOV C,P1.6

MOV ACC.0,C

JZ XI

MOV C,P1.7

MOV ACC.0,C

JZ M7

LJMP M1

M7:LJMP M2

DO: MOV R1,#0FCH

MOV R0,#44H

MOV R2,#08H

CLR P2.0

LJMP NEXT

RAI:MOV R1,#0FCH

MOV R0,#0ACH

MOV R2,#08H

CLR P2.1

LJMP NEXT

MI:MOV R1,#0FDH

MOV R0,#09H

MOV R2,#08H

CLR P2.2

LJMP NEXT

FA:MOV R1,#0FDH

MOV R0,#34H

MOV R2,#08H

CLR P2.3

LJMP NEXT

SO:MOV R1,#0FDH

MOV R0,#82H

MOV R2,#08H

CLR P2.4

LJMP NEXT

LA:MOV R1,#0FDH

MOV R0,#0C8H

MOV R2,#08H

CLR P2.5

LJMP NEXT

XI:MOV R1,#0FEH

MOV R0,#06H

MOV R2,#08H

CLR P2.6

LJMP NEXT

NEXT:CLR A

MOV TMOD,#01H

MOV IE,#82H

MOV TH0,R1

MOV TL0,R0

SETB TR0

LOOP1:LCALL D200C

DJNZ R2,LOOP1

CLR TR0

MOV A,#0FFH

MOV P2,A

LJMP M1

M5:CJNE R5,#04H,M9

MOV DPTR,#QU

LJMP LOOP

M9:CJNE R5,#05H,M8

MOV DPTR,#LS

LJMP LOOP

M8:CJNE R5,#06H,M10

M10:LJMP M0

M4:CJNE R5,#03H,M5

MOV DPTR,#PL

LJMP LOOP

M3:CJNE R5,#02H,M4

MOV DPTR,#LING

LJMP LOOP

M2:INC R5

CJNE R5,#01H,M3

MOV DPTR,#TAB

LOOP:CPL P2.7

CLR A

MOVC A,@A+DPTR

MOV R1,A

INC DPTR

CLR A

MOVC A,@A+DPTR

MOV R0,A

ORL A,R1

JZ NEXT0

MOV A,R0

ANL A,R1

CJNE A,#0FFH,NEXT3

CLR TR0

MOV R2,04H

LCALL D200C

INC DPTR

LJMP LOOP

NEXT3:MOV TMOD,#01H

MOV IE,#82H

MOV TH0,R1

MOV TL0,R0

SETB TR0

SJMP NEXT2

NEXT0:CLR TR0

MOV A,#0FFH

MOV P2,A

LJMP M1

NEXT2:CLR A

INC DPTR

MOVC A,@A+DPTR

MOV R2,A

LOOP3:LCALL D200C

DJNZ R2,LOOP3

INC DPTR

LJMP LOOP

D200C:MOV R3,#65H

D200B:MOV A,#0FFH

D200A:DEC A

JNZ D200A

DEC R3

CJNE R3,#00H,D200B

RET

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值