串口(USART)通信-串口通讯协议简介

物理层:规定通讯系统中具有机械、电子功能部分的特性,确保原始数据在物理媒体的传输。其实就是硬件部分。

协议层:协议层主要规定通讯逻辑,统一收发双方的数据打包、解包标准。其实就是软件部分。

简单来说物理层规定我们用嘴巴还是用肢体来交流,协议层则规定我们用中文还是英文来交流。

物理层

  1. RS232标准
  2. USB转串口(TTL)
  3. 原生的串口到串口(TTL->TTL)

RS-232 与 TTL 电平区别

TTL:一般是直接从单片机或者芯片里面出来的电平,逻辑1为2.4V-5V逻辑0为0-0.5v(一般高电平位5V或者3.3V,低电平为0)

RS232: 逻辑 1-15V~-3V逻辑 0:+3V~+15V(低电平为-15V,高电平为15V峰值差别大,不以0为低电平,)

RS232标准串口通讯结构图

控制器AB可以理解为芯片,出来的是TTL电平,经过电平转换芯片(MAX3232,SP3232),转换成RS232电平.

RS232串口一般用于工业,对于防止静电....很好...

对于没有232串口的STM32板子,可以去某宝买一个232串口,一般长这个样.(RXD TXD VCC GND 黑色的小块为电平转换芯片 银色的接口为DB9接口,DB9串口先将两个DB9接口连接,将RXD TXD分别连接STM32的USTAR串口的引脚,VCC GND接好板子相应的位置(杜邦线),也可以用USB转串口线连接(电平转换芯片为CH340,PL2303,CP2102)电脑上,需要安驱动.)

USB转(RXD<->TXD TXD<->RXD)

原生的串口到串口

1、原生的串口通信主要是控制器跟串口的设备或者传感器通信,不需要经过电平转换芯片来转换电平,直接就用TTL电平通信

2、GPS模块、GSM模块、串口转WIFI模块、HC04蓝牙模块

协议层

串口数据包的基本组成

起始位:由1个逻辑 0 的数据位表示

结束位:由 0.5、 1、 1.5 或 2 个逻辑 1 的数据位表示

有效数据:在起始位后紧接着的就是有效数据,有效数据的长度常被约定为 5、 6、 7 或 8 9位长

校验位:可选,为的是数据的抗干扰性。

校验方法分为:

1-奇校验(odd)、   2-偶校验(even)

3-0 校验(space)、 4-0校验(mark)

5-无校验(noparity)

奇校验(odd) :有效数据和校验位中“ 1”的个数为奇数

比如一个 8 位长的有效数据为: 01101001,此时总共有 4 个“ 1”,为达到奇校验效果,校验位为“ 1”,最后传输的数据将是 8 位的有效数据加上 1 位的校验位总共 9 位

偶校验(even) :有效数据和校验位中“ 1”的个数为偶数

比如一个 8 位长的有效数据为: 01101001,此时总共有 4 个“ 1”,为达到偶校验效果,校验位为“ 0”,最后传输的数据将是 8 位的有效数据加上 1 位的校验位总共 9 位

0 校验是不管有效数据中的内容是什么,校验位总为“ 0”。

1 校验是校验位总为“ 1”。

无校验就是数据包中不包含校验位

串口(USART)通信-串口通讯协议简介相关推荐

  1. MODBUS-RTU通讯协议简介

    MODBUS-RTU通讯协议简介 什么是MODBUS? MODBUS 是MODICON公司最先倡导的一种软的通讯规约,经过大多数公司 的实际应用,逐渐被认可,成为一种标准的通讯规约,只要按照这种规约进 ...

  2. Modbus通讯协议简介

    Modbus协议简介 Modbus协议最初由Modicon公司开发出来,此协议支持传统的RS-232.RS-422.RS-485和以太网设备,许多工业设备,包括PLC,DCS,智能仪表等都在使用Mod ...

  3. Redis和MongoDB通讯协议简介

    为什么80%的码农都做不了架构师?>>>    Redis Redis的通讯协议可以说大集汇了--消息头标识,消息行还有就行里可能还有个数据块大小描述.首先Redis是以行来划分,每 ...

  4. PLC通信协议【西门子】几种常见的连接口和通讯协议简介

    协议背景 1,mpi接口.dp接口.rs485接口.rs232接口具体区别? (一)mpi接口.dp接口:这两者均为基于RS485接口(可以理解为硬件标准).mpi与dp是通信协议的名称(可以理解为软 ...

  5. 即时通讯有标准 IM的四种即时通讯协议简介

    IM(Instant Messaging)正在被广泛地采用,特别是在公司与它们的客户互动联接方案上.为了解决即时通讯的标准问题,IETF成立了专门的工作小组,研究和开发与IM相关的协议. 目前IM有四 ...

  6. STM32的串口通讯协议

    目录 一.串口协议 1.1 串口通信协议简介 1.1-1 物理层 1.1-2 协议层 1.2 STM32的USART简介 二.USB/TTL转232串口方法 2.1 三种接口简介 2.2 转换方法 2 ...

  7. 485通讯协议在java中的应用

    485通讯协议在java中的应用(一) 前言 之前我博客中有提到,在javaWeb应用系统中进行串口通讯的实现. 博客地址:java串口通讯,可实现javaWeb页面同时控制多个串口,有demo 很多 ...

  8. 经过整理的Modbus通讯协议详解(一)

    Modbus通讯协议简介 Modbus协议 Modbus协议最初由Modicon公司开发出来,在1979年末该公司成为施耐德自动化(Schneider Automation)部门的一部分,现在Modb ...

  9. 如何制定好的串口通信的指令通讯协议

    通信按照数据的传输方式可以分为串行通信和并行通信. 按照数据的同步方式可以分为同步传输和异步传输. 按照数据的传输方向与时间关系,可以分为单工通信.半双工通信.全双工通信. 相关定义: 串行通信:使用 ...

最新文章

  1. 高精度垃圾分类模型开发与硬件集成
  2. 100天后 - 100-days-later
  3. 注册asp.net 4.0 到iis
  4. unicode环境下用CFile读取txt的若干疑惑,该如何处理
  5. win oracle 重启命令,Windows下命令行如何启动Oracle10g?
  6. glassfish_RIP GlassFish –感谢所有的鱼。
  7. 计算机教案画圆形和方形,画方形和圆形的教案
  8. vue 监听页面滚动事件:触发animate.min.css动画特效
  9. 我的react组件化开发道路(二) 分页 组件开发
  10. 敏捷软件开发VS.传统软件工程
  11. Unity3D ----- 制作信息滚动提示(NGUI)
  12. java 判断5张牌的组成
  13. 数学基础 - 第十一章 三角形
  14. 冷藏温度范围_食品冷藏的温度是多少
  15. Warning: Accessing non-existent property ‘cd‘ of module exports inside circular dependency
  16. spring源码解析之IOC核心体系结构
  17. 函数中的arguments
  18. 数据治理的成功要素2:数据架构设计
  19. 叮咚DsV1.0pj版(去授权)
  20. 【快速上手教程1】疯壳·开源编队无人机-开机测试

热门文章

  1. java并发:初探消费者和生产者模式
  2. Floyed(floyd)算法详解
  3. mysql InnoDb存储引擎索引
  4. 洛谷1048 采药(01背包)
  5. docker 笔记(2) -- 镜像
  6. pta 习题集 5-2 找出不是两个数组共有的元素 (5分)
  7. commons-lang(一)
  8. JavaScript 编程精解 中文第三版 十二、项目:编程语言
  9. 笨办法学 Python · 续 第一部分:预备知识
  10. 无法连接NVIDIA驱动:NVIDIA-SMI has failed because it couldn’t communicate with the NVIDIA driver