MCS-51的串行口有哪几种工作方式?

如题所述

(1)立即寻址:操作数就写在指令中,和操作码一起放在程序存贮器中。把“#”号放在立即数前面,以表示该寻址方式为立即寻址,如mov A,#20H。

(2)寄存器寻址:操作数放在寄存器中,在指令中直接以寄存器的名来表示操作数地址。如MOV A,R0就属于寄存器寻址,即R0寄存器的内容送到累加器A中。

(3)直接寻址:操作数放在单片机的内部RAM某单元中,在指令中直接写出该单元的地址。如前例的ADD A,70H中的70H。

(4)寄存器间接寻址:操作数放在RAM某个单元中,该单元的地址又放在寄存器R0或R1中。 如果RAM的地址大于256,则该地址存放在16位寄存器DPTR(数据指针)中,此时在寄存器名前加@符号来表示这种间接寻址。如MOV A,@ R0。

(5)变址寻址:指定的变址寄存器的内容与指令中给出的偏移量相加,所得的结果作为操作数的地址。如MOVC A,@A+DPTR。

(6)相对寻址:由程序计数器中的基地址与指令中提供的偏移量相加,得到的为操作数的地址。如SJMP rel。

(7)位寻址:操作数是二进制中的某一位,其位地址出现在指令中。如SETB bit。

扩展资料

MCS51单片机的内部总体结构其基本特性如下:8位CPU、片内振荡器、4k字节ROM、128字节RAM、21个特殊功能寄存器、32根I/O线、可寻址的64k字节外部数据、程序存贮空间、2个16位定时器。

计数器中断结构:具有二个优先级、五个中断源、一个全双工串行口、位寻址(即可寻找某位的内容)功能,适于按位进行逻辑运算的位处理器。

除128字节RAM、4k字节ROM和中断、串行口及定时器模块外,还有4组I/O口P0~P3,余下的就是CPU的全部组成。

把4kROM换为EEPROM就是8751的结构,如去掉ROM/EEPROM部分即为8031,如果将ROM置换为Flash存贮器或EEPROM,或再省去某些I/O,即可得到51系列的派生品种,如89C51、AT89C2051等单片机。单片机各部分是通过内部的总线有机地连接起来的。

参考资料来源:百度百科-MCS51

温馨提示:内容为网友见解,仅供参考
第1个回答  推荐于2017-09-25
四种工作方式啊
1、方式0
串行接口的工作方式0为移位寄存器I/O方式。在串行口外接移位寄存器以扩展I/O接口,也可以外接串行同步I/O的设备。
(1)方式0输出
  串行口以方式0发送时,数据以RXD端串行输出,TXD端输出同步信号。当一个数据写入串行口发送缓冲器以后,就启动串行口发送器以振荡频率的十二分之一的波特率,将数据从RXD端串行输出。
(2)方式0输入
  当串行口定义为方式0并置位REN后,便启动串行口以方式0接收数据,此时RXD端为数据输入端,TXD端为同步脉冲信号输出端。接收器以振荡率的十二分之一的波特率接收RXD端输入的数据信息。但接收器接收到8位数据时,置1中断标志RI。
2、方式1
串行接口定义为工作方式1时,则被控制为8位的异步通讯接口,传送一帧信息为10位,其中1位为起始位,8位数据位(先低位后高位),1位停止位。
(1)方式1输出
串行接口以方式1发送时,数据由TXD端输出。CPU执行一条数据写入发送缓冲
器SBUF的指令(例如,MOV  SBUF,A),数据字节写入SBUF后,便启动串行口发送器发送,发送完一帧信息,置1放送中断标志TI。
(2)方式1输入
串行口以方式1接收时,数据从RXD端输入。在REN置1以后,就允许接收器接收。接收器以所建立的波特率的16倍分频计数器,以便实现时间同步。计数器的16个状态把一位的时间等分成16份,在每位时间的第7、8和9个计数状态,位检测器采样RXD的值,接收的值是3次采样中取至少二次相同的值,以排除噪声的干扰。如果在起始接收的值不是0,则起始位无效,复位接收电路。在检测到另一个1到0的跳变时,再重新启动接收器。如果接收到值为0,起始位有效,则开始接收本帧的其余信息。当RI=0并且接收到的停止位为1(或SM2=0)时,停止位进入RB8,接收到的8位数据进入接收缓冲器SBUF,置位RI中断标志。接着接收便搜索另一帧信息的起始位。
3、方式2和方式3
串行接口工作方式2和方式3时,则被定义为9位的异步通信接口。传送一帧信息为11位,其中1位起始位,8位数据位(从低位至高位),1位是附加的可程控为1或0的第9位数据,1位停止位。
方式2和方式3的差别仅仅在于波特率不一样,方式2的波特率是固定的,波特率为2SMOD/64(振荡频率);方式3的波特率是可变的,波特率=2SMOD/32(T1的溢出率)。
方式2和方式3在发送和接收时唯一的区别就是波特率不同。
(1)方式2和方式3发送
方式2或方式3发送时,数据由TXD端输出,发出一帧信息为11位,附加的第9位数据是SCON中的TB8,CPU执行一条数据写入发送缓冲器SBUF的指令,就启动发送器发送,发送完一帧信息,置“1”TI中断标志。
(2)方式2和方式3接收
串行口被定义为方式2或方式3接收时,数据从RXD端输入,置REN=1以后,开始接收过程。当检测到RXD端从高到低的负跳变时,确认起始位有效,开始接收本帧的其余信息。在接收完一帧信息后,在RI=0、SM2=0时,或接收到第9位数据为“1”时,8位数据装入接收缓冲器,第9位数据装入SCON中RB8,并置RI=1。若不满足上述的两个条件,接收到的信息将会丢失,也不置位RI本回答被提问者采纳

MCS-51串行口有几种工作方式,有几种帧格式?
MCS-51串行口可有四种工作方式,可有8位,10位和11位帧格式,由SCON中的SMO、SM1二位选择决定 1.方式0 (1)特点 1.用作串行口扩展,具有固定的波特率,为Fosf\/12。2.同步发送\/接收,由TXD提供移位脉冲,RXD用作数据输入\/输出通道。3.发送\/接收8位数据,低位在先。(2)发送操作 当执行一条“...

mcs—51单片机的串行口有哪几种工作方式
1、立即寻址:操作数就写在指令中,和操作码一起放在程序存贮器中。把“#”号放在立即数前面,以表示该寻址方式为立即寻址,如movA,#20H。2、寄存器寻址:操作数放在寄存器中,在指令中直接以寄存器的名来表示操作数地址。如MOVA,R0就属于寄存器寻址,即R0寄存器的内容送到累加器A中。3、直接寻址:...

MCS-51单片机串口四种工作方式的波特率如何确定
串行口的四种工作方式对应三种波特率。由于输入的移位时钟的来源不同,所以,各种方式的波特率计算公式也不相同。 方式0的波特率 = fosc\/12 方式2的波特率 =(2SMOD\/64)· fosc 方式1的波特率 =(2SMOD\/32)·(T1溢出率) 方式3的波特率 =(2SMOD\/32)·(T1溢出率) 当T1作为波特率发生器时,最典型的用法是使T1...

mcs51单片机的串行口是
全双工的串行通信口。MCS-51单片机内部有一个全双工的串行通信口,即串行接收和发送缓冲器(SBUF),这两个在物理上独立的接收发送器,既可以接收数据也可以发送数据。但接收缓冲器只能读出不能写入,而发送缓冲器则只能写入不能读出,地址为99H。这个通信口既可以用于网络通信,亦可实现串行异步通信,还...

MCS-51单片机的串行接口有()种工作方式其中方式()为多机通讯方式
MCS-51单片机的串行接口有(4)种工作方式其中方式(3)为多机通讯方式8051各中断源的中断请求是属于什么级别是由(IE)寄存器的内容决定的决定程序执行顺序的寄存器是(PC),它的最大寻址范围是(64K)。PC的值是(程序运行当前)的地址。P0口当不作系统扩展时,可作(IO)使用。当作系统扩展时,P0...

51汇编波特率判断
在MCS-51微控制器中,波特率的设置和判断涉及串行通信的多个方面。以下是对您提供内容的润色和错误纠正,保持原有意义的同时提升了内容质量。1. 电源控制寄存器PCON的最高位被串行口用作波特率系数控制。在PCON的地址87H中,SMOD位决定波特率是否加倍。若SMOD=1,则波特率加倍;若SMOD=0,则波特率不...

51汇编 波特率判断
MCS-51中电源控制寄存器PCON的最高位,被串行口借用来控制波特率系数。PCON地址为87H,不可位寻址。其最高位SMOD=1时,波特率加倍。否则波特率不加倍。串行口的工作方式 1.工作方式0:同步移位寄存器工作方式。此时串口相当于一个并入串出或串入并出的移位寄存器。数据从RXD输入或输出(低位在前),而...

mcs-51使用的是哪种串行通信接口 有哪几种通信方式
51 单片机 嘛 TTL 电平 的 3线 串口

波特率,比特率问题
在串行通信中,收发双方对发送或接收的数据速率要有一定的约定,我们通过软件对MCS—51串行口编程可约定四种工作方式。其中,方式0和方式2的波特率是固定的,而方式1和方式3的波特率是可变的,由定时器T1的溢出率决定。串行口的四种工作方式对应着三种波特率。由于输人的移位时钟的来源不同,所以,各种方式...

MCS-51单片机什么是全双工,半双工,单工串行通信?
根据串行通信数据传输的方向,可将串行 通信系统传输方式分为(单工)方式,(半双工)方式和(全双工)方式。MCS-51单片机 采用超大规模集成电路技术把具有数据处理能力的中央处理器CPU、随机存储器RAM、只读存储器ROM、多种I\/O口和中断系统、定时器\/计时器等功能(可能还包括显示驱动电路、脉宽调制电路、...

相似回答