1、单片机原理及应用试题库一、填空题1、MCS51 有 5 个中断源,有 2 个中断优先级,优先级由软件填写特殊功能寄存器 IP 加以选择。2、MOV PSW ,10H 是将 MCS51 的工作寄存器置为第 2 区。3、用串口扩并口时,串行接口工作方式应选为方式 0 。4、寄存器 PC 复位后为 0000H 。5、PSW 中 RS1RS010 时,R2 的地址为 12H 。PSW 中 RS1RS011 时,R7 的地址为 1FH 。6、MCS51 中,T0 中断服务程序入口地址为 000BH 。7、80C51 中断有 2 个优先级。8、80C51 中断嵌套最多 级。9、MCS51 单片机访问片外存
2、贮器时,利用 ALE 信号锁存来自 P0 口的低 8 位地址信号。10、12 根地址线可选 4K 个存储单元,32KB 存储单元需要 15 根地址线。11、三态缓冲寄存器输出端的“三态”是指 高电平 态、 低电平 态和 高阻 态。12、74LS138 是具有 3 个输入的译码器芯片,其输出作为片选信号时,最多可以选中 8 块芯片。13、A/D 转换器的作用是将 模拟 量转为 数字 量,D/A 转换器的作用是将 数字 量转为 模拟 量。14、单片机系统复位后,PSW00H,因此片内 RAM 寄存区的当前寄存器是第 0 组,8 个寄存器的地址为 00H 07H 。15、假定 SP60H,ACC30
3、H,B70H,执行下列指令:PUSH ACCPUSH B后,SP 的内容为 ,61H 单元的内容为 ,62H 单元的内容为 。16、假定 SP62H, (61H)30H, (62H)70H ,执行下列指令:POP DPHPOP DPL后,DPTR 的内容为 7030H ,SP 的内容为 60H 。17、单片机的数据通信方式有二种,即 串行 方式和 并行 方式,其中 串行 方式传输距离较远,成本较低。18、异步串行通信有 单工 、 半双工 和 全双工 共三种传送方向形式。19、异步串行通信的帧格式由 起始位、 数据 位、 奇偶校验 位和 停止 位组成。20、波特率的含义为 每秒传二进制的位数 ,
4、其单位为 bps 。21、MOVX 指令用来对 片外 RAM 进行读写操作。22、80C51 的 T1 作为串行口方式 1 和方式 3 的波特率发生器。23、定时器 0 和定时器 1 的中断标志分别为 TF0 和 TF1 。24、外部中断 0 和外部中断 1 的中断标志分别为 IE0 和 IE1 。25、T0 和 T1 两引脚也可作为外部中断输入引脚,这时 TMOD 寄存器中的 C/位应当为 1 。(我认为“作为外部中断输入引脚”就是计数器方式,故为 1)26、通过设置 TMOD 中的 M1M0 位可以定义定时/计数器的工作方式,其中 0为 00 ,方式 1 为 01 ,方式 2 为 10 。
5、27、MCS51 内有 5 个中断源,按其自然优先级从高到低的排列顺序为 外部0 、 定时器/计数器 0 、 外部 1 、 定时器 /计数器 1 、 串口 ,它们所对应的中断入口地址分别为 0003H 、 00BH 、 0013H 、 001BH 、 0023H 。288051 单片机片内有 4 个 8 位的 I/O 口,它们分别是 P0 、 P1 、P2 和 P3 ,其中具有第二功能的 I/O 口为 P3 。298051 单片机低 128 单元随机存贮器,按其用途可划分为 寄存器 区、 位寻址 区、字节寻址 区,它们的地址范围分别为 00H-1FH 、 20H-2FH 、 30H-7FH 。
6、308051 单片机中有 4 个工作寄存器区,选择当前工作寄存器组是由程序状态寄存器 PSW 中的 RS1RS0 位的状态组合来决定。318051 单片机一个字节所能表示的无符号数的范围为 00-255 ,而带符号所能表示的无符号数的范围为 。 (我只知道:带符号所能表示的范围为 -128127 )32单片机进行 0B0H9FH 后,PSW 中各位分别为 CY ,AC ,OV ,P 。33单片机指令具有七种寻址方式,它们分别是 立即 、 直接 、 寄存器 、间接 、 相对 、 变址 、 位 。348051 单片机片内具有 4K 和 128B RAM (ROM、RAM、EPROM、EEPROM)
7、358051 单片机一共有 111 条指令,其寻址方式主要有 7 种。36对于 6MHz 时钟频率,其机器周期为 2us 。对于 12MHz 时钟频率,其机器周期为 1us 。378051 单片机复位后 SP 07H ,ACC 00H ,P0 FFH 。38单片机指令分为 指令和 伪 指令,单片机能直接执行的是 指令,它存放在单片机的 ROM (RAM、ROM )中。39堆栈是 RAM 中另外划出的一个特殊的存贮器区,用来暂存数据和地址。它是根据 先 进 后 出的原则存取数据。 4012 根地址线可选 4K 个存储单元;64KB 存储单元需要 16 根地址线,其地址范围为 0000H-FFFF
8、H 。 二、简答题1、8051 单片机内部有几个定时/计数器?他们是由哪些专用寄存器组成?2、定时/计数器用做定时时,其定时时间与哪些因素有关?做计数时,对外界计数频率有何限制?3、什么是串行通信、并行通信?其优缺点?4、与 MCS51 串行口有关的特殊功能寄存器有哪几个?5、七段 LED 显示器静态显示和动态显示分别具有什么特点?6、键盘的工作方式通常有哪三种?7、软件上采取的消除抖动的措施是什么?8、数据存储器空间地址同程序存储器一样,那么为什么不会发生总线冲突呢?9、MCS51 单片机有哪几种中断源?如何设定它们的优先级?各自的中断入口地址10、外部中断有哪几种触发方式?如何设定?11、
9、什么是中断、断点、中断源和中断请求?12、CPU 响应中断的基本条件是什么?13、串行通信有哪几种制式?14、什么是异步串行通信?有几种格式?其优缺点?15、8255 和 MCS51 相连可以为外设提供哪几个 8 位 I/O 端口?16、中断系统相关寄存器 IE/IP 及其位的含义,中断响应过程。17、定时器相关的寄存器(TCON/TMOD)其位的定义?18、简述 SCON 中 SM2、TB8、RB8 的作用?19、A/D、D/A 转换器的输入量与输出量各是什么?20、串行通信的波特率?21、定时器有几种工作方式,其定时初值如何计算?22、CPU 片外扩展 RAM、ROM 时的连接及其地址范围
10、。三、计算题,黄宗胤总结了一下,认为单片机可能就这几类计算题,重要!第一类:计算延时时间,按要求分为粗略算法和精确算法,要求用粗算而用精算则不合题1、以下为延时子程序,假设时钟频率为 6M,估算其延时时间。DELAY: MOV R0,100 ;单周期DEL2: MOV R1,10 DEL1: MOV R2,7DH DEL0: NOP ;单周期NOP DJNZ R2,DEL0 ;双周期DJNZ R1,DEL1 DJNZ R0,DEL2 RET ;双周期2、以下为延时子程序,假设时钟频率为 6M,精确计算其延时时间。DEL1: MOV R2,0C8H ;单周期DEL0: NOP ;单周期DJNZ
11、R2,DEL0 ;双周期RET ;双周期第二类:计算定时时间,可以是要求定时时间求初值(多数题),或给定初值求定时时间。3、晶振 fosc 为 12MHz,用定时器 0 方式 1 产生 20ms 定时,计算确定其初值TL0 和 TH0。4、晶振 fosc 为 6MHz,用定时器 1 方式 1 产生 2.5ms 定时,计算确定其初值TL0 和 TH0。第三类:计算波特率,可以是要求波特率求初值(多数题),或给定初值求波特率。5、若 8051 的晶振频率 fosc 为 11.0592MHz,串行口工作在方式 1,T1 作为波特率发生器,T1 工作在自动重装初值的 8 位定时方式,设 SMOD=0,
12、(TH1)=0FAH,求串行口的波特率。解:0FAH=250T1 的溢出率=fosc/(12*(256-250)= 11.0592MHz /72=0.1536 MHz=153.6KHz 波特率=(2 SMOD/32)*( T1 的溢出率)= 153.6KHz/32=4.8 KHz=4800 Hz 6、若 8051 的晶振频率 fosc 为 11.0592MHz,串行口工作在方式 1,T1 作为波特率发生器,T1 工作在自动重装初值的 8 位定时方式,要求串行口的波特率为4800Hz,请设置 SMOD、TH1 的值。【是 5 题的反问题,答案是设 SMOD=0,(TH1)=0FAH,或设SMOD
13、=1,(TH1)=0F4H】7、若 8051 的晶振频率 fosc 为 11.0592MHz,串行口工作在方式 1,T1 作为波特率发生器,T1 工作在自动重装初值的 8 位定时方式,设 SMOD=0,要求串行口的波特率为 4800Hz,求出 TH1 的值。【是 5 题的反问题,由:波特率=(2 SMOD/32)*( T1 的溢出率)= ( T1 的溢出率)/32=4.8 KHz 知:T1 的溢出率=4.8 KHz*32=153.6KHz=0.1536 MHz 再由: T1 的溢出率=fosc/(12*(256-TH1) =11.0592 MHz /(12*(256-TH1)= 0.1536
14、MHz 256-TH1= 11.0592 MHz /12/0.1536 MHz=6 得:TH1=250=0FAH 】四、编程题1、编制程序。将 30H 单元开始存放的 8 字节二进制数(低位在 30H)与 40H 单元开始存放的 8 字节二进制数(低位在 40H)相加,结果存入 40H 单元开始的8 个单元中(低位在 40H) 。2、编写程序。判别 RAM 中 30H 单元的内容,若( 30H)10,则 31H 单元内容置 01H;若(30H)10,则 31H 单元内容置 02H;若(30H)10,则 31H 单元内容置 03H。3、编写程序,使内部 RAM 中 20H 和 30H 单元内容互
15、换。5、编写程序。两个无符号数比较,内部 RAM 的 20H 单元和 30H 单元各存放了一个 8 位无符号数,请比较这两个数的大小,若(20H )(30H ) ,则 P1.0清零,否则 P1.1 清零。6、现有一 5V 蜂鸣器,用 89C51 设计一系统,由 P1.0 控制蜂鸣器周而复始地响20,停 20。要求 20定时时间由定时器 0 产生。画出电路,编写程序(fosc=6MHz) 。7、使用 89C51 片内定时器 1 编一个程序,从 P1.0 输出 50H的对称方波(fosc=12MHz) 。8、使用 89C51 片内定时器 1(工作在方式 2)为波特率发生器,欲以 9.6kHz 通过
16、串口通信,串口工作在方式 3,请先算定时器初值,再编写初始化程序(fosc=11.0592MHz) 。9、利用 89C51 的 P1 口控制 8 个发光二极管 LED,LED1LED4 为一组,LED5LED8 为一组,使二组每隔 0.5 秒交替发亮一次,周而复始。画出电路,编写程序。10、编写计算下式的程序。设乘积和平方结果均小于 255。a、b 值分别存在3001H 和 3002H 单元中,结果存于片外 3000H 单元中。 (12 分)(a+b)2+10 (a+b)21011、请用位操作指令编程,求下面逻辑方程,结果由 P2.3 输出。 (10 分)P2.3( / P1.5 B.4 +
17、/ ACC.7) P1.012、编程计算下列算式的程序,结果存入 40H 42H 单元中(42H 单元为高位) 。(10 分)AB123H - 43ADCH13、编程计算下列算式的程序(10 分)CDH+15H-38H-46H14、请用位操作指令编程,求下面逻辑方程,结果由 P1.7 输出。 (10 分)P1.7=ACC.0*(B.0+P2.1)+/P3.2一、单选题、 1、十进制数 126 其对应的十六进制可表示为( ) A、8 F B、8 E C、 F E D、7 E 2、十进制数 89.75 其对应的二进制可表示为( ) A、10001001.01110101 B、1001001.10
18、C、 1011001.11 D、10011000.11 3、二进制数 110010010 对应的十六进制数可表示为( )A、192H B、C90H C 、 1A2H D、CA0H 4、二进制数 110110110 对应的十六进制数可表示为( ) A、1D3H B、1B6H C 、 DB0H D、666H 5、-3 的补码是( ) A、10000011 B、11111100 C、11111110 D、11111101 6、下列表达式错误的是( ) A、X 补+Y 补=X+Y 补 B、X=X 补补C、 X= X D、XY+XY =X+Y 7、CPU 主要的组成部部分为( ) A、运算器、控制器 B
19、、加法器、寄存器 C、运算器、寄存器 D 、运算器、指令译码器 8、单片机的主要组成部件为( ) A、CPU,内存,I/O 口 B、CPU,键盘,显示器 C 、主机,外部设备 D、以上都是 9、INTEL 8051 CPU 是( )位的单片机 A、16 B、4 C、8 D、准 16 10、对于 INTEL 8031 来说, EA 脚总是( ) A、接地 B、接电源C、悬空 D、不用 11、在计算机中“A”是用( )来表示的 A、 BCD 码 B、二十进制编码C、余三码 D、ASC I I 码 12、在单片机中,通常将一些中间计算结果放在( )中 A 累加器 B 控制器C 程序存储器 D 数据存
20、储器 13、程序计数器 PC 用来( ) A、存放指令 B、存放正在执行的指令地址 C、存放下一条的指令地址 D、存放上一条的指令地址 14、数据指针 DPTR 在( )中 A、CPU 控制器 B、CPU 运算器 C、外部程序存储器 D、外部数据存储器 15、指令和程序是以( )形式存放在程序存储器中 A 、源程序 B 、汇编程序C、二进制编码 D、BCD 码 16、单片机应用程序一般存放在( ) A、RAM B、ROM C、寄存器 D、CPU 17、单片机上电后或复位后,工作寄存器 R0 是在( )A 、0 区 00H 单元B、 0 区 01H 单元 C 、 0 区 09H 单元 D、SFR
21、 18、进位标志 CY 在( )中 A、累加器 B、算逻运算部件 ALU C、程序状态字寄存器 PSW D、DPTR 19、单片机 8051 的 XTAL1 和 XTAL2 引脚是( )引脚A、外接定时器 B、外接串行口 C、外接中断 D、外接晶振 20、8031 复位后,PC 与 SP 的值为( ) A、0000H,00H B、0000H,07H C、0003H,07H 寄存器D、0800H,00H 21、单片机的堆栈指针 SP 始终是( )A、指示堆栈底 B、指示堆栈顶 C、指示堆栈地址 D、指示堆栈长度 22、P0、P1 口作输入用途之前必须( ) A、相应端口先置 1 B、相应端口先置
22、 0 C、外接高电平 D、外接上拉电阻 23、一个 EPROM 的地址有 A0-A11 引脚,它的容量为( ) A、2KB B、4KB C、11KB D、12KB 24、8031 单片机中既可位寻址又可字节寻址的单元是( ) A、20H B、30H C、00H D、70H 25、8031 单片机中片内 RAM 共有( )字节 A、128 B、256 C 、4K D、64K 26、执行指令 MOVX A,DPTR 时, 、 脚的电平为( ) A 、 高电平, 低电平 B、 低电平, 高电平 C、 高电平, 高电平 D、低电平, 低电平27、INTEL 8031 的 P0 口,当使用外部存储器时它
23、是一个( ) A、传输高 8 位地址口 B、传输低 8 位地址口 C、传输低 8 位数据口 D、传输低 8 位地址数据总线口 28、当标志寄存器 P S W 的 RS0 和 RS1 分别为 1 和 0 时,系统选用的工作寄存器组为( )A、组 0 B、组 1 C、组 2 D、组 3 29、下列指令中错误的是()A、MOV A,R4 B 、MOV 20H,R4 C 、MOV R4 ,R3 D、MOV R4,R3 30、下列指令中不影响 标志位 CY 的指令有( ) A、ADD A,20H B、CLR A C 、RRC A D、INC A 31、LJMP 跳转空间最大可达到( ) A、2KB B、
24、256B C 、128B D、64KB 32、计算机内部数据之所以用二进制形式表示,主要是( ) A、为了编程方便 B、由于受器件的物理性能限制 C 、为了通用性 D 、为了提高运算速度 33、8051 单片机共有( )中断源 A、4 B、5 C 、6 D、7 34、8051 单片机共有( )个中断优先级 A、2 B、3 C 、4 D、5 35、外部中断源 I E 1(外部中断 1)的向量地址为( ) A、0003H B、000BH C 、0013H D、002BH 36、累加器 A 的位地址为( ) A、E 7 H B、F 7 H C 、D 7 H D、87H 37、寄存器 B 的位地址为(
25、 ) A、E 7 H B、F 7 H C 、D 7 H D、87H 38、8051 的内部 RAM 中,可以进行位寻址的地址空间为( )A、00H2FH B 、20H 2FH C 、00HFFH D 、20HFFH 39、设累加器 A 的内容为 0C9H,寄存器 R2 的内容为 54H,CY=1,执行指令SUBB A,R2 后结果为( ) A、 (A)=74H B、 ( R2)=74H C 、 (A)=75H D、 (R2)=75H 40、设(A)=0C3 H, (R0)=0A AH,执行指令 A N L A,R0 后,结果( ) A、 (A)=82H B、 (A)=6CH C 、 (R0)
26、=82 D、 (R0)=6CH 41、8051 的程序计数器 P C 为 16 位计数器,其寻址范围是( )A、8K B、16 K C 、32 K D、64 K 42、提高单片机的晶振频率,则机器周期( ) A 、不变 B 、变长 C 、变短D、不定 43、在堆栈操作中,当进栈数据全部弹出后,这时 S P 应指向( ) A、栈底单元 B、7FH 单元 C 、栈底单元地址加 1 D、栈底单元地址减 1 44、8051 单片机中,唯一一个用户不能直接使用的寄存器是( )A、P S W B、D P T R C 、P C D、B 45、8051 单片机中,唯一一个用户可使用的 16 位寄存器是( )A
27、、P S W B、D P T R C 、A C C D、P C 46、执行如下三条指令后,30H 单元的内容是( )A、40H B、30H C 、0 E H D、F F H M O V R1,30H M O V 40H,0 E H M O V R1,40H 47、有如下程序段: M O V R0,30H S E T B C C L R A A D D C A,00H M O V R0,A 执行结果是( ) A、 (30H)=00H B、 (30H)=01H C 、 (00H)=00H D、 (00H)=01H 48、从地址 2132H 开始有一条绝对转移指令 A J M P addr11,指令
28、可能实现的转移范围是( ) A、2000H27FFH B、2132H2832H C 、2100H28FFH D、2000H3FFFH 49、中断是一种( ) A、资源共享技术 B、数据转换技术 C 、数据共享技术 D、并行处理技术 50、执行 M O V I E,81H 指令的意义是:( ) A、屏蔽中断源 B、开放外部中断源 0 C 、开放外部中断源 1 D、开放外部中断源 0 和 1 1.D 2.C 3.A 4.B 5.D 6.D 7.A 8.A 9.C 10.A 11.D 12.A 13.C 14.A 15.C 16.B 17.A 18.C 19.D 20.B 21.B 22.A 23.B 24.A 25.B (?应是 A) 26.A 27.D 28.B 29.D 30.B 31.D 32.B 33.B 34.A 35.C 36.A 37.B 38.B 39.A 40.A 41.D 42.C 43.C (?应是 D) 44.C 45.B 46.C 47.B 48.A 49.D 50.B