标题: 求哪位热心的哥哥姐姐帮我一下,把这个改成汇编,拜托了,很急,很急 [打印本页]
作者: 出来乍道 时间: 2016-5-14 02:11
标题: 求哪位热心的哥哥姐姐帮我一下,把这个改成汇编,拜托了,很急,很急
JMP LLL2
LLL1: MOV A,TL0 ;检测滴速是否处于警戒范围内
CLR C
SUBB A,22H ;22H为保存滴速最大警戒值单元
JNC WARN ;滴速大于最大警戒值,则报警
JMP LLL2
CLR C
MOV A,TL0
SUBB A,#23H ;23H为保存滴速最小警戒值单元
JC WARN ;滴速小于最小警戒值,则报警
MOV 20H,TL0
LLL2: CALL S_BINBCD ;将滴速数值转化为BCD码,以供显示
CALL DISP ;调用显示子程序,显示滴速实际值
MOV A,20H
SUBB A,21H ;21H为保存滴速设定值单元
JZ START ;实际滴速=设定滴速,则返回
MOV B,#m ;调入步进系数m,m反映了滴速差与步进
;电机转动步数之间的倍数关系
PUSH PSW
MUL A,B
MOV R4,A ;保存乘积的低8位
MOV A,B
JZ JUDG ;如果高8位为0,即步数小于或等于255,
;则转步进电机正反转判断
MOV R4,#255 ;如果高8位不为0,即步数大于255,
;则设定本监控周期最大转动步数为255
JUDG: POP PSW
JC REV ;如果C=1,则N实〈 N设
,控制步进电机反转
FOR : MOV R0,#00H ;否则C=0,正转,正转取码指针初值
START2: MOV A,R0 ;取码指针载入A
MOV DPTR,#BU_TABLE ;数据指针指到BU-TABLE
MOV A,@a+BU-TABLE ;至BU-TABLE取值
JZ FOR ;取到结束码,跳至FOR
CPL A
MOV P2,A ;将取到的码输出到P2口
CALL DELAY ;20毫秒延时(速度)
INC R0 ;取码指针加1,取下一个码
DJNZ R4,START2
JMP START
REV: MOV R0,#05H ;反转取码指针初值
START3: MOV A,R0
MOV DPTR,#BU_TABLE
MOV A,@A+DPTR
JZ REV ;取到结束码00H,则跳至REN
CPL A
MOV P2,A
CALL DELAY ;延时20毫秒
INC R0
DJNZ R4,START3 ;未走完步数,则继续
JMP START
作者: 雪玉寐影 时间: 2016-5-14 12:13
可能是想改成C吧
作者: lshhjx 时间: 2016-5-15 11:36
你这个已经是汇编了,小妹妹
欢迎光临 (http://www.51hei.com/bbs/) |
Powered by Discuz! X3.1 |