uart协议 php,嵌入式接口协议(1)—串口(UART)通讯协议

1. 串行异步通信

UART使用的是串行异步通信。

(1)串行通信即利用一条传输线将数据一位位地顺序传送。

(2)异步通信以一个字符为传输单位,通信中两个字符间的时间间隔多少是不固定的,然而在同一个字符中的两个相邻“位(bit)”间的时间间隔是固定的。

特点:通信线路简单、成本低、适用于远距离通信,且传输速度要求不高的场合。

2. 数据通信格式如下图:

2cfa2e4ccc158687d887f6658a4ddc46.png

3. 通讯中各位的意义如下:

起始位:一个逻辑“0”信号,表示传输字符的开始。

数据位:可以是5~8位逻辑“0”或“1”。如ASCII码(7位),扩展BCD码(8位)。传输方式:小端传输。

校验位:如果一组给定数据位中“1”的个数是奇数,那么偶校验位就置为 “1”,使得总的 1 的个数是偶数;如果给定一组数据位中 1 的个数是偶数,那么奇校验位就置为 1,使得总的 1 的个数是奇数。即:数据位加上这一位后,使得总的“1”的个数是偶数(偶校验)或奇数(奇校验)。

停止位:它是一个字符数据的结束标志。可以是1位、1.5位、2位的高电平。

空闲位:处于逻辑“1”状态,表示当前线路上没有资料传送。

注意:异步通信是按字符传输的,接收设备在收到起始信号之后只要在一个字符的传输时间内能和发送设备保持同步就能正确接收。下一个字符起始位的到来又使同步重新校准(依靠检测起始位来实现发送与接收方的时钟自同步的)

4. 波特率:

数据传送速率用“波特率”来表示,即每秒钟传送的二进制位数。

例如: 数据传送速率为960字符/秒,而每一个字符为10位(1个起始位,8个数据位,无校验位,1个结束位),则其传送的波特率为10×960=9600字符/秒=9600bps。

5. 逻辑分析仪捕获UART时序图,如下:

(1)无校验:

516d63c350b93f74a8af424229d94cd1.png

(2)偶校验(EVEN Parity):

cf122caf7c178610461e821c02eb3943.png

(3)奇校验(Odd Parity):

8968db36bd9bf3443a614b90ebe16fd8.png

6. 有时某些应用中串口会加上拉,其主要作用:

(1)电路保持稳定的状态,避免误触发。

(2)当有高频干扰信过来时,可以通过上拉对电源泄放掉。

(3)当串口和IIC线共用时,需要保持开漏输出,因此要加上拉。

(4)为了阻抗匹配,多是信号完整性考虑。

注意:本站所有文章除特别说明外,均为原创,转载请务必以超链接方式并注明作者出处。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值