首页 > 其他 > 详细

计算机系统的通信自己理解版本

时间:2018-11-17 12:59:50      阅读:177      评论:0      收藏:0      [点我收藏+]

周六整理周三讲的东西,内心很崩溃呜呜呜,笔记还不在身边!

首先自己回忆一下吧,看看自己记住的符不符合那个遗忘曲线:

一、通信方式,也就是说两台计算机或者单片机收发数据,标准的ASCII码是0-127,用7位就可以表示出来,除此之外128-255是扩展的ASCII码。也就说两台单片机靠发送一串串由二进制代表的ASCII码就可以完成通信。

二、在通信的过程中,需要解决的最大问题——时间的问题,接受的计算机怎么知道这一串数码,哪一部分是第一个字符,哪一部分是第二个字符?解决方法有两种:一种是同步{?},也就是一台单片机在发送数据的时候,将时间也通过一根线发送过去;第二种是异步{?},不需要传时间,只给标志位:数据发送结束和空闲阶段是高电平,开始发送数据是低电平。

三、一般中间发送8帧,或者9帧,验证码也算在其中,再加上开始和终止的2位,传送一个字符一共需要10位。

四、关于波特率:波特率也就是一秒钟内收发数据的比特数bps。

五、一般总线时钟,但需要把总线时钟分频成收发器内部时钟,再把收发器内部时钟除以8、12、16之后变成位时钟(也就是波特率)。内部时钟的存在是很有理由的,USART(通用同步/异步收发器)需要用更高的频率对来的高低电平进行检测,来判断此时的状态,是高低跳变?还是高电平?

技术分享图片

六、关于USART内部的电路和关键寄存器

技术分享图片

关键部分是上面的灰色方框里的4个寄存器。

技术分享图片

七、TXE标志位:刚开始的时候是1,表示可以开始写入数据。在USART_DR寄存器中写入要发送的数据后自动清除TXE位,数据已经由TDR传送到移位寄存器&&发送数据已经开始&&DR寄存器是空的时,TXE寄存器就会变成1,表示下一个数据可以写入TXE中去了,且不会覆盖之前的数据。

计算机系统的通信自己理解版本

原文:https://www.cnblogs.com/dadidelearning/p/9973302.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!