当前位置:首页 > 单片机考试题库附有答案
EA=1, ET1=1; TR1=1; P1=~aa; while(1); }
T1中断服务函数:
void int_t1(void) interrupt 3 { TL0=220, TH0=11; aa<<=1; P1=~aa; }
一、 填空题
1、PSW中RS1、RS0的作用是(选择工作寄存器组)。
2、指出下列指令是何种寻址方式:(MOVX A,@DPTR间接寻址) 3、键盘按结构的不同可分为(独立式)和(行列式)两类。
4、某单片机有一个8位看门狗控制特殊功能寄存器WDT_CONTR,它的地址是0xc1,定义该特殊功能寄存器WDT_CONTR的方法是 :sfr WDT_CONTR=0xc1; 5、在RS232电气规范中,使用+3V~+15V表示数字( 0 )。
6、写出对A中的2、4、6位置1,其余位不变的指令(ORL A,#01010100B)。 7、单片机的复位信号输入端是( A )。 A、RST B、ALE C、PSEN D、EA
8、一台计算机所能执行的全部指令的集合,称为这个CPU的(指令系统)。 9、定时器/计数器T2的时钟输出引脚为(P1.0 )。
10、编写串行口中断服务函数int_s(),则函数的说明部分应该是: void int_s() interrupt 4
11、(bit、sbit)是C51增加的位型变量
12、某单片机系统的晶振频率为11.0592MHz,使用T1定时240μs,试分析应该设置T1以模式(2)定时,模式寄存器TMOD的高4位应设置为(2),定时器初值应该设置为(35)。 13、定时器/计数器T0、T1的工作模式寄存器TMOD的格式如下,其低4位控制(T0)的工作模式。
┌──┬──┬──┬──┬──┬──┬──┬──┐ │GATE│C/T │ M1 │ M0 │GATE│C/T │ M1 │ M0 │
└──┴──┴──┴──┴──┴──┴──┴──┘ 二、 选择题
14、单片机对外部访问时( C )口提供高8位地址信号。 A、P0 B、P1 C、P2 D、P3
15、定时器/计数器T0、T1以模式1工作时,是(C)的定时器或计数器。 A、1个8位; B、1个13位; C、1个16位; D、两个8位。 16、MCS-51增强型单片机的3个定时器/计数器的位数是下面的(B)。 A、T0是8位的,T1和T2是16位的; B、T0、T1和T2都是16位的;
C、T0是8位的,T1是16位的,T2是24位的; D、T0和T1是16位的,T2是24位的。 17、串行异步通信的一帧数据是由以下几个部分组成:①起始位、②数据位、③奇偶校验位、④停止位,选择下列正确说法。(A)
A、①②③④都是 B、①②③④都不是 C、①②④不是 D、①④不是
18、使用getchar、scanf等函数从串行口输入数据,必须先对串行口初始化,初始化内容之一是写SCON设置串行口工作方式、启动接收。设串行通信传输格式为8个数据位、1个停止位,不校验,则设置SCON的数值为下面的(B)。
A、0x40; B、0x50; C、0xc0; D、0xd0。 19、C51中整型数据的存放方式是:(A)
A、高字节在前、低字节在后; B、低字节在前、高字节在后; C、低字节在低地址、高字节在高地址。
20、单片机串行口的工作方式( A )不是异步方式。 A、0 B、1 C、2 D、3
21、某单片机系统使用T0中断定时扫描显示数码管,系统还使用了外中断0、外中断1和串行口中断,为了使其它中断对数码管显示不产生影响,可以通过设置各个中断的优先级实现,对中断优先级寄存器IP设置为下面的(A)。
A、0x02; B、0x04; C、0x08; D、0x20。 三、判断题
22、存在空闲位是串行异步通信的特征之一。 (正确) 23、单片机对外部访问的数据总线宽度为8位。 (正确)
24、定义一个标示设备运行状态的位变量flag_run, flag_run的定义方法为:sbit flag_run; (错误)
25、定义指向片外数据区中的字符型指针变量p的方法为: char *p; (错误)
26、伪指令是汇编程序中,用于指示汇编程序如何对源程序进行汇编的指令。(正确) 27、TTL电平使用0V表示数字0。 (正确) 28、并行通信比串行通信传输速度快。 (错误)
29、在片外数据区0xdfff地址处定义一无符号字符型变量da_port,便于通过da_port输出实现D/A转换。其定义为:unsigned char xdata da_port on 0xdfff; (错误) 30、程序计数器PC是8位的。 (错误)
31、同步方式不是串行通信的两种基本的通信方式之一。 (错误) 四、简答题
32、ADC0809的EOC引脚有何作用?
EOC转换结束信号,是芯片的输出信号。转换开始后,EOC信号变低;转换结束时,EOC返回高电平。这个信号可以作为A/D转换器的状态信号来查询,也可以直接用作中断请求号。 33、简述MCS-51单片机片内RAM存储的空间分配。内部RAM低128字节分为哪几个主要部分。 答: MCS-51单片机片内RAM分为低128字节、高128字节和SFR。内部RAM分为工作寄存器组区、位寻址区和用户数据区三部分。
34、单片机的应用系统可以分为哪几个通道? 前向通道,后向通道,人机通道
35、简述C51对变量绝对定位的方法、条件及应用场合。
答:(1)方法:[存储类型] 数据类型 [存储区] 变量名1 _at_ 地址常数; (2)主要条件:绝对地址变量在定义时不能初始化;绝对地址变量只能够是全局变量。 (3)绝对地址变量多用于I/O端口,一般情况下不对变量作绝对定位。 38、写出单片机C语言程序中语句“TMOD=0xa1;”的功能。 设置T1以模式2定时、外部门控制运行,设置T0以模式1定时。 39、阅读下面C语言函数,对各句做注释,并指出函数的功能。 unsigned char data array[20]; void move_data() { unsigned char i; unsigned char code *pp; pp=0x30;
for(i=0;i<20;i++) array[i]=*(pp+i); } }
答:函数功能:把程序存储器地址从0x30开始的20个字节数据,传送到片内RAM的数组array中。
40、片内RAM的30H和31H单元中存放着一个16位的二进制数,高位在前,低位在后。编写程序对其求补,并存回原处。 答:CLR C MOV A,#0 SUBB A,31H MOV 31H,A MOV A,#0 SUBB A,30H MOV 30H,A
42、在片内RAM的30H~3FH单元,存放着16个无符号字节数据,编写程序,计算这16个数的和,结果保存到40H和41H中。 答:SJMP $
43、设计一个2×2的行列式键盘(同在P1口)电路并编写键扫描程序。 #include
unsigned char row,col=0,k =-1; P1=0xfc;
if((P1&0xfc)==0xfc) return(k); delay20ms(); if((P1&0xfc)==0xfc) return(k); for(row=0;row<2;row++) {
P1=~(1< while(k&(1<<(col+2))) col++; k=row*2+col; P1=0xfc; while(P1&0xfc!=0xfc); break; } } return k; }
共分享92篇相关文档