单片机汇编大高手来救命啊 30
我是新手下面这个高手们给看看怎末改啊有很多错误主要是CMP..JEDISPS..的时候出现这种errorA9:SYNTAXERROR30分不多希望有高手STARTbit0...
我是新手 下面这个高手们给看看怎末改啊 有很多错误 主要是CMP..JE DISPS..的时候出现 这种error A9: SYNTAX ERROR 30分不多 希望有高手
START bit 01H ;起动及停止标志
MinSpd EQU 9 ;起始转动速度
MaxSpd EQU 75 ;最高转动速度
Speed DATA 23H ;流动速度计数
ORG 0000H
LJMP DJSD
ORG 0010H
LJMP MAIN
ORG 0030H
MAIN:
MOV SPEED,#MinSpd ;起始转动速度送入计数器
CLR StartEnd ;停转状态
MOV TMOD,#00000001B
SETB EA
SETB ET1
LOOP:
ACALL KEY ;键盘程序
JNB P0,m_NEXT1 ;无键继续
ACALL KEYPROC ;否则调用键盘处理程序
m_NEXT1:
MOV A,Speed
MOV B,#10
DIV AB
CMP A,#0 ;若寄存器A中存储的是0,跳转至DISPS0,P0置FCH
JE DISPS0
CMP A,#1
JE DISPS1
CMP A,#2
JE DISPS2
CMP A,#3
JE DISPS3
CMP A,#4
JE DISPS4
CMP A,#5
JE DISPS5
CMP A,#6
JE DISPS6
CMP A,#7
JE DISPS7
CMP A,#8
JE DISPS8
CMP A,#9
JE DISPS9
DISPS0: ;DISPS0~DISP9,让数码管显示0~9的特定数
MOV P0,#0FCH
JMP Next
DISPS1:
MOV P0,#060H
JMP Next
DISPS2:
MOV P0,#0DAH
JMP Next
DISPS3:
MOV P0,#0F2H
JMP Next
DISPS4:
MOV P0,#066H
JMP Next
DISPS5:
MOV P0,#0B6H
JMP Next
DISPS6:
MOV P0,#0BEH
JMP Next
DISPS7:
MOV P0,#0E0H
JMP Next
DISPS8:
MOV P0,#0FEH
JMP Next
DISPS9:
MOV P0,#0F6H
JMP Next
CMP B,#0 ;若寄存器B中存储的是0,跳转至DISPS0,P1置FCH
JE DISPG0
CMP B,#1
JE DISPG1
CMP B,#2
JE DISPG2
CMP B,#3
JE DISPG3
CMP B,#4
JE DISPG4
CMP B,#5
JE DISPG5
CMP B,#6
JE DISPG6
CMP B,#7
JE DISPG7
CMP B,#8
JE DISPG8
CMP B,#9
JE DISPG9 展开
START bit 01H ;起动及停止标志
MinSpd EQU 9 ;起始转动速度
MaxSpd EQU 75 ;最高转动速度
Speed DATA 23H ;流动速度计数
ORG 0000H
LJMP DJSD
ORG 0010H
LJMP MAIN
ORG 0030H
MAIN:
MOV SPEED,#MinSpd ;起始转动速度送入计数器
CLR StartEnd ;停转状态
MOV TMOD,#00000001B
SETB EA
SETB ET1
LOOP:
ACALL KEY ;键盘程序
JNB P0,m_NEXT1 ;无键继续
ACALL KEYPROC ;否则调用键盘处理程序
m_NEXT1:
MOV A,Speed
MOV B,#10
DIV AB
CMP A,#0 ;若寄存器A中存储的是0,跳转至DISPS0,P0置FCH
JE DISPS0
CMP A,#1
JE DISPS1
CMP A,#2
JE DISPS2
CMP A,#3
JE DISPS3
CMP A,#4
JE DISPS4
CMP A,#5
JE DISPS5
CMP A,#6
JE DISPS6
CMP A,#7
JE DISPS7
CMP A,#8
JE DISPS8
CMP A,#9
JE DISPS9
DISPS0: ;DISPS0~DISP9,让数码管显示0~9的特定数
MOV P0,#0FCH
JMP Next
DISPS1:
MOV P0,#060H
JMP Next
DISPS2:
MOV P0,#0DAH
JMP Next
DISPS3:
MOV P0,#0F2H
JMP Next
DISPS4:
MOV P0,#066H
JMP Next
DISPS5:
MOV P0,#0B6H
JMP Next
DISPS6:
MOV P0,#0BEH
JMP Next
DISPS7:
MOV P0,#0E0H
JMP Next
DISPS8:
MOV P0,#0FEH
JMP Next
DISPS9:
MOV P0,#0F6H
JMP Next
CMP B,#0 ;若寄存器B中存储的是0,跳转至DISPS0,P1置FCH
JE DISPG0
CMP B,#1
JE DISPG1
CMP B,#2
JE DISPG2
CMP B,#3
JE DISPG3
CMP B,#4
JE DISPG4
CMP B,#5
JE DISPG5
CMP B,#6
JE DISPG6
CMP B,#7
JE DISPG7
CMP B,#8
JE DISPG8
CMP B,#9
JE DISPG9 展开
2个回答
展开全部
CMP?有这种指令的?
CJNE A, data, rel ; A≠(data),(PC)+ 3 + rel→(PC),累加器中的内容不等于直接地址单元的内容,则转移到偏移量所指向的地址,否则程序往下执行
CJNE A, #data, rel ; A≠#data,(PC)+ 3 + rel→(PC),累加器中的内容不等于立即数,则转移到偏移量所指向的地址,否则程序往下执行
CJNE Rn, #data, rel ; A≠#data,(PC)+ 3 + rel→(PC),工作寄存器Rn中的内容不等于立即数,则转移到偏移量所指向的地址,否则程序往下执行
CJNE @Ri, #data, rel ; A≠#data,(PC)+ 3 + rel→(PC),工作寄存器Ri指向地址单元中的内容不等于立即数,则转移到偏移量所指向的地址,否则程序往下执行
CJNE A, data, rel ; A≠(data),(PC)+ 3 + rel→(PC),累加器中的内容不等于直接地址单元的内容,则转移到偏移量所指向的地址,否则程序往下执行
CJNE A, #data, rel ; A≠#data,(PC)+ 3 + rel→(PC),累加器中的内容不等于立即数,则转移到偏移量所指向的地址,否则程序往下执行
CJNE Rn, #data, rel ; A≠#data,(PC)+ 3 + rel→(PC),工作寄存器Rn中的内容不等于立即数,则转移到偏移量所指向的地址,否则程序往下执行
CJNE @Ri, #data, rel ; A≠#data,(PC)+ 3 + rel→(PC),工作寄存器Ri指向地址单元中的内容不等于立即数,则转移到偏移量所指向的地址,否则程序往下执行
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询