单片机串口通信学号显示_『干货铺子』5分钟学会单片机串口通信

强烈建议小伙伴们收藏+关注,本文可以作为工具书在设计时查询。

目录  1、串口简介 2、串口通信协议 3、232电平和TTL电平 4、串口通信硬件电路图 

0x01串口简介

串行接口是一种可以将接受来自CPU的并行数据字符,转换为连续的串行数据流发送出去,同时可将接受的串行数据流转换为并行的数据字符供给CPU的器件。一般完成这种功能的电路,我们称为串行接口电路。

0x02串口通信协议

串口按位(bit)发送和接收字节,尽管比特、字节的串行通信速率较慢,但是串口可以在使用一根线发送数据的同时用另一根线接收数据,可以同时收发数据,这种通信方式叫做全双工通信,如果通信双方只使用一根有效数据线通信,同一时间只能接收或者只能发送数据的通信方式叫做半双工通信。

串口通信协议支持全双工和半双工通信,主要看软件如何配置。

我们接下来看一下串口数据包的格式,如下图所示,一个完整的串口数据包由一个起始位、8个数据位,一个校验位和一个停止位组成。

起始位把tx拉低用来告诉接收方,我要发数据了,请接收。

数据位共8bit,也就是一个字节,这里面就是要发送的数据了。

校验位1bit,包括奇校验、偶校验、无校验等几种校验方式,奇偶校验就是看数据位里的bit为1的个数是奇数还是偶数,属于比较简易的校验方式,这个需要双方约定好。

停止位1bit,顾名思义,告诉接收方,我发送完毕了,你随意。

985528fdc67dafe65fb6b2c6b586e283.png

0x03232电平和TTL电平

232和TTL在协议层面是相同的,唯一不同在于硬件:电平表示的逻辑含义不同。

(1)TTL,单片机等微控制器中常用

逻辑高电平==’1‘==Vcc==3.3V或5V

逻辑低电平==’0‘==0V==0V

(3)RS232,电脑等常用的电平:

逻辑高电平==’0‘==负电压== -3V~-25V==常为:-13V

逻辑低电平==’1‘==正电压== 3V~25V==常为:13V

由于电平不同,即便协议相同,微控制器也不可以和电脑直接通信。

0x03串口硬件电路图

实际设计硬件电路会遇到电平转换的问题,这就涉及到TTL电平和232电平。

下图是一个典型的MAX232的串口通信电路图,MAX232芯片的作用是将单片机输出的TTL电平转换成PC机能接收的232电平或将PC机输出的232电平转换成单片机能接收的TTL电平

9bf6e0fa0cc91a39fbcde645b2e74ee7.png

MAX232在232和TTL电平直接处于一个翻译机的角色,有了这个电路,电脑和mcu就可以畅通无阻的进行串口通信了。

欢迎关注“嵌入式干货铺子”,有任何问题可以留言讨论。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值