電子產(chǎn)業(yè)一站式賦能平臺

PCB聯(lián)盟網(wǎng)

搜索
查看: 2396|回復: 0
收起左側

單片機C語言實例-325-單片機接收PC發(fā)出的數(shù)據(jù)

[復制鏈接]
跳轉到指定樓層
樓主
發(fā)表于 2022-3-29 10:03:58 | 只看該作者 |只看大圖 回帖獎勵 |倒序瀏覽 |閱讀模式
單片機C語言實例-325-單片機接收PC發(fā)出的數(shù)據(jù)

//實例59:單片機接收PC發(fā)出的數(shù)據(jù)
#include<reg51.h>       //包含單片機寄存器的頭文件
/*****************************************************
函數(shù)功能:接收一個字節(jié)數(shù)據(jù)
***************************************************/
unsigned char Receive(void)
{
  unsigned char dat;
  while(RI==0)  //只要接收中斷標志位RI沒有被置“1”
         ;      //等待,直至接收完畢(RI=1)
          RI=0;      //為了接收下一幀數(shù)據(jù),需將RI清0
     dat=SBUF;  //將接收緩沖器中的數(shù)據(jù)存于dat
          return dat;
}
/*****************************************************
函數(shù)功能:主函數(shù)
***************************************************/
void main(void)
{
   TMOD=0x20;  //定時器T1工作于方式2
   SCON=0x50;  //SCON=0101 0000B,串口工作方式1,允許接收(REN=1)
   PCON=0x00;  //PCON=0000 0000B,波特率9600
   TH1=0xfd;  //根據(jù)規(guī)定給定時器T1賦初值
   TL1=0xfd;  //根據(jù)規(guī)定給定時器T1賦初值      
   TR1=1;    //啟動定時器T1   
   REN=1;    //允許接收
  while(1)
   {
             P1=Receive(); //將接收到的數(shù)據(jù)送P1口顯示               
   }
}


更多詳情參考附件文檔

游客,如果您要查看本帖隱藏內(nèi)容請回復

回復

使用道具 舉報

發(fā)表回復

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

本版積分規(guī)則

關閉

站長推薦上一條 /1 下一條


聯(lián)系客服 關注微信 下載APP 返回頂部 返回列表