標(biāo)題: 單片機(jī)與pc通信程序問題求助 顯示結(jié)果不對(duì) [打印本頁(yè)]

作者: 玄子    時(shí)間: 2021-4-12 15:38
標(biāo)題: 單片機(jī)與pc通信程序問題求助 顯示結(jié)果不對(duì)
如下所示是代碼,發(fā)現(xiàn)發(fā)送16進(jìn)制的數(shù)據(jù)0x30,接收到的也是0x30.但是單片機(jī)的顯示不是0x30,而是顯示0xc0。為了驗(yàn)證這個(gè),加了if判斷發(fā)送0x30時(shí)是否在單片機(jī)內(nèi)部數(shù)據(jù)為0xc0,結(jié)果真的是這樣。請(qǐng)問一下這是怎么回事??

#include<reg52.h>
#define uchar unsigned char
#define uint  unsigned int
uchar ch;

void main (void)
{
    SCON = 0x50;
    PCON = 0x00;               
    TMOD = 0x20;         
    TH1  = 0xfd;
          TL1  = 0xfd;
    TR1   = 1;                        
    EA    = 1;            
    ES    = 1;                 
while (1)   ;                  
}

void serial(void) interrupt 4
{
        ES=0;
        RI=0;
        ch=SBUF;
        SBUF=ch;
        while(TI==0);
        TI=0;
        if(ch==0xc0)
        {
        P1=0xfe;
        }
        else
        {
        P1=0x00;
        }
        ES=1;        
}


作者: 玄子    時(shí)間: 2021-4-12 15:39
按上面這個(gè)程序,我發(fā)送0x30,接受到的是0x30,但單片機(jī)顯示的0xfe
作者: 人人學(xué)會(huì)單片機(jī)    時(shí)間: 2021-4-12 16:58
串口1打印程序 可以打印3個(gè)十六位的變量 波特率9600 http://www.torrancerestoration.com/bbs/dpj-201660-1.html

串口發(fā)送 不需要while死等 串口接收?qǐng)?zhí)行軟件復(fù)位 http://www.torrancerestoration.com/bbs/dpj-200927-1.html




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