微型计算机控制技术第3章习题答案

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

3-1 什么是串行通信?串行通信有哪两种基本方式?串行通信有何特点?

在串行通信中,有两种最基本方式,异步通信和同步通信

串行通信是通过串行口来实现的,数据逐位顺序传送。

3-2 某异步通信接口,其帧格式由1个起始位,7个数据位,1个偶校验位和1个停止位组成。当接口每分钟传送1800字符时,试计算出传送波特率。

当接口每分钟传送1800字符时,它的波特率:

Band=1800×10÷60=300bit/秒

3-3 试说明MCS-51单片机的串行口有哪几种工作方式?其波特率如何确定?

串行口有四种工作方式,如表所示。

3-4如果晶振为11.0592MH Z,串行工作方式1,波特率为2400,第9位数据为奇校验位。试编制一个程序,对串行口初始化,并用查询方式接收串行口上输入的10个字符,存于内部RAM50H开始的区域,若对RB8校验出错则停止接收,并使p1.2清零,若正确地接收到10个字符,则停止接收,并使p1.7清零。

N=256-SMOD

f/(384⨯波特率)

2⨯

osc

N=256-126

⨯(384⨯2400)

11⨯

.

059

10

N=E8H

TX:MOV SCON,#70H

ORL PCON,#80H

MOV TMOD,#20H

MOV TH1,#0E8H

MOV TL1,#0E8H

SETB TR1

CLR ES

MOV R2,#0AH

MOV R0,#50H LOOP:JMB RI,$

CLR RI

MOV A,SBUF

JNB P,ONE

JB RB8,FALSE RIGHT:MOV @R0,A

INC R0

DJNZ R2,LOOP

CLR TR1

CLR REN

CLT P1.7

RET

ONE:JNB RB8,FALSE LJMP LIGHT FLASE:CLR TR1

CLR REN

CLR P1.2 RET

3-5 设8031单片机串行口置于工作方式3,通信波特率为2400,第9位用作奇

校验位。发送数据区的首地址4000H ,接收数据区地址为5000H ,设数据传送采用中断方式,试编写双工通信的有关程序,时钟频率为6MHZ 。

N=256-SMOD 2osc f ⨯/(384⨯波特率)

N=256-126106⨯⨯/3842400⨯ N=F3H

TRANSFER :LCALL TIMER LCALL SERIES MOV DPTR ,#4000H MOV R7,#N MOV SBUF ,#00H SETB ES SETB EA SJMP $ SENT :CLR TI MOVX A ,@DPTR MOV C , P CPL C MOV 7B8, C MOV SBUF , A INC DPTR

DJNZ R7,EXIT

CLR TR1

CLR ES

EXIT:RETI

TIME:MOV TMOD,#20H

MOV TH1,#0F3H

MOV TL1,#0F3H

SETB TR1

RET

SEVIES:MOV SCON,#0C0H

ORL PCON,#80H

RET

RECEIVER:LCALL TIMER

LCALL TIMEI

LCALL SERIES

MOV DPTR,#5000H

MOV R7,#N

JNB RI,$

CLR RI

MOV @R0,SBUF

SETB ES

SUBZ:MOV A,SBUF

CLR RI

JNB P,D1

JB RB8,FALSE

LJMP LIGHT

D1:JNB RB8,FALSE

RIGHT:MOVX @DPTR,A

INC DPTR

DJNZ R7,EXIT

FALSE:CLR ES

CLR TR1

CLR REN

RET

3-6 某单片机系统利用MAX232与上位机PC实现 RS—232C通信,若单片机系统只作接收用,通信波特率为2400,请画出接口电路并编写程序。

N=256-SMOD 2osc f ⨯/(384⨯波特率)

N=256-126106⨯⨯/3842400⨯ N=F4H

RECEIVE:MOV TMOD,#20H

MOV TH1,#0F4H MOV TL1,#0F4H CLR ET1 SETB TR1 CLR RI MOV R0,#30H MOV R6,#N

LOOP1:JNB RI $

CLR RI MOV A,SBUF MOV @R0.A INC R0

DJNZ R6,LOOP1 CLR REN CLR TR1 RET

3-7 利用VB 编制一个测试PC 机串口的程序,在电路上把串口的发送端和接收端

连接在一起,通过自发自收可以检查有无错误,在程序的窗体上放置一个

MSComm控件、一个文本框、一个时钟控件、一个按钮、一个标签,程序运行时,用户任意在文本框里输入一个字符,按下按钮后,进行自发自收(数据格式是波特率是9600、8位数据位、无校验、2位终止位)。如果接收到的字符与文本框的字符不同,或经过2秒后仍未完成接收,则在标签上显示“串行通信线路故障”;否则在标签上显示“串行通信线路畅通”。

相关文档
最新文档