串口相关知识(复习自用)

本文详细介绍了串口的基本概念、单片机如51系列的UART功能、硬件电路设计、电平标准(TTL、RS232、RS485),以及通信接口类型(全双工、半双工、单工、异步同步)和串口参数(如波特率、检验位、停止位)。还特别关注了51单片机的串口操作和SBUF寄存器的作用。
摘要由CSDN通过智能技术生成

一、串口介绍

1、串口是一种应用十分广泛的通讯接口、串口成本低、容易使用、通信线路简单,可实现两个设备的互相通信。

2、单片机的串口可以使单片机与单片机、单片机与电脑、单片机与各式各样的模块互相通信(两者都拥有收发器),极大的扩展了单片机的应用范围,增加了单片机系统的硬件实力。

目前笔记本几乎没有了串口,就用usb和串口之间的电平相互转换,电脑需用到串口助手帮助收发数据的显示。

3、51单片机内部自带UART(Universal Asynchronous Receiver Transmitter,通用异步收发器),可实现单片机的串口通信。

 4、VGA接口(15个针传送视频的)和DB9(9针串口传送数据)接口外表上很像,但是针口数量是不一样的,可以百度区分下。

二、硬件电路

1、简单双向串口通信需要两根通信线(发送端TXD和接收端RXD)TXD( transmit exchange data)与RXD,要求两者交叉相连(因为TXD得连接RXD,一端发送数据一端接收数据),当只需单向传输数据时,可以直接一根通信线。

三、电平标准

电平标准是数据1和数据0 的表达方式,是认为规定的电压与数据的对应关系,串口常用的电平标准有:

TTL电平:+5V表示1,0v表示0(我们单片机常用)相对于GND的电压差,传输数据距离有限

RS232电平:-3~-15v表示1,+3~+15v表示0(反逻辑)相对于GND的电压差,传输数据距离有限

RS485电平:两线压差 +2~+6V表示1,-2~-6V表示0(差分信号,可以传输长达千米)两线电压差

四、简单了解常见通信接口的比较

先了解下单工、半双工、全双工、异步同步的概念。

全双工:同一时刻互相传输数据;

半双工:双方可以相互传输数据,但必须分时复用一根数据线(对讲机);

单工:只能有一方发送到另一方,不能反向传输(遥控);

异步:通信双方各自约定通信速率;

同步:通信双方靠一根时钟线来约定通信速率,一般同步都带时钟线;

总线:连接各个设备的数据传输线路,可挂载多个设备;

五、51单片机的UART

89C52系列单片机内集成有一个功能很强的全双工串行通信口(串行通信和并行通信的概念以及区别了解下),与传统的8051的串口完全兼容,具有四种工作方式,其中两种的波特率是可变的,另外两种固定,以供不同应用场合选用,这里只讲模式1,比较常用。

这里TXD和RXD和i/o是复用的关系,不用区分什么时候用的是i/o口什么时候用串口,只需要直接写就行,如果写的是寄存器就是使用串口,没有使用串口操作时就是使用P30/P31I/O口。

在这里看usb转TTL的下载模块可以发现,这里就是使用交叉相连的方式。

六、串口参数

波特率:串口通信的速率(发送和接收各数据位的间隔时间)

检验位:用于数据验证(奇偶校验等)

停止位:用于数据帧间隔

奇校验:保证1的个数为奇数,例如0000 0011会在后面补个1,变成:0000 0011 1

若接收的数据是 0000 0011 1就会数1的个数是奇数就判断正确。

但是若是接收的数据是 0000 01011,虽然接收数据和发送的数据不一样,但是还是会判断正确,因为1的个数是奇数,这就会出现错误,偶校验也是一样的方式,不过1的个数为偶数。

串口是串行通信,一位一位的发,如果是八位数据就没有校验位,9位数据格式多个校验位。

七、串口模式图

SBUF:串口数据缓存寄存器,物理上是两个独立的寄存器,但占用的地址是相同的,写入操作时是发送寄存器,读操作时,读出的是接收寄存器。

  • 46
    点赞
  • 34
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值