2.下列选项中, 是正确的。答:A.对;B.对;C.错;D.对;E.对, A.串行口通信的第9数据位的功能可由用户定义
B.发送数据的第9数据位的内容是在SCON寄存器的TB8位中预先准备好的 C.串行通信帧发送时,指令把TB8位的状态送入发送SBUF中 D.串行通信接收到的第9位数据送SCON寄存器的RB8中保存
E.串行口方式1的波特率是可变的,通过定时器/计数器T1的溢出率设定 3.串行口工作方式2的波特率是 。答:A,D A.固定的,为fosc/32 B.固定的,为fosc/16 C.可变的,通过定时器T1的溢出率设定 D.固定的,为fosc/64 4.在异步串行通信中,接收方是如何知道发送方开始发送数据的?
答:靠判断是否接收到起始位。异步串行通信中,接收方串行口内部硬件检测器以波特率的16倍速率采样RXD引脚状态。当采样到RXD端从1到0的负跳变(有可能是起始位)时,就启动接收检测器。接收的值是3次连续采样(第7、8、9个脉冲时采样),取其中两次相同的值,这样就能较好地消除干扰引起的影响,以保证可靠无误地判断是否接收到的是起始位。当确认起始位有效时,则知道发送方开始发送数据。
5.为什么定时器/计数器T1用作串行口波特率发生器时,常采用方式2?若已知时钟频率、串行通信的波特率,如何计算装入T1的初值?
答:定时器/计数器T1的方式2克服了在循环定时或循环计数应用时就存在用指令反复装入计数初值带来的定时误差,从而影响波特率的精度。
可用如下的公式计算装入T1的初值
式中“RCAP2H RCAP2L”为定时器/计数器T2的初值。
6.若晶体振荡器为11.059 2MHz,串行口工作于方式1,波特率为4 800bit/s,写出用T1作为波特率发生器的方式控制字和计数初值。
答:T1的方式控制字由装入TMOD的内容来决定:(TMOD)=0010 ×××× 可用如下的公式来计算并解出计数初值X:
解得计数初值X=FAH,TH1= TL1= 0FAH; SCON=40H
7.为什么AT89S51单片机串行口的方式0帧格式没有起始位0和停止位1?
答:串行口的方式0并不是用于两个AT89S51单片机之间的异步串行通信,而是用于外接移位寄存器,以扩展并行I/O口,一般不用于两个MCS-51之间的串行通信。此时串行口方式0实质是一同步串行口,RXD引脚作为同步时钟引脚,同步时钟的频率为fosc/12,因此不需要异步串行通信帧格式那样,需要起始位和停止位来完成收发双方的同步。
一、填空题
5、在数据传输时,一个数据编码的各位按照一定顺序,一位一位地在信道中被发送和接受的,这种传送通信方式称为 通信。答案:5、串行
16
11.MCS-51单片机的通讯接口有( 串行 )和(并行 )两种型式。在串行通讯中,发送时要把( 并行)数据转换成(串行 )数据。接收时又需把( 串行 )数据转换成(并行 )数据。
12、51单片机的异步通信口为 全双工 (单工/半双工/全双工)
1.在异步通信中,通信的双方需要约定相同的 相同的字符帧 和 波特率 。
2.当SCON中的M0M1=10时,表示串口工作于方式 2 ,波特率为 fosc/32或fosc/64 。
3.SCON中的REN=1表示 允许接收 。 4.PCON 中的SMOD=1表示 波特率翻倍 。
5.SCON中的TI=1表示 串行口发送中断请求 。
6.MCS-51单片机串行通信时,先发送 低 位,后发送 高 位。 7.MCS-51单片机方式2串行通信时,一帧信息位数为 11 位。
8.设T1工作于定时方式2,作波特率发生器,时钟频率为11.0592MHz,SMOD=0,波特率为2.4K时,T1的初值为 FAH 。
1.在串行通信中,把每秒中传送的二进制数的位数叫 波特率 。
4:在异步通信中若每个字符由11位组成,串行口每秒传送250个字符,则对应波特率为( 2750 )bps。 4、设有一帧信息,1个起始位、8个数据位、1个停止位,传输速率为每秒960个字符。波特率为 。
答案:4、 9600bps
14、8051串行口按方式1进行通信,若每分钟传送3600个字符,则波特率为 。12、600波特
7、串行口工作方式2为 9 位异步通信,若SMOD=0,fOSC = 6 MHZ ,则其相应波特率为 6×106/64 b/s。
9.串行口的方式0的波特率为 ( FOSC/12 )。
4.串行工作模式3为 异步发送接收方式,其波特率的计算公式为 。 10.MCS-51单片机串行方式0通信时,数据从 P3.0 引脚发送/接收。 2. SM0 和 SM1 是串行通信接口工作方式选择位。 3.串行接口内部包含有两个互相独立的 发送缓冲器 和 接收缓冲器 ,可以在同一时刻进行数据的发送和接收。
1. 单片机串行通信时,若要发送数据,就必须将要发送的数据送至 单元,若要接收数据也要到该单元取数。串行通信波特率分为固定和可变两种方式,在波特率可变的方式中,可采用 的溢出率来设定和计算波特率。 SBUF 定时器1
2、串行数据通信分为单工方式、 和 答案: 半双工 全工
3、单片机串行通信时,若要发送数据,就必须将要发送的数据送至 单元,若要接收数据也要到该单元取数,取数的指令为 。答案:4、 SBUF MOV A,SBUF
8.串行口方式3发送的第9位数据要事先写入( SCON )寄存器的( TB8 )位。
10.串行口方式2接收到的第9位数据送( SCON )寄存器的( RB8 )位中保存。
13.串行口的控制寄存器SCON中,REN的作用是 接收允许控制 . 15、AT89S51串行口工作在方式0时,由RXD引脚接收数据,由 RXD 引脚发送数据。
17
3.帧格式为1个起始位,8个数据位和1个停止位的异步串行通信方式是方式( 1 )。
第9章
1.单片机存储器的主要功能是存储(程序)和(数据)。
2.存储器扩展中,无论是线选法还是译码法最终都是为扩展芯片的(片选)端提供(片选)控制信号。
3.地址起止范围为0000H~3FFFH的存储器的容量是(16)KB。
4.在MCS-51中,PC和DPTR都用于提供地址,但PC是为了访问(程序)存储器提供地址,而DPTR是为访问(数据)存储器提供地址。
5.11条地址线可选( 2048 )个存储单元,16KB存储单元需要( 14 )条地址线。 解:通过总结所学知识,我们得到以下几个信息:2KB的存储器需要11根地址线,地址为0000H-07FFH;4KB的存储器需要12根地址线,地址为0000H-0FFFH;
8KB的存储器需要13根地址线,地址为0000H-1FFFH;16KB的存储器需要14根地址线,地址为0000H-3FFFH;32KB的存储器需要15根地址线,地址为0000H-7FFFH;64KB的存储器需要16根地址线,地址为0000H-FFFFH(以上存储器的首地址均默认为0000H)。
6.4KB RAM存储器的首地址若为1000H,则末地址为( 1FFF )H。32KB RAM存储器的首地址若为2000H,则末地址为(9FFF)H。
解:由上题总结得出,32KB RAM存储器的大小为0000H-7FFFH,所以只要在后面加上2000H即得到正确答案。
7.试编写C51程序(如将05H和06H拼为56H),设原始数据放在片外数据区2001H单元和2002H单元中,按顺序拼装后的单字节数放入2002H。
答:编程思路:首先读取2001H的值,保存在寄存器A中,将寄存器A的高四位和低四位互换,再屏蔽掉低四位然后将寄存器A的值保存到30H中,然后再读取2002H的值,保存在寄存器A中,屏蔽掉高四位,然后将寄存器A的值与30H进行或运算,将运算后的结果保存在2002H中。
8.编写C51程序,将外部数据存储器中的4 000H~40FFH单元全部清“0”。
答:需注意,外部数据存储器的数据存储类型定义为xdata。其存储区为XDATA。 9.在MCS-51单片机系统中,外接程序存储器和数据存储器共16位地址线和8位数据线,为何不会发生冲突?
解:因为控制信号线的不同:
外扩的RAM芯片既能读出又能写入,所以通常都有读写控制引脚,记为OE和WE。外扩RAM的读、写控制引脚分别与MCS-51的RD和WR引脚相连。
外扩的EPROM在正常使用中只能读出,不能写入,故EPROM芯片没有写入控制引脚,只有读出引脚,记为OE,该引脚与MCS-51单片机的PSEN相连。
11.判断下列说法是否正确,为什么?
(1)由于82C55不具有地址锁存功能,因此在与AT89S51的接口电路中必须加地址锁存器。对
(2)在82C55芯片中,决定各端口编址的引脚是A1和A0。对
(3)82C55具有三态缓冲器,因此可以直接挂在系统的数据总线上。对 (4)82C55的PB口可以设置成方式2。错
12.I/O接口和I/O端口有什么区别?I/O接口的功能是什么?
18
答:I/O接口是单片机与外设间的连接电路的总称。I/O端口(简称I/O口)是指I/O接口电路中具有单元地址的寄存器或缓冲器。一个I/O接口芯片可以有多个I/O端口,传送数据的称为数据口,传送命令的称为命令口,传送状态的称为状态口。当然,并不是所有的外设都一定需要3种端口齐全的I/O接口。
I/O接口电路主要应满足以下功能要求。 (1)实现和不同外设的速度匹配 (2)输出数据锁存 (3)输入数据三态缓冲
13.I/O数据传送由哪几种传送方式?分别在哪些场合下使用? 答:I/O数据传送的方式有:同步传送、异步传送和中断传送。 (1)同步传送
当外设速度和单片机的速度相比拟时,常采用同步传送方式,例如,单片机和外部数据存储器之间的数据传送。
(2)异步传送
单片机通过查询外设“准备好”后,再进行数据传送。优点是通用性好,硬件连线和查询程序十分简单,但工作效率不高。
(3)中断传送
中断传送方式可提高单片机对外设的工作效率,单片机只有在外设准备好后,才中断主程序的执行,从而执行与外设进行数据传送的中断服务子程序。中断服务完成后又返回主程序断点处继续执行。中断方式可大大提高单片机的工作效率。
14.I/O端口编址有哪两种方式?它们各有什么特点?AT89S51单片机的I/O端口编址采用的是哪种方式?
答:常用的I/O端口编址有两种方式,独立编址方式和统一编址方式。 (1)独立编址
独立编址方式就是I/O端口地址空间和存储器地址空间分开编址。优点是两个地址空间相互独立,界限分明。但是需要设置一套专门的读写I/O端口的指令和控制信号。 (2)统一编址
统一编址方式是把I/O端口与数据存储器单元同等对待,即每一接口芯片中的一个寄存器(端口)就相当于一个RAM单元。
AT89S51单片机使用的就是统一编址的方式。优点是不需要专门的I/O指令,直接使用访问数据存储器的指令进行I/O读写操作,简单、方便。但是需要把外部数据存储器空间中的数据存储器的单元地址与I/O端口所占的地址划分清楚,避免发生数据冲突。
15.“方式控制字”和“PC口按位置位/复位控制字”都可以写入82C55的同一控制寄存器,82C55是如何来区分这两个控制字的?
答:AT89S51单片机向82C55控制寄存器写入两种不同的控制字:工作方式选择控制字及端口PC置位/复位控制字。
如何来区分?是由最高位D7是1还是0来区分的。D7=1,为工作方式选择控制字。D7=0,为PC口置位/复位控制字。
一、填空题
3. 8051单片机/PSEN控制 程序 存储器读操作。
19
4. 8051 单片机访问片外存储器时利用 ALE 信号锁存来自 P0 口的低八位地址信号。
5. 12根地址线可选 4K 个存储单元,32KB存储单元需要 15 根地址线。 7.74LS164 是 串入并出 转换芯片,74LS165是 并入串出 转换芯片。 8.74LS138是具有3个输入端的译码器芯片,其输出作为片选信号时,最多可以选中 8 块芯片。
9.74LS273通常用来作简单 输出 接口扩展;而74LS244则常用来作简单 输入 接口扩展。
2、为扩展存储器而构造系统总线,应以P0口的8位口线作为 低8位地址和数据 线,以P2口的口线作为 高8位地址 线。
1. MCS-51单片机扩展的I/O端口的编址采用_和存储器统一___编址方式。
6、在单片机中,为实现数据的I/O传送,可使用3种传送方式,即: 无条件传送 、查询方式和 中断方式 。
7、在查询和中断两种数据输入输出控制方式中,效率较高的是 中断方式 。 (7)8255A共有三个并行端口,其中只有 口可以分为两个独立的4位口使用。 (8)8255A有三种工作方式,其中方式2是 方式,8255A只有 口可设置为方式2。
(9)8255A的位控制字用于对 口进行位操作。
1、MCS-51单片机扩展程序存储器所用的控制信号为Psen,扩展数据存储器所用的控制信号为WR和RD。
4、在存储器扩展中,用线选法还是译码法,最终都是为扩展芯片的 片选 端提供信号。
6、51单片机扩展的I/O端口的编址采用_和存储器统一___编址方式。
7、51单片机不扩展存储器和I/O接口时,P0通常用作_通用I/O口使用_____,扩展存储器或I/O 接口时,P0通常用作__数据口和低8位地址口___。
8、在接口电路中,把已经编址并能进行读写操作的寄存器称之为 端口 。 9、在三态缓冲电路中,除了数据输入线和数据输出线外,还应当有一个 控制 信号线。
10、在单片机中,为实现数据的I/O传送,可使用3种传送方式,即: 无条件传送 、查询式和 中断式 。
11、在查询和中断两种数据输入输出控制方式中,效率较高的是 中断方式 。 13、在单片机应用系统中,常用一些器件扩展I/O,如74HC164芯片,其功能为 锁存器; 芯片为并入串出锁存器。答案: 7、 74HC164,并入串出
17、MCS-51单片机的常数表格和程序代码存放在 程序 存储区。 19、芯片2764是一种8K* 8位的紫外线擦除电可编程只读存储器,其有13个 地址线和8 个 数据线
24.若MCS-51外扩8KB 程序存储器的首地址若为1000H,则末地址为( )H。 25.利用8255A可以扩展( 3 )个并行口,其中( 8 )条口线具有位操作功能;
29、74LS138是具有3个输入的译码器芯片,其输出作为片选信号时,最多可以选中 8 片芯片。
33. 确定单片机I/O接口芯片的片选信号的方法通常有两种: 线选法 和 译码法。
20