标题: 求哪位热心的哥哥姐姐帮我一下,把这个改成汇编,拜托了,很急,很急 [打印本页]

作者: 出来乍道    时间: 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