×
单片机 > 单片机程序设计 > 详情

c51 奇偶校验位应用

发布时间:2020-08-26 发布时间:
|
    C51特殊功能寄存器PWS的奇偶校验位P,如果ACC中“1”的个数为偶数,硬件置P=0。如果ACC中“1”的个数位奇数,硬件置P=1。

    发送端将P送入SCON的TB8,奇偶信息随数据帧一起发送。

    接受端SCON的RB8位接受发送端的TB8位,即RB8=TB8。接受端得到发送端的奇偶信息。

发送端:

void transmit(uchar dat)
{
  ACC=dat;  
  TB8=P;    //以上2句将dat的奇偶信息放入TB8,随数据发送。
  SBUF=dat;   //发送
  while(TI==0)
   ;
  TI=0;
}

接收端:

void receive(void)   //接收函数
{
  RI=0;        
  ACC=SBUF;   //执行此指令,P是接收8位数据的奇偶信息  
  if(RB8==P)   //RB8是发送端数据的奇偶消息,P是实际收到8位数据的奇偶消息
    {
   P1=SBUF;     
    }
 }



『本文转载自网络,版权归原作者所有,如有侵权请联系删除』

热门文章 更多
ARM 汇编的必知必会