51单片机入门(3:串口通信)

一、UART

universal async receiver transmitter,通用异步收发器 全双工、串行、异步

RXD:数据接收信号线

TXD:数据发送信号线

二、通信方式

1、单 工 :

数据接收方和数据发送方是固定的

数据传输是通过一根信号线实现

数据传输的方向是单一的

半 双 工

通信双方既可以作为数据发送方也可以作为数据接收方(接收方和发送方不固定)

数据传输是通过一根信号线实现

数据传输的方向可以是双向的(但同一时刻数据传输呈现单一性 )

例:I2C SCL 时钟线 SDA 数据线

全 双 工

通信双方既可以作为数据发送方也可以作为数据接收方

数据传输是通过两根信号线实现

任意时刻,数据传输方向是双向的

例:UART TXD RXD

SPI SCLK 时钟线 CS 片选线 MOSI MISO

2、低位先行 : 先发送低位数据

高位先行 : 先发送高位数据

串口发送数据时,遵循 LSB优先发送原则

3、校验位

(1)奇偶校验: 无法检测偶数个 bit出错的问题

奇校验 :校验位为 '1',若数据位中'1'的个数加上校验位的 '1'保 持 '1'的总个数为奇数个,则代表奇校验通过

偶校验 :校验位'0',若数据位中 '1'的个数加上校验位的 '0'保持 '1'的总个数为偶数个,则代表偶校验通过

(2)无校验

(3)累加

4、

串行:通过一根信号线逐个bit发送数据

优缺点:

  1. 传输速度慢

  2. 硬件成本低 ,实现简单

  3. 传输距离远, 抗干扰性好( RS485 差分)

并行: 通过多根信号线多个bit同时发送

优缺点:

  1. 传输速度快

  2. 硬件成本高 ,实现复杂

  3. 传输距离近,抗干扰性差( 30米)

5、串行数据缓冲寄存器

SBUF 发送数据缓冲区

SBUF 接收数据缓冲区

6、

同步通信 :通信双方通过一根共享的时钟信号线规定数据传输的频率

异步通信 :通信双方没有共享时钟信号线规定数据传输频率,可用波特率实现类似同步

发:2400bps

收:2400bps

三、电平标准

TTL: 高电平1 :5V

低电平0: 0V,

传输距离近

四、串口通信参数

9600 8 N 1

波特率:bits per second,bps 每秒传输bit数量

2400 4800 9600 115200

8:数据位,8位数据位

N:None 无校验

O: Odd 奇校验

E:Even 偶校验

1: 停止位

五、串口中断

串口发送:轮询

串口接收:中断

练习:利用串口助手发送字符串

串口接收中断

串口发送ledon,灯亮,发送ledoff,灯灭

六、主从应答

主机 :可以发起通信,对通信具有绝对控制权

从机 :无法发起通信,只能根据主机下发指令完成对应的功能

相关推荐
开发笔记-阿牛9 小时前
CK6159A 可靠性测评:芯片工艺、环境测试与量产稳定性分析
stm32·单片机·嵌入式硬件
国科安芯9 小时前
商业航天通信载荷数字处理单元供电架构研究——基于ASP7A84AS的高精度低压差线性稳压器技术分析
前端·单片机·嵌入式硬件·fpga开发·架构·安全性测试
嵌入式ZYXC9 小时前
第8篇:《面试题:模拟地和数字地为什么要分开?怎么接?》
stm32·单片机·嵌入式硬件·面试·职场和发展
头枝9 小时前
ARM Cortex-M DWT CYCCNT 必须显式初始化,jlink调试时正常,使用时异常的问题
arm开发·stm32·单片机·问题·cyccnt
开发笔记-阿牛10 小时前
CK6159A 主控开发:多模式手电筒硬件架构、接线规范及选型参考
单片机·嵌入式硬件
一目Leizi10 小时前
通信协议完全指南
stm32·单片机·嵌入式硬件
Zyed10 小时前
[STM32]Day11-Part2硬件实现SPI读写W25Q64
stm32·单片机·嵌入式硬件
渡码桑10 小时前
STM32 TinyML实战2026:3步在单片机上跑通AI推理——从TensorFlow到Edge Impulse的嵌入式进化
人工智能·stm32·单片机
HAPPY酷10 小时前
软件模拟 I2C vs 硬件 I2C:核心异同与工程选型指南
stm32·单片机·嵌入式硬件·物联网·microsoft
芯岭技术10 小时前
MH32F103A单片机 主频216MHz,硬件兼容STM32,可以用ST的库开发
stm32·单片机·嵌入式硬件