1-12 uart1-uart4收发
STC8H系列单片机串口通信实验摘要 STC8H系列单片机配备4个全双工异步串口,每个串口包含数据缓冲器、移位寄存器和独立波特率发生器。支持4种工作模式:同步移位寄存器(模式0)、8位UART可变波特率(模式1)、9位UART固定波特率(模式2)和9位UART可变波特率(模式3)。实验利用串口1-4分别发送0x01-0x04数据(500ms间隔),并通过接收数据控制LED显示:收到0x01时点亮对
串口基础知识
STC8H 系列单片机具有 4 个全双工异步串行通信接口。每个串行口由 2 个数据缓冲器、一个移位寄存器、一个串行控制寄存器和一个波特率发生器等组成。每个串行口的数据缓冲器由 2 个互相独立的接收、发送缓冲器构成,可以同时发送和接收数据。
引脚说明:


工作模式:
模式 0:同步移位寄存器模式(半双工)。
模式 1:8 位 UART,波特率可变。
模式 2:9 位 UART,固定波特率(由系统时钟分频)。
模式 3:9 位 UART,波特率可变。
增强功能:
支持自动地址识别(多机通信)。
独立波特率发生器(支持高精度波特率)。
支持 DMA 数据传输(需结合 DMA 模块)。
波特率配置
STC8H8K64U 的波特率可通过以下方式生成:
传统定时器模式(如定时器1或定时器2)。
独立波特率发生器(Baud Rate Generator, BRG):
模式0:

模式1 / 模式3:

模式2:

自动地址识别
多机通信:在模式 2 或 3 下,从机可通过地址识别过滤数据。
配置方法:
设置 SADDR(从机地址寄存器)。
设置 SADEN(地址掩码寄存器),定义地址匹配的位。
启用自动地址识别标志位 SM2。
中断与标志位
中断源:
发送中断(TI):数据发送完成时触发。
接收中断(RI):数据接收完成时触发。
相关寄存器:
SCON:控制串口工作模式和中断标志。
IE(中断使能寄存器):开启 ES(串口中断总开关)和 ES1/ES2(具体串口中断)。
IP(中断优先级寄存器):设置中断优先级。
实验说明
使用串口1-4分别发送0x01、0x02、0x03、0x04,时间间隔为500ms,同时若串口1-4接收到0x01,对应的LED2-LED5会点亮,若串口1-4接收到其它数据,LED2-LED5会熄灭。以串口4为例。
接线图

串口1:3.0—TXD 3.1—RXD
串口2:1.0—TXD 1.1—RXD
串口3:0.0—TXD 0.1—RXD
串口4:0.2—TXD 0.3—RXD
GND— GND
编写程序
代码说明:部分代码借鉴STC官网,根据实验改动,由于代码过只展示部分代码,完整代码可下载。




更多推荐



所有评论(0)