欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 1193|回復: 4
收起左側

單片機串口如何接收數據,找的例程看不懂

[復制鏈接]
ID:601478 發表于 2019-11-19 15:49 | 顯示全部樓層 |閱讀模式
void ReceiveData()
{
  while(RI==0);
  RI=0;
  state=SBUF;
  ACC=state;
  if(RB8==P)     //這句判斷看不懂
     data_true=1;
  else
     data_true=0;
}

回復

使用道具 舉報

ID:443261 發表于 2019-11-19 18:51 | 顯示全部樓層
PSW.0(P):奇偶校驗位
RB8 為接收到的第9位    這個意思是串口做了奇偶校驗
回復

使用道具 舉報

ID:263427 發表于 2019-11-19 19:02 | 顯示全部樓層
您好,這是單片機串口通信的奇偶校驗。
偶校驗:就是發送的8個數據位的1的個數為偶數時,TB8=0;為奇數時,TB8=1;
奇校驗:與偶校驗相反的TB8。 先講發送字節時的偶校驗:
先看下匯編的解決方案是什么: MOV A,@R0 MOV C,P MOV TB8,C MOV SBUF,@R0
再看下C語言的解決方案:
void chk_even(uchar dat)//要發送的數據位dat { ACC=dat; TB8=P; SBUF=dat; while(TI==0); TI=0;

}
這只是發送的一個字節的偶校驗 ,接收時的為RB8位,應該能看懂,要是還是感覺吃力的話,就繼續查資料。

評分

參與人數 1黑幣 +50 收起 理由
admin + 50 回帖助人的獎勵!

查看全部評分

回復

使用道具 舉報

ID:190832 發表于 2019-11-19 19:06 | 顯示全部樓層
等待接收數據;
回復

使用道具 舉報

ID:190832 發表于 2019-11-19 19:07 | 顯示全部樓層
等待接收數據;
清接收到數據標志;
讀取接收的數據;  //這就是前三行的注釋
回復

使用道具 舉報

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

本版積分規則

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

Powered by 單片機教程網

快速回復 返回頂部 返回列表