標題:
單片機串行通信奇校驗驗代碼怎么寫,我的老是出錯
[打印本頁]
作者:
YUKIAd0w
時間:
2023-5-10 23:48
標題:
單片機串行通信奇校驗驗代碼怎么寫,我的老是出錯
單片機源程序如下:
#include <reg51.h>
void main()
{
SCON=0xd0;
PCON=0x80;
TH1=0xFD;
TL1=0xFD;
TR1=1;
ES=1;
EA=1;
TMOD=0x20;
P2=0xff;
while(1)
{
SBUF=P2;
while(!TI);
TI=0;
while(!RI);
RI=0;
P0=SBUF;
}
} void server() interrupt 4
{
}
復(fù)制代碼
求助大佬,奇校驗代碼怎么寫,我的老是出錯
作者:
yzwzfyz
時間:
2023-5-11 15:12
1、將串行數(shù)據(jù)做成9位數(shù)據(jù)傳輸。
2、發(fā)送數(shù)據(jù)時將數(shù)據(jù)中的奇偶性,放入第9位中(TB8),再發(fā)送。
3、接收時,下載數(shù)據(jù)后,將第9位(RB9)與下載的數(shù)據(jù)中的奇偶性做比較,便可識別。
作者:
Hephaestus
時間:
2023-5-11 15:38
先隨便定義一個變量 char ch;
這一句SBUF=P2;改成如下:
ch=P2;
TB8=!P;
SBUF=ch;
接收也做類似處理
ch=SBUF;
if(RB8!=P){ /**** odd parity success ****/
}
歡迎光臨 (http://www.torrancerestoration.com/bbs/)
Powered by Discuz! X3.1