1. 首页
  2. 综合百科
  3. 单片机偶校验(单片机奇偶校验怎么实现的)

单片机偶校验(单片机奇偶校验怎么实现的)

简介:关于单片机偶校验(单片机奇偶校验怎么实现的)的相关疑问,相信很多朋友对此并不是非常清楚,为了帮助大家了解相关知识要点,小编为大家整理出如下讲解内容,希望下面的内容对大家有帮助!
如果有更好的建议或者想看更多关于综合百科技术大全及相关资讯,可以多多关注茶馆百科网。

各位好,很多人还不知道单片机的奇偶校验(如何实现单片机的奇偶校验)。下面详细解释一下。现在让我们来看看!

1.单片机奇偶校验

一般来说,一帧串行通信的格式是8-n-1,即8位数据,无校验,1个停止位。

有时,为了提高精度,需要添加一个“奇”校验位或“偶”校验位。

对于高级语言来说,很简单,只需将格式命令“8-n-1”改为“8-P-1”或“8-O-1”即可。

在带校验位的通信模式下,串口先发送8位数据,再发送校验位。

51单片机还可以用校验位进行串行通信,在51单片机中称为9位数据模式。

51单片机里有两个位,叫TB8和RB8,没有校验的时候没用。

当51单片机采用9位数据模式进行串行通信时,TB8和RB8的功能如下:

51单片机先发送8位数据,再发送TB8中的内容;

51单片机首先接收8位数据,然后接收校验位并存储在RB8中。

写51单片机程序的时候,要在发送数据之前,把要发送的校验位写入TB8。

利用单片机中的校验位P,可以自动生成8位数据的校验位。程序如下。

MOV,#要发送的数据;当数据进入A时,立即生成奇偶校验位P。

MOV角

MOVTB8,C;校验位被发送到TB8

MOV·斯布夫;发送数据,和p

由于P=1意味着A中有奇数个,所以上述过程是“偶数”校验的形式。

如果需要“奇数”检查,则需要添加反转指令,如下所示:

MOV角

CPLC

MOVTB8,C;校验位被发送到TB8

接收器将把接收到的8位数发送到SBUF,第9位数发送到RB8,然后自动设置RI=1。

之后,您可以使用RB8中的内容来检查刚刚收到的8位数字的正确性。

另一个问题:51单片机如何初始化为8-n-1(8个数据位,无奇偶位,1个停止位)波特率,串口模式是什么?

本来想用串口模式1,但仔细一看,模式1是10异步通信模式,1个起始位,8个数据位,1个停止位。

奖励积分:20-结算时间:2009年12月1日13:26

问题:首先感谢一楼的回答。我仍然有一些问题。刚才我用示波器看了一下。发送0xFF时,示波器显示低电平,其余为高电平。这应该是正确的,因为起始位是0。但是为什么示波器的(起始位+数据位+停止位)顺序是:0+01010101+1,而0x55的顺序是:0+10101+1?

;-

最佳答案是串行模式1,即10位异步通信。

1个起始位,8个数据位,1个停止位,无奇偶校验位。

这种模式是:8-n-1(8个数据位,无奇偶位,1个停止位)模式。

完全符合你的要求。

2.大家好

嘿,嘿,让我来帮你

1串行通信模式3为9位异步通信,8个数据位和1位可作为奇偶校验位。

2根据通信协议:

如果添加了偶数校验位,则每次都将发送要发送到累加器A的数据。如果发送的8是数据位,1的数量是奇数,则9位数据1的数量是偶数。P的中值将作为要正确发送到第九位的数据发送到TB8。

如果发送的8是数据位,1的数量是偶数,则9位数据1的数量是偶数。P的中间值被正确地发送到TB8,作为要发送到第九位的数据。

3接收数据时,先将接收到的数据发送到累加器A。如果第九个接受位RB8=P,则接收的数据是正确的。

否则,对方需要重新发送。

呵呵,满意就加分。

以上解释了单片奇偶校验(单片奇偶校验是如何实现的)。这篇文章分享到这里,希望对大家有所帮助。

本文主要介绍了关于单片机偶校验(单片机奇偶校验怎么实现的)的相关养殖或种植技术,综合百科栏目还介绍了该行业生产经营方式及经营管理,关注综合百科发展动向,注重系统性、科学性、实用性和先进性,内容全面新颖、重点突出、通俗易懂,全面给您讲解综合百科技术怎么管理的要点,是您综合百科致富的点金石。
以上文章来自互联网,不代表本人立场,如需删除,请注明该网址:http://23.234.50.4:8411/article/78884.html