找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 5714|回復(fù): 9
收起左側(cè)

關(guān)于單片機串行通信的問題 SBUF值給P1口,使LED燈亮

[復(fù)制鏈接]
ID:162665 發(fā)表于 2017-9-4 23:28 | 顯示全部樓層 |閱讀模式
5黑幣
    用串口助手把值送給SBUF ,再把SBUF值給P1口,使LED燈亮。但是為什么不亮呢?問題出在哪里?老哥們幫看看
#include<reg52.h>
#define uchar unsigned char
#define uint  unsigned int
uchar num;
void delay(uint z)
{
        uint x,y;
        for(x = z; x > 0; x--)
                for(y = 114; y > 0 ; y--);
}
void UART_init()
{
  TMOD = 0x20;           //定時器工作在方式2
  TH1 = 0xfd;
  TL1 = 0xfd;           //設(shè)置初始值,波特率為9600
  TR1 = 1;                   //打開定時器1
  SM0 = 0;
  SM1 = 1;                   //設(shè)置串行口工作為方式一
  REN =1;                   //允許串行口接收
}
void main()
{
  void UART_inti();
  while(1)
  {  
   while(!RI);
   P1 = SBUF;
   RI = 0;
  }
}

最佳答案

查看完整內(nèi)容

main 中居然有這個void UART_inti();沒報錯么,去掉void
回復(fù)

使用道具 舉報

ID:219796 發(fā)表于 2017-9-4 23:28 來自觸屏版 | 顯示全部樓層
main 中居然有這個void UART_inti();沒報錯么,去掉void

評分

參與人數(shù) 1黑幣 +20 收起 理由
admin + 20 回帖助人的獎勵!

查看全部評分

回復(fù)

使用道具 舉報

ID:151348 發(fā)表于 2017-9-5 16:56 | 顯示全部樓層
PC端發(fā)的什么,要是字符的話應(yīng)該不行
回復(fù)

使用道具 舉報

ID:213173 發(fā)表于 2017-9-6 06:20 | 顯示全部樓層
串口通訊查詢方式
#include<reg52.h>
#define uchar unsigned char
#define uint  unsigned int
uchar num;
/*void delay(uint z)
{
        uint x,y;
        for(x = z; x > 0; x--)
                for(y = 114; y > 0 ; y--);
}*/
void UART_init()
{
        TMOD = 0x20;           //定時器工作在方式2
        TH1 = 0xfd;
        TL1 = 0xfd;           //設(shè)置初始值,波特率為9600
        TR1 = 1;                   //打開定時器1
        SM0 = 0;
        SM1 = 1;                   //設(shè)置串行口工作為方式一
        REN =1;                   //允許串行口接收
}
void main()
{
        UART_init();
        while(1)
        {  
                if(RI==1)                //查詢接收中斷請求標(biāo)志位為1(已收到)
                {
                        RI=0;                //接收中斷請求標(biāo)志位清0
                        P1=SBUF;        //獲取接收寄存器數(shù)據(jù)
                }
//                while(!RI);
//                P1 = SBUF;
//                RI = 0;
        }
}
回復(fù)

使用道具 舉報

ID:162665 發(fā)表于 2017-9-6 21:33 | 顯示全部樓層
sldx 發(fā)表于 2017-9-6 01:40
main 中居然有這個void UART_inti();沒報錯么,去掉void

沒有報錯
回復(fù)

使用道具 舉報

ID:162665 發(fā)表于 2017-9-6 21:50 | 顯示全部樓層
sldx 發(fā)表于 2017-9-6 01:40
main 中居然有這個void UART_inti();沒報錯么,去掉void

謝謝 問題已解決。∈且驗闆]有去掉void,以及函數(shù)調(diào)用時把“init”寫成了“inti”,,,,,,
回復(fù)

使用道具 舉報

ID:162665 發(fā)表于 2017-9-6 21:52 | 顯示全部樓層
但是問什么要去掉void呢?這個函數(shù)里沒有返回值啊
回復(fù)

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機教程網(wǎng)

快速回復(fù) 返回頂部 返回列表