KEY1 BIT P1.0
KEY2 BIT P1.1
KEY3 BIT P1.2
KEY4 BIT P1.3
ORG 0000H
LJMP MAIN
ORG 0030H
MAIN:MOV SP,#50H
SCAN_KEY1:MOV A,P1
ANL A,#0FH
CJNE A,#0EH,SCAN_KEY2
LJMP B1
SCAN_KEY2:MOV A,P1
ANl A,#0FH
CJNE A,#0DH,SCAN_KEY3
LJMP B2
SCAN_KEY3:MOV A,P1
ANl A,#0FH
CJNE A,#0BH,SCAN_KEY4
LJMP B3
SCAN_KEY4:MOV A,P1
ANl A,#0FH
CJNE A,#07H,SCAN_KEY1
LJMP B4
B1:CLR P1.4
SETB P1.5
SETB P1.6
SETB P1.7
SANTOO:MOV A,#00H
MOV DPTR,#7FFFH
LLOOP:MOVX @DPTR,A
INC A ;
CJNE A,#0FFH,LLOOP
LJMP SCAN_KEY1
B2:CLR P1.5
SETB P1.4
SETB P1.6
SETB P1.7
SINE:MOV DPTR1,#sinTab
MOV DPTR,#7FFFH
LOOP:CLR A
MOVC A,@A+DPTR1
CJNE A,#129,LOOP1
RET
LOOP1:MOVX @DPTR,A
INC DPTR1
AJMP LOOP
sinTab:DB 128,132,137,141,146,150,154,159,163,167
DB 171,176,180,184,188,191,195,199,203,206
DB 210,213,216,219,222,225,228,231,233,236
DB 238,240,242,244,246,247,249,250,251,252
DB 253,254,254,255,255,255,255,255,254,254
DB 253,252,251,250,249,247,246,244,242,240
DB 238,236,233,231,228,225,222,219,216,213
DB 210,206,203,198,195,192,188,184,180,176
DB 172,167,163,159,155,150,146,141,137,133
DB 128,124,119,115,111,106,102,97,93,89,85
DB 81,77,73,69,65,61,57,54,50,47,43,40,37
DB 34,31,28,25,23,20,18,16,14,12,10,9,7
DB 6,5,4,3,2,2,1,1,1,1,1,2,2,3,4,5,6
DB 7,9,10,12,14,16,18,20,23,25,28,30,33,36
DB 40,43,46,50,53,57,60,64,68,72,76,80,84
DB 88,93,97,101,106,110,114,119,123,128,129
LJMP SCAN_KEY2;
B3:CLR P1.6
SETB P1.4
SETB P1.5
SETB P1.7
TRIAN:MOV A,#00H
MOV DPTR,#7FFFH
UP:MOVX @DPTR,A
INC A
JNZ UP
DOWN:DEC A
MOVX @DPTR,A
JNZ DOWN
LJMP SCAN_KEY3; 利
B4:CLR P1.7
SETB P1.4
SETB P1.6
SETB P1.5
SQUN:MOV DPTR,#7FFFH
MOV A,#0FFH
MOVX @DPTR,A
LCALL Delay
MOV A,#00H
MOVX @DPTR,A
LCALL Delay
LJMP SCAN_KEY4
RET
END
Delay:MOV R7,#0FFH
DJNZ R7,$
RET
END
谁能帮我看看下面的汇编哪错了啊,感激不尽啊!!!!
答案:3 悬赏:40
解决时间 2021-12-28 17:52
- 提问者网友:但未伤到心
- 2021-12-28 14:16
最佳答案
- 二级知识专家网友:留下所有热言
- 2021-12-28 14:45
B2:CLR P1.5
SETB P1.4
SETB P1.6
SETB P1.7
SINE:MOV DPTR1,#sinTab
MOV DPTR,#7FFFH
LOOP:CLR A
MOVC A,@A+DPTR1
CJNE A,#129,LOOP1
RET
LOOP1:MOVX @DPTR,A
INC DPTR1
AJMP LOOP
这段程序干什么的你要说清楚,不然别人不容易看你的程序错误,查错一般是差语法错误,还有为什么没有达到预期功能的错误!
我连估带猜,这段程序你可能是想把sintab表的字符送到“7fffh”口上,以实现特定的波形。如果是这样程序应该:
B2:CLR P1.5
SETB P1.4
SETB P1.6
SETB P1.7
MOV DPTR,#sinTab
LOOP1: MOVC A,@DPTR
CJNE A,#129,LOOP2
Ljmp MAIN
loop2:movx 7fffH,a
INC DPTR
AJMP LOOP
其他子程序以此类推!
当然实现相同功能的成写法可以多样,我只是举例,并不唯一!
SETB P1.4
SETB P1.6
SETB P1.7
SINE:MOV DPTR1,#sinTab
MOV DPTR,#7FFFH
LOOP:CLR A
MOVC A,@A+DPTR1
CJNE A,#129,LOOP1
RET
LOOP1:MOVX @DPTR,A
INC DPTR1
AJMP LOOP
这段程序干什么的你要说清楚,不然别人不容易看你的程序错误,查错一般是差语法错误,还有为什么没有达到预期功能的错误!
我连估带猜,这段程序你可能是想把sintab表的字符送到“7fffh”口上,以实现特定的波形。如果是这样程序应该:
B2:CLR P1.5
SETB P1.4
SETB P1.6
SETB P1.7
MOV DPTR,#sinTab
LOOP1: MOVC A,@DPTR
CJNE A,#129,LOOP2
Ljmp MAIN
loop2:movx 7fffH,a
INC DPTR
AJMP LOOP
其他子程序以此类推!
当然实现相同功能的成写法可以多样,我只是举例,并不唯一!
全部回答
- 1楼网友:猎杀温柔
- 2021-12-28 17:41
有几个汉字的标点符号。
有两个END。
这程序,是干什么的?达到目的了吗?
有什么错误? 这需要楼主来说明。
- 2楼网友:放肆的依賴
- 2021-12-28 16:17
有几个汉字的标点符号。
有两个END。
这程序,是干什么的?达到目的了吗?
有什么错误? 这需要楼主来说明。
再看看别人怎么说的。
我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯
• 手机登qq时,显示手机磁盘不足,清理后重新登 |
• 刺客的套装怎么选啊? |