单片机(3)

一、UART 异步串口

基础概念

UART(串行异步收发器),用于单片机之间、单片机与PC的数据通信。异步:通信双方无共用时钟线,依靠约定波特率采样。

  • 引脚:TXD发送、RXD接收、GND共地。共地是通信稳定的前提
  • 接线:设备交叉相连,TX接对方RX;单片机连PC,需要CH340 USB转串口芯片。
  • 波特率:bps,每秒传输比特,常用9600、115200
  • 特性:串行传输、先发低位;全双工,收发可同时进行。

帧结构

1帧 = 起始位(1)+数据位(8)+可选校验位+停止位(1)

空闲总线高电平,起始位拉低通知接收方。

51单片机开发流程

发送

  1. 配置串口模式1(8位数据无校验)
  2. 配置SMOD倍乘位,定时器1做波特率发生器
  3. 定时器1设为8位自动重装,写入初值TH1
  4. 向SBUF写入数据,硬件自动发送
  5. 发送完成TI置1,必须软件手动清零

接收

  1. 模式1,开启接收允许REN
  2. 配置波特率、定时器1
  3. 开启串口中断,编写中断服务函数
  4. 收到数据RI置1,读取SBUF,手动清零RI

核心考点:TI、RI硬件置1,不会自动清除。

二、DS18B20 单总线温度传感器

单总线数字温度传感器,仅一根DQ信号线通信。

  • 测温范围:-55℃ ~ +125℃
  • 供电:1.3V~5.5V;12bit分辨率,一次转换最多750ms
  • 引脚:GND、DQ通信脚、VCC电源

存储结构

9字节暂存器,前2字节存放温度LSB、MSB,剩余字节为报警阈值、配置、CRC校验。读取温度只需要前两个字节。

时序要点

时序要求严格,微秒级延时影响通信成败

  1. 复位:主机拉低总线≥480us,释放后等待传感器应答脉冲
  2. 写时序:写0拉低60120us;写1拉低115us后释放
  3. 读时序:主机拉低总线≥1us,15us内读取引脚电平

常用指令与读取流程

指令: 0xCC 跳过ROM; 0x44 启动温度转换; 0xBE 读取暂存器

读取温度完整步骤:

复位 → 发0xCC → 发0x44,等待750ms → 再次复位 → 发0xCC → 发0xBE → 读取2字节温度,换算数值

三、总结

UART异步串口,依靠波特率、中断实现数据收发,TI/RI标志需要软件清零;DS18B20单总线器件,完全依靠严格时序驱动。二者分别代表异步串口、单总线两种典型通信模型,是I2C、SPI学习的基础。

相关推荐
iCxhust13 小时前
51单片机电力载波应用开发(七)广播通讯
c语言·开发语言·单片机·嵌入式硬件·51单片机
HRTOS1 天前
HRTOS:一个名字背后的目标——不断逼近硬实时
经验分享·单片机·系统架构·51单片机
iCxhust3 天前
C语言struct结构体实现类定义
c语言·开发语言·单片机·嵌入式硬件·51单片机
HRTOS5 天前
HRTOS 任务优先级与调度模式说明
单片机·嵌入式硬件·系统架构·51单片机
WD137298015576 天前
WD5030K输入工作电压 7.5‑30V,适合12A 及以内量产项目
stm32·单片机·嵌入式硬件·51单片机
HRTOS6 天前
HRTOS 高速任务与中断嵌套的 8051 寄存器组资源说明
单片机·嵌入式硬件·系统架构·51单片机
糖糖单片机设计7 天前
基于STM32的指纹刷卡智能门禁系统设计(RC522 + AS608 + 蓝牙远程开锁 + 断电记忆)
人工智能·stm32·嵌入式硬件·51单片机·语音识别
HRTOS7 天前
HRTOS Shell继续完善:优化printf缓冲区与字符串越界保护,国庆后随新版本更新
运维·单片机·嵌入式硬件·算法·51单片机
iCxhust7 天前
51单片机电力载波应用开发(4)单片机发PC端接收
单片机·嵌入式硬件·51单片机
iCxhust8 天前
51单片机电力载波应用开发(3)载波模块点对点收发
网络·嵌入式硬件·51单片机