标题: 这段单片机程序有16处错误(++的为错),不知道如何修改,希望高手援手 [打印本页]

作者: helloccz    时间: 2015-8-11 21:32
标题: 这段单片机程序有16处错误(++的为错),不知道如何修改,希望高手援手

ORG    000H

      LJMP   START

RS:    BIT   P3.7     ++

RW:    BIT   P3.6    ++

E:     BIT   P3.5      ++

START: MOV    SP,#40H

       MOV    P3,#FFH      ++

GAIN: MOV    P1,#01H

      LCALL  ENABLE

      LCALL  DELAY

      MOV    P1,#38H

      LCALL  ENABLE

      MOV    P1,#0FH

      LCALL  ENABLE

      MOV    P1,#06H

      LCALL  ENABLE

      MOV    P1,#80H

      LCALL  ENABLE

      MOV    DPTR,#BUF1

      LCALL  WRITE1

      LCALL  ENABLE

      MOV    P1,#0C0H

      LCALL  ENABLE

       MOV    DPTR,#BUF2    +++

      LCALL  WRITE1

      LCALL  ENABLE

      LCALL  DELAY

      LCALL  DELAY

       JMP    AGAIN     +++

ENABLE:CLR    RS    +++

       CLR   RW      +++

       CLR   E        +++

      LCALL  DELAY

      SETB   E       +++

      RET

WRITE1:MOV    R7,#16H

NEXT: MOV    A,#00H

      MOVC   A,@A+DPTR

      LCALL  WRITE2

      LOOP  NEXT         +++

      RET

WRITE2:MOV    P1,A

      SETB   RS            ++++

       CLR   RW           ++++

       CLR    E              ++++

      CALL   DELAY

      SETB   E              ++++

      RET

DELAY: MOV    R6,#0FFH

DEL1:  MOV   R5,#0FFH

DEL2:  DJNZ   R5,DEL2

       DJNZ   R6,DEL1

       RET

BUF1: DB 20H,20H,"Welcome",20H,20H,20H,"To",20H,20H

BUF1:  DB"XidianUniversity"            ++++++

      END







作者: 木木de    时间: 2015-8-13 21:09
我只能说  你真的不会写程序  第一点  出了语法错误  你居然没看出来  第二  GAIN标号和AGAIN一样么?第三 ........我就不说了  免得打击你  
建议: 1.用C 吧 好用  2.如果 你非要用汇编的话  首先学习汇编的最简单的例子  然后慢慢 写难的程序  汇编没有3年以上的功力  几乎写出来的程序都是渣渣
作者: beautiful-life    时间: 2015-8-14 15:22
楼主,我的汇编也不行,可是你的汇编,唉,用C吧,我现在用C,感觉编程上手快多了
作者: helloccz    时间: 2015-8-15 16:56
beautiful-life 发表于 2015-8-14 15:22
楼主,我的汇编也不行,可是你的汇编,唉,用C吧,我现在用C,感觉编程上手快多了

谢谢你的提醒,我也感觉C语言比汇编语言好学




欢迎光临 (http://www.51hei.com/bbs/) Powered by Discuz! X3.1