试题3 参***。
一、填空题(31分,每空1分)
1.at89s51单片机有( 2 )级优先级中断。
2.串行口方式2接收到的第9位数据送(scon)寄存器的(rb8)位中保存。
3.当单片机复位时psw=(00)h,这时当前的工作寄存器区是(0)区,r6所对应的存储单元地址为(06)h。
4.利用82c55可以扩展(3)个并行口,其中(8)条口线具有位操作功能;
5.at89s51访问片外存储器时,利用(ale)信号锁存来自( p0口 )发出的低8位地址信号。
6.若at89s51外扩32kb 数据存储器的首地址若为4000h,则末地址为(bfff)h。
7.当at89s51执行movc a,@a+pc指令时,伴随着(psen*)控制信号有效。
8.若a中的内容为67h,那么,p标志位为(1)。
9.at89s51单片机的通讯接口有(串行)和(并行)两种形式。在串行通讯中,发送时要把(并行)数据转换成(串行)数据。接收时又需把(串行)数据转换成(并行)数据。
10.at89s51内部数据存储器的地址范围是(00-7fh ),位地址空间的字节地址范围是(00-2fh),对应的位地址范围是(00-7fh ),外部数据存储器的最大可扩展容量是(64kb)。
11.at89s51单片机指令系统的寻址方式有(寄存器寻址方式)、(直接寻址方式)、(立即寻址方式)、(寄存器间接寻址方式)、(位寻址方式)、(基址寄存器加变址寄存器)、(相对寻址方式) 。
12.at89s51内部提供(2)个可编程的(16)位定时/计数器,定时器有(4)种工作方式。
二、判断对错,如对则在( )中写“√”如错则在( )中写“×”10分)
1.at89s51的定时器/计数器对外部脉冲进行计数时,要求输入的计数脉冲的高电平或低电平的持续时间不小于1个机器周期。(×
2.判断指令的正误:mov t0,#3cf0h;(×
3.定时器t0中断可以被外部中断0中断(×)
4.指令中直接给出的操作数称为直接寻址。(×
5.内部ram的位寻址区,既能位寻址,又可字节寻址。(√
6.特殊功能寄存器scon与定时器/计数器的控制无关。(√
7.当at89s51执行movx a,@r1指令时,伴随着wr*信号有效。(×
8.串行口工作方式1的波特率是固定的,为fosc/32。(×
9.区分外部程序存储器和数据存储器的最可靠的方法是看其是被 rd*还是被psen*信号连接。(×
10.逐次比较型a/d转换器与双积分a/d转换器比较,转换速度比较慢。(×
三、简答题。
1.at89s51采用12mhz的晶振,定时1ms,如用定时器方式1时的初值(16进制数)应为多少?(写出计算过程)(6分)
解:采用12mhz的晶振,tcy=1/fosc×12=1/12×10-6×12=1us
采用定时器方式1(为16位)
定时1ms,设初值为x,则:(216-x)×1×10-6=1×10-3
则=>x=64536将其转换成二进的为:1111110000011000
再将其转化为16进制数为:fc18
初值为txh=fch txl=18h
2.中断服务子程序返回指令reti和普通子程序返回指令ret有什么区别?(4分)
答:reti除了将压栈的内容出栈外(即现场恢复),还清除在中断响应时被置1的at89s51内部中断优先级寄存器的优先级状态。
3.at89s51外扩的程序存储器和数据存储器可以有相同的地址空间,但不会发生数据冲突,为什么?(6分)
答:at89s51外扩的程序存储器和数据存储器可以有相同的地址空间,但不会发生数据冲突。这是因为它们的控制信号不同:
1) 外扩程序存储器是psen*信号为其控制信号。
外扩数据存储器是rd*与wr*信号为其控制信号。
2) 指令不同,程序存储器用movc读取,数据存储器用movx存取。
4.图为8段共阴数码管,请写出如下数值的段码。(5分)
p78c
5.led的静态显示方式与动态显示方式有何区别?各有什么优缺点?(4分)
答:静态:显示期间,锁存器输出的段码不变;亮度大,各位led的段选分别控制;位数多硬件电路复杂。
动态:所有位段码线并连一起,各位的亮灭靠片选控制端控制,亮度较低,多位控制电路简单。
四、程序分析:(10分)
外部ram 3000h,3001h单元的内容分别为55h,0ddh,试分析如下程序,并回答问题。
程序1: mov dptr,#3000h
mov r1,#40h
movx a ,@dptr
mov @r1,a
inc r1
inc dptr
movx a,@dptr
mov @ r1,a
问题1:若执行上述程序,则结束后,dptr值为3001h,r1的内容为 41h ,8031内部ram41h单元的内容 ddh,40h单元内容为__55h__。
在上程序中,若继续执行如下程序。
程序2:start:mov dptr,#3000h
mov r1 ,#40h
mov a,@r1
movx @dptr,a
问题2、start执行结束后,dptr的值为_3000h_,4000h单元的内容为_55h_,r1的内容为__40h___
问题3:执行如下程序,填出a寄存器的内容。
程序3、 mov a、#88h
mov r7,#aah
orl a、r7 :a的内容为:__aah__
mov a,#37h
mov r7,#89h
anl a,r7 a的内容为:__01h _
xrl a,r7 a的内容为:__88h _
ret五、简述一种多外部中断源系统的设计方法。(给出图和程序) (10分)
答:程序如下:
org 0013h ;的中断入口。
ljmp int1 ;
int1: push psw ;保护现场。
push acc
jb p1.0,ir1 ;p1.0高,ir1有请求。
jb p1.1,ir2 ;p1.1高,ir2有请求。
jb p1.2,ir3 ;p1.2脚高,ir1有请求。
jb p1.3,ir4 ;p1.4脚高,ir4有请求。
intir: pop acc ;恢复现场。
pop psw
reti中断返回。
ir1: ir1的中断处理程序。
ajmp intirir1中断处理完毕,跳标号intir处执行
ir2: ir2的中断处理程序。
ajmp intir ;ir2中断处理完毕,跳标号intir处执行。
ir3: ir3的中断处理程序。
ajmp intir ;ir3中断处理完毕,跳标号intir处执行
ir4: ir4的中断处理程序。
ajmp intir ;ir4中断处理完毕,跳标号intir处执行。
六、请回答:(共14分)
1.下图中外部扩展的程序存储器和数据存储器容量各是多少?(2分)
2.三片存储器芯片的地址范围分别是多少?(地址线未用到的位填1) (4分,)
3.请编写程序,要求:
1) 将内部ram 40h-4fh中的内容送入1# 6264的前16个单元中;(4分)
2) 将2# 6264 的前4个单元的内容送入50h-53h中;(4分)
答:1.解外部扩展的程序存储器容量为:8kb
外部扩展的数据存储器容量为:8kb×2=16kb
2. 程序存储器2764地址的高3位:
a15 a14 a13
地址范围为:0000h-1fffh
数据存储器1#6264地址高3位:
a15 a14 a13
地址范围为:6000h-7fffh
数据存储器2#6264地址范围为:
a15 a14 a13
地址范围为:a000h-bfffh
3.编写程序。
1) mov ro, #40h
mov dptr, #6000h ;设置数据指针为6000h
loop:mov a, @ro将片内ram(40-4fh)中的内容送入a中。
movx @dptr,a将a→@dptr中。
inc ro
inc dptr
cjne ro,#50h,loop ; 将此子程序循环执行16次。
ret2) mov ro, #50h
mov dptr, #0a000h ; 设置数据指针为a000h
loop: movx a, @dptr
movx @ro,a将外部数据存储器内容送入到片内中。
inc ro
inc dptr
cjne ro,#54h,loop ; 将此子程序循环执行4次。
单片机试题
01 单片机是将微处理器 一定容量的 ram 和 rom 以及 i o 口 定时器等电路集成在一块芯片上而构成的微型计算机。2 单片机89c51片内集成了 4 kb的flash rom,共有 5 个中断源。3 两位十六进制数最多可以表示 256 个存储单元。c51是以下哪个公司的产品?c a int...
单片机试题
单片机1试题。一 填空题 每空1分,共10分 1.当使用8031单片机时,需要扩展外部程序存储器,此时ea应为。通常用作。3.若由程序设定rs1 rs0 10,则工作寄存器r0 r7的直接地址为。4.返回地址 或断点 是 的程序计数器的内容。5.处理器cpu是单片机的核心,它完成。6.单片机的工作过...
单片机试题
1 mcs 51 的无条件转移指令中,其转移范围最大的是 a ljmp b ajmp c sjmp d jmp 2 一3的补码是 a b 11111100 c 11111110 d 11111101 3 单片机应用程序一般存放在。a ram b rom c 寄存器 d cpu。4 单片机上电后或复位...