全球旧事资料 分类
析比较MCS51串行口在四种工作方式下发送和接收数据的基本条件和波特率的产生方法。答案:发送数据的基本条件:
f方式0、1、2、3:CPU执行一条将数据写入发送缓冲器SBUF的指令;接收数据的基本条件:方式0:用软件使REN1(同时RI0);方式1:用软件使REN1,一帧数据接收完毕后,必须同时满足以下两个条件:①RI0;②SM20或接收到的停止位为1,这次接收才真正有效,将8位数据送入SBUF,停止位送RB8,置位RI。否则,这次接收到的数据将因不能装入SBUF而丢失。方式2、3:软件使REN1,同时满足以下两个条件:①RI0;②SM20或接收到的第9位数据为1(SM21),则这次接收有效,8位数据装入SBUF,第9位数据装入RB8,并由硬件置位RI。否则,接收的这一帧数据将丢失。波特率的产生方法:
在方式0下,串行口的波特率是固定的,即波特率fosc12;在方式1、3下,串行口波特率由定时器T1的溢出率和SMOD值同时决定。相应公式为:波特率2SMOD×T1溢出率32;在方式2下,串行口的波特率可由PCON中的SMOD位控制:若使SMOD0,则所选波特率为fosc64;若使SMOD1,则波特率为fosc32。即
f波特率2SMOD×fosc64
5.为何T1用作串行口波特率发生器时常用模式2?若fosc6MHz,试求出T1在模式2下可能产生的波特率的变化范围。答案:定时器T1作为波特率发生器可工作于模式0、模式1和模式2。其中模式2在T1溢出后可自动装入时间常数,避免了重装参数,因而在实际应用中除非波特率很低,一般都采用模式2。若fosc6MHz,T1在模式2下可能产生的波特率的变化范围为:6104bps~15625bps。6.简述多机通信原理。答案:当主机选中与其通信的从机后,只有该从机能够与主机通信,其他从机不能与主机进行数据交换而只能准备接收主机发来的地址帧。上述要求是通过SCON寄存器中的SM2和TB8来实现的。当主机发送地址帧时使TB81,发送数据帧时使TB80,TB8是发送的一帧数据的第9位,从机接收后将第9位数据作为RB8,这样就知道主机发来的这一帧数据是地址还是数据。另外,当一台从机的SM20时,可以接收地址帧或数据帧,而当SM21时只能接收地址
f帧,这就能实现主机与所选从机之间的单独通信。7.试用8051串行口扩展IO口,控制16个发光二极管自右向左以一定速度轮流发光,画出电路并编写程序。答案:电路如下:
程序如下:
MAIN
LOOPSBS
ORG0000H
AJMPMAIN
ORG0023H
AJMPSBS
ORG2000H
MOVSCON00H
MOVA01H
CLR
P10
CLR
P11
MOVSBUFA
SJMPLOOP
INC
R0
CJNER011HDSP
MOVR001H
DSPCJNER00r
好听全球资料 返回顶部