单片机串行通讯口的工作方式详解
21ic 2022-04-22

1.SBUF

发送SBUF和接收SBUF共用一个地址99H 。

1)发送SBUF存放待发送的8位数据,写入SBUF将同时启动发送。

发送指令:MOV SBUF,A

2)接收SBUF存放已接收成功的8位数据,供CPU读取。

读取串行口接收数据指令:MOV A,SBUF

2.串行口控制/状态寄存器SCON(98H)

SM0,SM1:选择串行口4种工作方式。

SM2:多机控制位,用于多机通讯。

REN:允许接收控制位,REN=1,允许接收;REN=0,禁止接收。

TB8发送的第9位数据位,可用作校验位和地址/数据标识位

RB8:接收的第9位数据位或停止位

TI:发送中断标志,发送一帧结束,TI=1,必须软件清零

RI:接收中断标志,接收一帧结束,RI=1,必须软件清零

3.节电控制寄存器PCON

SMOD(PCON.7):波特率加倍控制位。

SMOD=1,波特率加倍, SMOD=0,则不加倍。

串行接口的工作方式

SM0,SM1选择四种工作方式。

(1) 方式0:同步移位寄存器方式。用于扩展并行I/O接口。

1.一帧8位,无起始位和停止位。

2.RXD:数据输入/输出端。TXD:同步脉冲输出端,每个脉冲对应一个数据位。

3.波特率B = fosc/12 如: fosc=12MHz, B=1MHz,每位数据占1ms。

4.发送过程:写入SBUF,启动发送,一帧发送结束,TI=1。接收过程:REN=1且RI=0,启动接收,一帧接收完毕,RI=1。

(2) 方式1:8位数据异步通讯方式。

1.一帧10位:8位数据位,1个起始位(0),1个停止位(1)。

2.RXD:接收数据端。 TXD:发送数据端。

3.波特率:用T1作为波特率发生器,B=(2SMOD/32)×T1溢出率。

4.发送:写入SBUF,同时启动发送,一帧发送结束,TI=1。接收:REN=1,允许接收。接收完一帧,若RI=0且停止位为1 (或SM2=0),将接收数据装入SBUF,停止位装入RB8,并使RI=1;否则丢弃接收数据,不置位RI。

(3) 方式2和方式3:9位数据异步通讯方式。

1.一帧为11位:9位数据位,1个起始位(0),1个停止位(1)。 第9位数据位在TB8/RB8中,常用作校验位和多机通讯标识位。

2.RXD:接收数据端,TXD:发送数据端。

3.波特率: 方式2:B=(2SMOD/64)×fosc 。

方式3:B=(2SMOD/32)×T1溢出率 。

4.发送:先装入TB8,写入SBUF并启动发送,发送结束,TI=1。接收:REN=1,允许接收。接收完一帧,若RI=0且第9位为1 (或SM2=0),将接收数据装入接收SBUF,第9位装入RB8,使RI=1;否则丢弃接收数据,不置位RI。

声明: 本文转载自其它媒体或授权刊载,目的在于信息传递,并不代表本站赞同其观点和对其真实性负责,如有新闻稿件和图片作品的内容、版权以及其它问题的,请联系我们及时删除。(联系我们,邮箱:evan.li@aspencore.com )
0
评论
  • 相关技术文库
  • 处理器
  • DSP
  • CPU
  • GPU
  • 暂存器介绍以及与寄存器区别

    [导读]暂存器-介绍用来暂存由数据总线或通用寄存器送来的操作数,并把它作为另一个操作数。寄存器定义寄存器是中央处理器内的组成部份。寄存器是有限存贮容量的高速存贮

    06-28
  • JLINK在ADS下调试心得

      文章是对LPC2148而写的,但是对三星的44B0芯片同样适用,只需要在选择时将相应的CPU选择的S3C44B0就可以了。  JLINK在ADS下调试心得 

    06-28
  • DSP控制的UPS组成结构

    一、数字控制UPS的应用优势有了高速数字信号处理芯片的支持,采用数字化的控制策略不仅可以较好的解决UPS电源模拟控制里的有关问题,而且还增加了UPS电源模拟控制

    06-21
  • 8核浮点型DSP双千兆网接口硬软件设计

      千兆网络接口具有数据传输速率快、连接方便、可以即插即用的优点,使得其应用较为广泛。随着电子技术和处理器的发展,很多应用场合的数据通信速率超过千兆网口的实际传

    06-16
  • DSP编程技巧:main函数运行之前,你需要知道的

      作者:paradoxfx  在一个C/C++程序能正常运行之前,相关的C/C++运行时(run-time)环境首先要正确建立。在CCS软件编程的情况下,C/

    06-16
  • 采用DSP控制器的常见误解

      马达控制设计人员近来在家用电器产品与伺服驱动器等各种应用中的发展都遇到了障碍,必须在控制器性能或昂贵的价格之间进行选择。大多数马达控制应用本身成本较低。获得

    06-15
  • CPU多核和多线程技术

      采用多核技术提升CPU马力,是一种通过硬件提供更高系统性能的日益常见的做法。即使对许多视成本和功耗为重要设计考虑的大量消费性应用,也是如此。但是,升级到多核

    06-06
  • PCIe测控平台,计算机实时控制系统稳定低延迟优化设计

    微机电(MEMS)陀螺广泛应用于航空、汽车自动化和消费类电子产品等领域,按照振动结构的不同,主要分为线振动陀螺和旋转振动陀螺。随着MEMS陀螺成本功耗不断降低、

    06-02
  • 指令周期、机器周期和时钟周期之间的关系

    时钟周期时钟周期也称为振荡周期,定义为时钟脉冲的倒数(时钟周期就是单片机外接晶振的倒数,例如12M的晶振,它的时钟周期就是1/12us),是计算机中的最基本的、

    05-26
  • CPU、MPU、MCU、SOC、SOPC之间的关系和区别

    在嵌入式开过程,会经常接触到一些缩写术语概念,这些概念在嵌入式行业中使用率非常高,下面我们就解释一下这些概念之间的关系和区别:1、CPU(CentralProc

    05-26
  • 深入理解ARM的三个寄存器

    深入理解ARM的这三个寄存器,对编程以及操作系统的移植都有很大的裨益。1、堆栈指针r13(SP):每一种异常模式都有其自己独立的r13,它通常指向异常模式所专用

    05-24
  • DSP+CPLD的载波移相多电平PWM实现

      1引言  随着电力电子技术和电力半导体技术的迅速发展,中压大功率传动设备不仅提高了资源的利用率,同时还降低了生产的成本,虽然其电路的拓扑结构和控制技术已经比

    05-19
下载排行榜
更多
广告