標(biāo)題: 求諸位單片機(jī)大神指導(dǎo) [打印本頁(yè)]

作者: 獨(dú)家記憶    時(shí)間: 2014-7-11 12:59
標(biāo)題: 求諸位單片機(jī)大神指導(dǎo)
求大神指導(dǎo)     我是單片機(jī)新手。有問(wèn)題需要諸位解決:?jiǎn)纹瑱C(jī)向pc發(fā)送數(shù)據(jù),接收數(shù)據(jù)最前面兩位是錯(cuò)的  如果最前面兩位為全1,接收的數(shù)據(jù)就對(duì)的     我的程序就是下面的
        ORG    0000H
        SJMP   START
        ORG    0030H
   
START:   MOV    TMOD,#20H
     MOV    TH1,#0FDH
     MOV    TL1,#0FDH
     SETB   TR1
     MOV    SCON,#50H
     MOV    PCON,#00H
     MOV    DPTR,#TAB
     MOV    R0,#0
     SETB   TI

MAIN:      JBC    TI,SEND
           SJMP   MAIN
SEND:      MOV    A,R0
     MOVC   A,@A+DPTR
     MOV    SBUF,A
     MOV    P0,A
     CALL   DELAY
     INC    R0
     CJNE   R0,#8,MAIN
     MOV    R0,#0
     SJMP   MAIN
DELAY:     MOV    R1,#50
D3:        MOV    R2,#100
D2:     MOV   R3,#100
D1:     DJNZ   R3,D1
           DJNZ   R2,D2
     DJNZ   R1,D3
     RET
TAB:       DB     11000000b,11011111b,11010011b,11111111b,11010000b,11110000b,11101010b,11001111b
     END


作者: ahshmj    時(shí)間: 2014-7-11 15:00

       ORG    0000H
        SJMP   START
        ORG    0030H
   
START:   MOV    TMOD,#20H
     MOV    TH1,#0FDH
     MOV    TL1,#0FDH
     SETB   TR1
     MOV    SCON,#50H
     MOV    PCON,#00H
     MOV    DPTR,#TAB
     MOV    R0,#0
     ;SETB   TI            //這一句不能要

MAIN:      JBC    TI,SEND
           SJMP   MAIN
SEND:      MOV    A,R0
     MOVC   A,@A+DPTR
     MOV    SBUF,A
     MOV    P0,A
        JNB        TI,$                ;等待發(fā)送完成
    ; CALL   DELAY       //也可以不要,不影響發(fā)送。
     INC    R0
     CJNE   R0,#8,MAIN
     MOV    R0,#0
     SJMP   MAIN
作者: 獨(dú)家記憶    時(shí)間: 2014-7-11 15:18
ahshmj 發(fā)表于 2014-7-11 15:00
ORG    0000H
        SJMP   START
        ORG    0030H

我試了下還是不行。     我覺(jué)得  SETB  TI   還是得要。這樣是為了啟動(dòng)串口開(kāi)始發(fā)送下一個(gè)真正要發(fā)送的數(shù)據(jù),這個(gè)數(shù)據(jù)就是數(shù)據(jù)表的第一個(gè)數(shù)。




歡迎光臨 (http://www.torrancerestoration.com/bbs/) Powered by Discuz! X3.1