(简答题a4,k4,d1)
的data、bdata、idata 表明数据的什么特征?有什么区别?(4分)
答:data、bdata、idata是表明数据的存储类型,data是指片内ram的低节,可在一个周期内直接寻址;
bdata是指片内ram的位寻址区,16字节;
idata是指片内ram的节,必须采用间接寻址。
2. 简述行列式扫描键盘的工作原理。(6分) (简答题a4,k9,d2)
答: 扫描键盘工作原理。
1) 首先x0~x3,始终接高电平,y0~y3给低电平,扫描p1.0~p1.3若全为高电平,则没有键按下,若有低电平,则有键按下。
2) 接着y0输出低电平,y1~y3输出高平,扫描p1.0~p1.3,若全为高电平,则没有键按下,若有低电平,则找出相位,得到所按的键。
3) 再y1输出低电平,y0,y2,y3输出高电平,重复第2 步骤作。
4) 再y2输出低电平,y0,y1,y3输出高电平扫描。
5) 再y3输出低电平,y0,y1,y2输出高电平扫描。
简答题:mcs-51采用6mhz的晶振,定时2ms,如用定时器方式1时的初值(16进制数)应为多少?(写出计算过程)(6分)(简答题a4,k5,d2)
答案:机器周期6×106=2×10-6s=2us (2分)
又方式1为16进制定时器。故。
(216—x)×2×10-6=2×10-3=>216-x=1000
>x=65536-1000=64536 (3分即初值=fc18h (1分)
简答题:设r0的内容为32h,a的内容为48h,片内ram的32h单元内容为80h,40h单元内容为08h。请指出执行下列程序后上述各单元内容的变化。(4分)
简答题a4,k3,d2)
mov a, @r0
mov @r0, 40h
mov 40h, a
mov r0, #35h
答案:a=80h,(r0)=35h (32h)=08h (40h)=80h
简答题:什么是中断?其主要功能是什么?(4分,各1分)(简答题a4,k6,d1)
答案:中断就是对外界异步发生的事件作出及时的处理。
功能:分时操作;实时处理;故障处理。
简答题:片内ram30h开始的单元中有10b的二进制数,请编程求它们之和(和<256 )。6分)(简答题a4,k3,d2)
答案: addio:mov r0,30h
mov r7,#
mov a,@r0
loop: inc r0
add a,@r0
djnz r7,loop
mov 30h,a
ret简答题:mcs-51外扩的程序存储器和数据存储器可以有相同的地址空间,但不会发生数据冲突,为什么?(4分)(简答题a4,k2,d2)
答案:因为访问外扩的程序存储器和数据存储器执行的指令不同,所发出的控制信号也就不同。(2分)
读外部数据存储器时,rd*信号有效。写外部数据存储器时,wr*信号有效。而读外部程序存储器时,psen*信号有效。
由于发出的控制信号不同,且只能有一种信号有效,因此,即使mcs-51外扩的程序存储器和数据存储器有相同的地址空间,也不会发生数据冲突。(2分)
简答题:编写一程序将片外数据存储器中7000h~70ffh单元全部清零。(6分)
简答题a4,k3,d2)
答案:org 1000h
mov dptr,#7000h
clr amov r0,a
loop: movx @dptr,a
djnz r0,loop
sjmp $
简答题:试比较中断与子程序调用有什么异同。(4分)(简答题a4,k6,d2)
答案:同:都是中止当前主程序转去执行另一段子程序或中断服务子程序,执行完后都要返回到主程序(2分)
异:中断是在初始化中断后,自动完成中断的响应和处理。
子程序调用是用户在程序中用指令主动调用,断点位置由用户决定(2分)
简答题:设内部ram(30h)=5ah,(5ah)=40h,(40h)=00h,端口p1=7fh,问执行下列指令后,各有关存储单元(即r0,r1,a,b,p1,30h,40h及5ah单元)的内容如何?(每个0.
5分,共4分)(简答题a4,k3,d2)
mov r0,#30hr0=30h
mov a,@r0a=5ah
mov r1,ar1=5ah
mov b,r1b=5ah
mov @r1,p15ah)=7fh
mov a,p1a=7fh
mov 40h,#20h40h)=20h
mov 30h,40h30h)=20h
答案:每一条指令执行后的结果如注释字段所标。最后结果为:
r0=30h,r1=5ah,a=7fh,b=5ah,p1=7fh,(30h)=20h,(40h)=20h,(5ah)=7fh。
一. 简答题:(共10分)
1. 按照给定的数据类型和存储类型,写出下列变量的说明形式(4分)
简答题a4,k4,d2)
1)在xdata区定义无符号字符型数组val3[4]。
unsigned char xdata val3[4];
2)在xdata区定义一个指向char类型的指针px。
char xdata *px;
(3)定义可位寻址变量flag。
bit flag;
(4)定义特殊功能寄存器变量p3。
sfr p3=0xb0;
2. 在有串行通信时,定时器/计数器1的作用是什么,怎样确定串行口的波特率?(6分)
简答题a4,k7,d1)
答:在有串行通信时,定时器/计数器1的作用是串行口发生器。
串行口的波特率根据串行口的工作方式具有不同的计算方式:
方式0的波特率固定为晶体振荡器的十二分之一;
方式1的波特率=2smod.(定时器1的溢出率)/32;
方式2波特率=2smod.(fosc/64);
方式3波特率同方式1(定时器l作波特率发生器)。
简答题:简述累加器的acc的作用。(3分)(简答题a4,k2,d1)
答:(1)8位专用寄存器,运算时存放一个操作数。运算后存放运算结果,所以称它为累加器。
2)变址寄存器。
3)数据输入输出的中转站。
二. 分析说明各指令的功能(10分)程序填空和分析题(a5,k5,d2)
设时钟频率为6mhz,下列程序是利用定时器产生1s定时的程序。用工作模式1定时100ms的初值为3cb0h。
设时钟频率为6mhz,下列程序是利用定时器产生1s定时的程序。用工作模式1定时100ms的初值为3cb0h。
org 0000h
ljmp main
org 000bht0的中断入口。
ajmp serve
org 2000h
main: mov sp, #60h设堆栈指针。
mov b, #0ah设循环次数。
mov tmod, #01h设置定时器0工作在方式1,定时方式。
mov tl0, #0b0h ;
mov th0, #3ch赋初值。
setb tr0起动t0
setb et0
setb ea
sjmp中断循环。
serve: mov tl0, #0b0h ;
mov th0, #3ch ;
djnz b, loop循环结束
clr tr01s到,t0结束
loop: reti
程序填空和分析题。
三.已知如图并给出下列程序,请在读图并理解程序后回答下列问题:(4分)
程序填空和分析题(a5,k10,d2)
adc: mov dptr,#7ffoh
mov r0,#0a0h
mov r2,#
mov a,#
loop:movx @dptr,a
jb p3.3,$
movx a,@dptr
movx @r0,a
inc dptr
inc r0
djnz r2,loop
ajmp adc
1)程序功能为。
(2)adc0809的口地址为。
(3)eoc的作用是。
(4)程序运行结果存于。
答案:1)巡回采集8个通道的数据
(2)adc0809口地址为7ff0h~7ff7h(或7ff8~7fffh)
(3)eoc为a/d转换结束信号,用来引起中断或查询,以便读取a/d的转换结果。
(4)结果存入外部ram的a0h~a7h。
程序填空和分析题:(10分)程序填空和分析题(a5,k5,d2)
以下是利用定时器t1定时,使p1.0输出周期性波形的程序。填空使程序完整并回答问题:
org 0000h
ljmp main
org ajmp brt1
org 2000h
main: mov tmod,#
mov th1,#0e0h
mov tl1,#18h
ea setb
setbsjmp $
brt1: mov th1, #0e0h
mov tl1,#18h
p1.0 end
1) 定时器/计数器t1工作在什么方式下?定时器/计数器的定时时长是多少?设主频12mhz。
2) 从p1.0输出是什么波形,周期是多少?
单片机试题库
单片机的内部硬件结构包括了 以及片内数据储存器 片内程序储存器 并行i o 位出力器等部件,这些部件通过相连接。2 mcs 51单片机的po p4口,其中的po口和p2口除了可以进行数据的输入 输出外,通常还用来构件系统的和在po p4口中,位真正的双向口,为准双向口。3 请说明mcs 51单片机程...
单片机试题库
开设系部 数控技术系。一,填空题 81 课程 计算机原理与接 术 d 10000111b 87h 2 alu单元一般能完成操作 编程运算操作。3 十进制数326对应的十六进制数可表示为 146h 4 单片微型计算机简称单片机。5 一个完整的单片机芯片至少应包 cpu 含 处理器 随机存储器 ram ...
单片机试题库
一 填空题 15分 1 十进制35的二进制表示为。2 单片微型计算机由cpu 存储器和口三部分组成。3 若用传送指令访问mcs 51的程序存储器,它的操作码助记符应为。4 累加器 a 80h,执行完指令add a,83h后,进位位c 5 orl a,0f0h是将a的高四位置1,而低四位。6 mcs ...