stc15w204s串口通信
针对STC15W204S单片机的串口通信(UART),以下是使用中文的详细操作指南,包含关键步骤、寄存器配置和示例代码:
一、硬件连接
- 串口引脚:
- P3.0 (RXD):接收数据 (连接USB转TTL的TX)
- P3.1 (TXD):发送数据 (连接USB转TTL的RX)
- 电平转换:
芯片为TTL电平,需通过USB转TTL模块连接电脑,或使用MAX232芯片连接RS232设备。
二、关键寄存器配置
STC15系列使用定时器Timer1或Timer2作为波特率发生器(常用Timer1)。需配置以下寄存器:
| 寄存器 | 功能 | 推荐设置 |
|---|---|---|
SCON |
串口控制 | 0x50 (模式1,允许接收) |
AUXR |
辅助寄存器 | 0x40 (Timer1使用1T模式) 或 0x00 (12T模式) |
TMOD |
定时器模式 | 0x20 (Timer1模式2:8位自动重载) |
PCON |
波特率加倍 | 0x80 (SMOD=1,波特率加倍) 或 0x00 |
TH1/TL1 |
波特率初值 | 根据公式计算 |
三、波特率计算
公式:
[
\text{波特率} = \frac{\text{定时器时钟}}{\frac{32}{SMOD} \times (256 - \text{TH1})}
]
- 使用1T模式 (
AUXR |= 0x40) 时,定时器时钟 =系统时钟 - 使用12T模式 (
AUXR &= ~0x40) 时,定时器时钟 =系统时钟/12
常用波特率对应TH1值(假设系统时钟为11.0592MHz):
- 9600:
AUXR=0x40,TH1=0xFA(1T模式) 或TH1=0xFD(12T模式) - 115200:
AUXR=0x40,TH1=0xFF(1T模式)
? 注意:建议使用11.0592MHz晶振以兼容标准波特率。
四、初始化代码示例(模式1,9600波特率)
#include <STC15.H>
void UART_Init() {
// 设置串口模式
SCON = 0x50; // 模式1,允许接收
AUXR = 0x40; // Timer1使用1T模式
TMOD = 0x20; // Timer1模式2(8位自动重载)
TH1 = 0xFA; // 9600波特率@11.0592MHz (1T)
TL1 = 0xFA;
PCON &= 0x7F; // SMOD=0 (波特率不倍增)
// PCON |= 0x80; // 如需波特率倍增(如19200),启用此行
TR1 = 1; // 启动Timer1
ES = 1; // 开启串口中断(可选)
EA = 1; // 开总中断
}
五、数据收发函数
1. 发送一个字节
void UART_SendByte(char dat) {
SBUF = dat; // 数据写入发送缓冲
while (!TI); // 等待发送完成标志
TI = 0; // 清除标志
}
2. 接收一个字节(轮询方式)
char UART_ReceiveByte() {
while (!RI); // 等待接收完成
RI = 0; // 清除标志
return SBUF; // 返回数据
}
3. 发送字符串
void UART_SendString(char *str) {
while (*str) {
UART_SendByte(*str++);
}
}
六、串口中断接收(推荐方式)
void UART_ISR() interrupt 4 {
if (RI) {
RI = 0; // 清除接收中断标志
char recv = SBUF; // 获取数据
// 自定义处理逻辑(例如:回传数据)
UART_SendByte(recv);
}
if (TI) {
TI = 0; // 清除发送中断标志(可选)
}
}
七、常见问题排查
-
通信失败:
- 检查硬件连接(TX-RX交叉连接)
- 确认PC端波特率与单片机一致
- 检查系统时钟频率(
#define FOSC 11059200UL) - 验证
AUXR是否设置正确(1T/12T模式)
-
数据乱码:
- 晶振频率必须是11.0592MHz或22.1184MHz
- 检查波特率加倍位
SMOD设置
-
下载程序后不通信:
- STC单片机下载后自动冷启动,无需断电
- 确认下载时未占用串口(如关闭串口助手)
八、进阶配置
- 多机通信:使用
SM2和TB8/RB8(模式2/3) - 硬件流控:部分型号支持RTS/CTS(需检查手册)
- 奇偶校验:通过
SCON的RB8/TB8位实现
⚠️ 重要:STC15W204S为1T单片机,时序与传统12T 8051不同,务必使用新配置文件。
实际开发请参考STC官方手册《STC15系列单片机技术手册》。
STC15W204S-35I-SOP16封装STC(宏晶)MCU微控制器单片机芯片
1970-01-01 08:00:00 至 1970-01-01 08:00:00
51单片机电路第一次上电无法下载程序
使用stc15W204s单片机,第一次上电时复位键无法工作,不能下载程序,已下载过程序的单片机焊接在这个电路上可正常下载。
基于stc15w204s和ds1302时钟模块控制电机,oled显示
基于stc15w204s和ds1302时钟模块控制电机,oled显示前阵子轮到我早上6:00开门(输入密码后遥控切换大门为常开模式),起床肯定是不可能的啦!于是就想到了做这么一个东西材料sg90
资料下载
张亮
2021-12-23 19:26:47
STC15F408AS串口发送数据实例
/*-------------------------------------------------------------------------------- * 项目名称: 串口通信测试程序 V1.0
资料下载
佚名
2021-11-29 12:06:04
STC15W408AS单片机简单串口通信示例
STC15W408AS单片机串口通信示例本示例展示将收到的数据内容,返回发送出去。实例代码#include "
资料下载
佚名
2021-11-18 14:06:02
基于stc15w204s和ds1302时钟模块控制电机
基于stc15w204s和ds1302时钟模块控制电机,oled显示前阵子轮到我早上6:00开门(输入密码后遥控切换大门为常开模式),起床肯定是不可能的啦!于是就想到了做这么一个东西材料sg90
STC15W204S-35I SOP16定时器的相关资料推荐
文件:/** * STC15W204S-35I SOP16 * Timer 2 - 16 bit, auto-reload *//** * Interrupt Registers Definition */sfr IE = 0xA8; /* Interrupt Enab
STC15F408AS串口发送数据实例分享
/*-------------------------------------------------------------------------------- * 项目名称:串口通信测试程序 V1.0.0 *
用stc15w204s-sop8单片机解码
ev1527、pt2262等433/315MHZ芯片用stc15w204s-sop8单片机解码,含源程序硬件介绍:软件介绍:单片机引脚定义:解码原理:主要代码 pt2262.c头文件
stc15w201s系列sop8应用电路图
stc15w201s系列sop8应用电路图,下图为STC15W201S系列单片机引脚图:主要使用SOP16封装的STC15W204S。下表为管脚
求大神写个stc15w204s单片机怎么写步进电机正反转的程序
我是一个单片机爱好者,现在手上有几个stc15w204s16脚的单片机,我觉得这个单片机是内带晶振感觉挺好奇的,想用一个stc15w204s单片机控制步进电机正反转但是不知道怎么写按照
换一换
- 如何分清usb-c和type-c的区别
- 中国芯片现状怎样?芯片发展分析
- vga接口接线图及vga接口定义
- 芯片的工作原理是什么?
- 华为harmonyos是什么意思,看懂鸿蒙OS系统!
- 什么是蓝牙?它的主要作用是什么?
- ssd是什么意思
- 汽车电子包含哪些领域?
- TWS蓝牙耳机是什么意思?你真的了解吗
- 什么是单片机?有什么用?
- 升压电路图汇总解析
- plc的工作原理是什么?
- 再次免费公开一肖一吗
- 充电桩一般是如何收费的?有哪些收费标准?
- ADC是什么?高精度ADC是什么意思?
- dtmb信号覆盖城市查询
- EDA是什么?有什么作用?
- 中科院研发成功2nm光刻机
- 苹果手机哪几个支持无线充电的?
- type-c四根线接法图解
- 华为芯片为什么受制于美国?
- 怎样挑选路由器?
- 元宇宙概念股龙头一览
- 锂电池和铅酸电池哪个好?
- 如何进行编码器的正确接线?接线方法介绍
- 什么是场效应管?它的作用是什么?
- 虚短与虚断的概念介绍及区别
- 晶振的作用是什么?
- 大疆无人机的价格贵吗?大约在什么价位?
- amoled屏幕和oled区别
- 苹果nfc功能怎么复制门禁卡
- 单片机和嵌入式的区别是什么
- 复位电路的原理及作用
- BLDC电机技术分析
- dsp是什么意思?有什么作用?
- 苹果无线充电器怎么使用?
- iphone13promax电池容量是多少毫安
- 芯片的组成材料有什么
- 特斯拉充电桩充电是如何收费的?收费标准是什么?
- 直流电机驱动电路及原理图
- 传感器常见类型有哪些?
- 自举电路图
- 苹果笔记本macbookpro18款与19款区别
- 通讯隔离作用
- 新斯的指纹芯片供哪些客户
- 伺服电机是如何进行工作的?它的原理是什么?
- 无人机价钱多少?为什么说无人机烧钱?
- 以太网VPN技术概述
- 手机nfc功能打开好还是关闭好
- 十大公认音质好的无线蓝牙耳机