STC15w4k32s4单片机 串口通信

串行口

STC15W4K32S4系列单片机有4个串行口,串行口1有4种工作方式,其中两种方式波特率可变,两种波特率固定。串行口2,3,4只有2种工作方式,均为波特率可变。

UART1

寄存器

串行口控制寄存器(Serial Control Register)(可位寻址)

SFR name Address bit B7 B6 B5 B4 B3 B2 B1 B0
SCON 98H name SM0/FE SM1 SM2 REN TB8 RB8 TI RI
  • SM0/FE:当PCON中的SMOD0 = 0时,该位和SM1共同指定串行通信的工作方式
SM0 SM1 工作方式 功能说明
0 0 方式0 同步移位串行方式
0 1 方式1 8位UART,波特率可变
1 0 方式2 9位UART
1 1 方式3 9位UART,波特率可变
  • SM2:方式2或方式3多机通信控制位 使用方式0,方式1时,该位应为0.
  • REN:允许禁止串行控制接收位
  • TB8:方式2或方式3中要发送的第九位数据 使用方式0,方式1时,该位不用
  • RB8:在方式2或方式3中为要接收的第九位数据 使用方式0,方式1时,该位不用
  • TI:发送中断请求标志位,方式0中发送数据第八位结束后,内部硬件自动置位,向cpu请求中断,响应中断后需软件清零。其他工作方式则在停止位开始发送时硬件置位,响应中断后需软件清零
  • RI:接收中断请求标志位,方式0中接收数据第八位结束后,内部硬件自动置位,向cpu请求中断,响应中断后需软件清零。其他工作方式则在接收到停止位的中间时刻硬件置位,向cpu请求中断,响应中断后需软件清零。

电源控制寄存器(Power Control Register)(不可位寻址)

SFR name Address bit B7 B6 B5 B4 B3 B2 B1 B0
PCON 87H name SMOD SMOD0 LVDF POF GF1 GF0 PD IDL
  • SMOD:波特率选择位,SMOD = 1时;则使串行通信方式1,2,3的波特率加倍。
  • SMOD0:帧检测有效控制位,SMOD0 = 1时,SCON寄存器的SM0/FE位用于FE(帧错误检测)功能
  • 其他与UART1无关

串行口数据缓冲寄存器(serial data buffer)

  • 两个数据缓冲器读SBUF 和 写SBUF共用一个地址

辅助寄存器(Auxiliary Register)(不可位寻址
定时器2配置

SFR name Address bit B7 B6 B5 B4 B3 B2 B1 B0
AUXR 8EH name T0x12 T1x12 UART_M0x6 TR2 T2_C/~T T2x12 EXTRAM S1ST2
  • 使用定时器1,2波特率发生器时需对该寄存器进行配置
  • T0x12:定时器0速度控制位 AUXR &= ~(1<<7);//12分频
  • T1x12:定时器0速度控制位 AUXR &= ~(1<<7);//12分频
  • T2R:定时器2允许控制位
  • T2_C/~T:控制定时器2用做定时器或计数器
  • T2x12:定时器2速度控制位 AUXR &= ~(1<<2);//12分频 AUXR |= (1<<2);//1分频
  • EXTRAM: 内部/外部RAM存取控制位 0允许,1禁止
  • S1ST2:UART1 选择T1,T2作为波特率发生器控制位 0:T1; 1:T2,此时T1释放,可以作为独立定时器使用。UART1默认选择T2作为波特率发生器

定时器2的寄存器T2H, T2L

  • 用于保存重装时间常数。

从机地址控制寄存器SADEN和SADDR

  • ???

中断允许寄存器(可位寻址)

SFR name Address bit B7 B6 B5 B4 B3 B2 B1 B0
IE A8H name EA ELVD EADC ES ET1 EX1 ET0 EX0
  • EA:总中断控制允许位
  • ES:串行口中断控制允许位

中断优先级控制寄存器可位寻址

SFR name Address bit B7 B6 B5 B4
  • 4
    点赞
  • 53
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

枫雲

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值