IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 嵌入式 -> 串口通讯技术 -> 正文阅读

[嵌入式]串口通讯技术

1.串口介绍:①串口:一种应用十分广泛的通讯接口。成本低、容易使用、通信线路简单,可实现
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?两个设备的互相通信。
? ? ? ? ? ? ? ? ? ? ?②51单片机串口:?资源:内部自带UART(Universal Asynchronous Receiver
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? Transmitter,通用异步收发器),可实现单片机的串口通
?????????????????????????????????????????????????????????????????信。
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ??作用:可以使单片机与单片机、单片机与电脑、单片机与各式各
?????????????????????????????????????????????????????????????????样的模块互相通信,极大的扩展了单片机的应用范围,? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?增强了单片机系统的硬件能力。
? ? ? ? ? ? ? ? ? ? ?③硬件电路:?
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ??
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ??电平标准:数据1和数据0的表达方式,是传输线缆中人为规定的电压
????????????????????????????????????????????????????????????????与数据的对应关系。
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ??串口常用的三种电平标准(采用二进制来表示数据时):
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ??TTL电平(晶体管-晶体管逻辑电平):+5V表示1,
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ??0V表示0。
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ??RS232电平:-3~-15V表示1,
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? +3~+15V表示0。
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ??RS485电平:两线压差+2~+6V表示1,
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? -2~-6V表示0。
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?(差分信号)

? ? ? ? ? ? ? ? ? ? ?④常见通信接口比较:
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?

2.串行通讯基础:
? ? ? ? ? ? ? ? ? ? ? ? ? ①通讯:部件之间的数字信号传输→方式:?并行通讯:数据的各位同时传送
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ??

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?串行通讯:数据一位一位地顺序传送
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ??

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?

? ? ? ? ? ? ? ? ? ? ? ? ? ②单工通信与双工通信:
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?

? ? ? ? ? ? ? ? ? ? ? ? ? ③总线:连接各个设备的公共数据传输线路。

? ? ? ? ? ? ? ? ? ? ? ? ? ④异步通讯与同步通讯(串行通讯按串行数据的时钟方式分类):
???????????????????????????????(1)异步通讯:通信中的发送端和接收端,使用各自的时钟控制数据的发送
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 和接收。(“各自约定通讯速率”
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 过程中,两个字符帧(以字符为单位组成)之间的时间间隔是
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 不固定的,而在同一个字符帧内各位的时间间隔是固定的。
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?【注:发送端和接收端的时钟控制各自独立,互不同步,
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ??但时钟需尽可能一致以便协调】
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ???缺点:因位功能的占用、间隙存在使传输效率较有降低
?????????????????????????????????????????字符帧(又称:数据帧):起始位+数据位+奇偶校验位+停止位
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 【注:奇偶校验规则:采用数据位后面补码的方式。
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?当通讯双方约定为奇校验时,若数据位有奇数个“1”,则补码
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?为“0”;若数据位有偶数个“1”,补码为“1”以凑齐奇数个
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?“1”。
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?当通讯双方约定为偶校验时,若数据位有奇数个“1”,则补码
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?为“1”以凑齐偶数个“1”;若数据位有偶数个“1”,补码为“0”以
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?保证偶数个?“1”。】
?????????????????????????????????????????波特率:每秒钟传送二进制数码的位数,也叫比特数。表示数据传输的
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 速度

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 【单位:b/s(位/秒)或 bps(bit per second)】
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?通常,异步通信的波特率为50~19200bps,一般为1200的整
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?数倍。
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? {注:字符的实际速率速度是每秒内所传字符帧的帧数}
?????????????????????????????????????????异步串口(如:UART):无专门的时钟线,只有1-2根数据线,收发双
?????????????????????????????????????????????????????????????????????????????????????方依据事先约定好的协议通信。
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?可靠性相对较差,速率在1Mbps以下。
???????????????????????????????(2)同步通信:发送端时钟建立对接收方时钟的直接控制,使双方达到完全
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 同步。(“靠一根时钟线约定通讯速率”
?????????????????????????????????????????实现方式:Ⅰ.外同步:数据发送之前,发送端发送时钟信号,接收端
????????????????????????????????????????????????????????????????????????????????接收此时钟信号后与其评率固定。
??????????????????????????????????????????????????????????????Ⅱ.自同步:接收端检测接收同步字符,准备接收数据,然
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?后连续发送整组数据。
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?(同步字符+数据字符+校验字符CRC)
?????????????????????????????????????????同步串口(如:SPI、IIC、IIS):具有至少一根时钟线、1-2根数据线
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?的串行通讯方式,利用时钟沿对齐数
?????????????????????????????????????????????????????????????????????????????????????????????????据。
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?较为可靠,可以实现很高的通讯速率
???????????????????????????????????????????????????????????????????????????????????????????????(1Mbps以上,可达Gbps级别)。

3.51单片机的串行接口:
?????????????????????????资源:内部集成1~2个可编程通用异步串行通信接口(UART),采用全双工制
??????????????????????????????????????式。有四种工作方式,可通过软件编程设置为8位、10位和11位的帧格
??????????????????????????????????????式,并能设置各种波特率。
?????????????????????????串行口结构:
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?
?????????????????????????设置工作方式(51单片机有四种工作方式,通过写串口控制寄存器来设置):
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? (1)串行口控制寄存器SCON(Serial Control Register):
? ? ? ?? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?? ??
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? (2)串行口工作方式:
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?①方式0:
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?? ? ? ????

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?②方式1:
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ??

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?③方式2:
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?④方式3:波特率可变的11位UART通信方式。除波特率外,方式3与
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?方式2完成相同。


? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? (3)波特率设置:
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?①介绍:
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?(注:选用11.0592MHz晶振的原因:
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ???

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?②设置串口波特率步骤:
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?③常用的波特率及获得方法:
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ??

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?④51单片机串行通讯中断服务程序格式:
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?

4.串行通讯协议:
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ①通信协议:
?????????????????????????????????????????概念:为成功通讯而设置的语言及规则的配合
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?包括内容:优先权、唤醒访问、握手、幅度、速度等等
?????????????????????????????????????????三要素:语法(“怎么讲”)、语义(“讲什么”)、定时顺序(“事件如
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 何”)

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ②串行通讯协议:
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ㈠
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ??

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ㈡
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?? ?
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? Ⅰ.常用串行通讯协议:
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ??

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? Ⅱ.EIA串行通讯标准:
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?

5.数据显示模式:
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ①HEX模式、十六进制模式、二进制模式:以原始数据的形式显示

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ②文本模式/字符模式:以原始数据编码后的形式显示
????????????????????????????(注:以ASCII码的表示为标准。如:十进制数65~90表示英文字母A~Z;
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?'a'由十进制数97~122表示,显示的是十六
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?进制数61。)

6.程序试验:
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ①串口向计算机发送数据(注:MUC只发送不接收)

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ②计算机通过串口控制LED状态:

  嵌入式 最新文章
基于高精度单片机开发红外测温仪方案
89C51单片机与DAC0832
基于51单片机宠物自动投料喂食器控制系统仿
《痞子衡嵌入式半月刊》 第 68 期
多思计组实验实验七 简单模型机实验
CSC7720
启明智显分享| ESP32学习笔记参考--PWM(脉冲
STM32初探
STM32 总结
【STM32】CubeMX例程四---定时器中断(附工
上一篇文章      下一篇文章      查看所有文章
加:2022-04-14 00:28:41  更:2022-04-14 01:08:38 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/26 5:25:06-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码