收藏 分销(赏)

单片机原理及应用期末考试复习题.docx

上传人:人****来 文档编号:5422374 上传时间:2024-10-31 格式:DOCX 页数:15 大小:170.62KB 下载积分:8 金币
下载 相关 举报
单片机原理及应用期末考试复习题.docx_第1页
第1页 / 共15页
单片机原理及应用期末考试复习题.docx_第2页
第2页 / 共15页


点击查看更多>>
资源描述
资料内容仅供您学习参考,如有不当或者侵权,请联系改正或者删除。 单片机原理及应用期末复习题 一、 填空题 1.相对寻址是以 PC 的当前值为基准, 加上指令中给出的相对 偏移量 形成目标地址的方式。 2.AT89S51单片机的1个机器周期含有 12 个晶振周期或 6 状态周期。 3.AT89S51单片机进行扩展时, 用 P0 口作为地址/数据总线, 用 P2 口作为地址总线高8位。 4.假定累加器A的内容30H, 执行指令: 1000H: MOVC A, @A+PC后, 把 程序存储器1031H单元的内容送累加器A中 5. 指令格式是由 操作码 和 操作数 部分组成。 6. AT89S51单片机的串行口控制寄存器中有2个中断标志位, 它们是 TI 和 RI 7. JNC rel指令执行时, 当CY位为 0 时程序发生跳转。 8. 单片机位寻址区的单元地址是从20H单元到2FH单元, 若某位地址是10H, 它所在单元的地址应该是 22H 。 9.外部中断0的中断入口地址为 0003H , 定时/记数器T1的中断入口地址为 001BH 。 10.串行口工作方式2为 9位异步通信, 若SMOD=0, f OSC = 6 MHZ , 则其相应波特率为 6×106/64 b/s 11.堆栈应遵循 先进后出 规律, 堆栈指针的符号为 SP 12、 程序计数器PC存放的是 下一条要执行指令的地址 ; 13、 指令MOVX A, @DPTR的寻址方式是 寄存器间接寻址 : 14、 MCS-51访问ROM、 片内RAM、 片外RAM的指令助记符分别为 MOVC 、 MOV和 MOVX 。 15、 机器字长为8位, 则[—10]原 = 8AH , [-10]反 = F5H , [-10]补 = F6H 。 16、 已经累加器A = 97H, 则执行指令ADD A, #7DH后, A = 14H , C = 1 , OV = 0 , AC = 1 。 二、 单项选择题 1.AT89S51单片机的( d )口的引脚, 还具有外中断、 串行通信等第二功能。 a) P0  b) P1 c) P2  d) P3 2.单片机应用程序一般存放在(   b   )      a)RAM      b) ROM    c) 寄存器   d) CPU   3.已知某数的BCD码为0010 则其表示的十进制数值为( b ) a) 7542H b) 7542 c) 75.42H d) 75.42 4.下列指令中不影响标志位CY的指令有(   d   ) 。     a) ADD A, 20H     b) CLR      c) RRC A   d) INC A 5.CPU主要的组成部部分为(  a  )       a) 运算器、 控制器     b) 加法器、 寄存器  c) 运算器、 寄存器     d) 运算器、 指令译码器  6.AT89S51 的CPU是(    c  ) 位的单片机      a) 16          b) 4           c) 8          d) 准16  7.当需要从AT89S51单片机程序存储器取数据时, 采用的指令为( b ) 。  a) MOV  A, @R1         b) MOVC  A,  @A + DPTR  c) MOVX  A, @ R0        d) MOVX  A,  @ DPTR  8.AT89S51单片机中既可位寻址又可字节寻址的单元是(    a  )    a) 20H       b) 30H           c) 00H        d) 70H   9.下列哪条指令是正确的( d ) a) PUSH R2 b) ADD R0, A c) MOVX A @DPTR d) MOV @R0, A 11.要使累加器A的高4位置为0000, 低4位不变, 以下指令正确的是 B 。 ( A) ANL A, #0F0H ( B) ANL A, #0FH ( C) ORL A, #0F0H ( D) ORL A, #0FH 12. 利用串行口工作方式1进行异步串行通信, 当其波特率为4800bps, 每秒最多能传送 A 个字符。 ( A) 480 ( B) 960 ( C) 4800 ( D) 9600 13. C51中, 要编写一个中断函数, 则必须在函数名后加 B 修饰符。 ( A) void ( B) interrupt ( C) using ( D) unsigned 14. 51系列单片机系统中需扩展32KByte的片外RAM, 则需要 C 片6264( 8K×8bit) 。 ( A) 1 ( B) 2 ( C) 4 ( D) 8 15. 若单片机当前正在执行高优先级的中断服务, 则以下能响应的中断是 D 。 ( A) 高优先级中断 ( B) 同优先级中断 ( C) 低优先级中断 ( D) 以上都不能响应 16. 键盘的软件消除键抖动是经过 C 来实现的。 ( A) 加滤波器 ( B) 中断 ( C) 延时 ( D) 加RS触发器 三、 写出实现下列各要求的指令或程序段 1、 将80H单元中的内容与数据4FH相比较, 相等返回, 不相等将80H单元置FFH返回。 MOV A, 80H CJNE A, # 4FH, BD SJMP L1 BD: MOV 80H, #0FFH L1: RET 2、 外部RAM单元 H的内容传送到内部RAM单元70H; MOV DPTR, # H MOVX A, @DPTR MOV 70H, A 3、 将32H单元中内容的第7位取反后送给50H。 MOV A, 32H CPL ACC.7 MOV C, ACC.7 MOV 50H, C 4、 若( 50H) =40H, 试写出执行以下程序段后累加器A、 寄存器R0及内部RAM的40H、 41H、 42H单元中的内容各为多少? ( 5分) MOV A, 50H ; (A)=40H MOV R0, A ; (R0)=40H MOV A, #00H ; (A)=0 MOV @R0, A ; (40H)=0 MOV A, #3BH ; (A)=3BH MOV 41H, A ; (41H)=3BH MOV 42H, 41H ; (42H)=3BH (A)= 3BH ; (R0)= 40H; (40H)= 0; (41H)= 3BH; (42H)= 3BH 5、 将外部数据存储器3000H开始100个存储单元的内容存入3070开始的存储单 元( 9分) MOV DPTR #3000H MOV P2,#30H MOV R1,#70H MOV R5,#100 L1: MOVX A, @DPTR MOVX@R1,A INC R1 INC DPTR DJNZ R5, L1 RET 四、 读程序填空 1. CLR C MOV A, 4DH SUBB A,, 4EH MOV 30H, A MOV A, 7FH SUBB A, 2BH MOV 31H, A SJMP $ ( 1) 该程序的功能是: 两个16位数的减法: (7F4DH)-(2B4EH), 结果存入内部RAM的30H和31H单元, 31H单元存差的高8位, 30H单元存差的低8位 ( 2) 若( 4DH) =06H, (4EH)=05H, ( 7FH) =0AH, (2BH)=01H 则执行上述程序后( 30H) = 01 H。( 31H) = 09 H。 2. START: MOV R0 , #40H MOV R7, #04H MOV A, @R0 LOOP: INC R0 MOV 50H , @R0 CJNE A, 50H , NEXT NEXT: JNC BIE1 MOV A, 50H BIE1: DJNZ R7, LOOP MOV 30H, A RET (1) 该程序的功能是: 求出40H—44H中最大的无符号数, 并将最大数存入30H中 (2) 设(40H)=12H, (41H)=22H , (42H)= 6EH, (43H)=5AH , (44H)= 8AH, 填写程序执行后的结果, (30H)= 8A H。 3.已知( 30H) =49H, ( 31H) =2BH, ( 32H) =0A3H, 执行以下程序: MOV R7, # 4 RR0: MOV R6, # 3 CLR C MOV R0, # 30H RR1: MOV A, @R0 RRC A MOV @R0, A INC R0 DJNZ R6, RR1 DJNZ R7, RR0 RET 从该程序可看出这段程序的功能是: 将内RAM中30H~32H的内容 右移4位 执行后结果: ( 30H) = 04H , ( 31H) = 92H , ( 32H) = 0BAH 。 ( 3分) 4、 已知( A) =58H, ( 30H) =7FH, ( P1) =EAH, 执行下列程序: MOV SP, #40H PUSH A PUSH 30H MOV A, P1 MOV 30H, A POP 30H POP A 执行后结果: ( SP) = 40H , ( A) = 58H , ( 30H) = 7FH , ( 41H) = 58H 。 五、 根据题意, 按要求答题。 1. AT98S51单片机P1口上接8只发光二极管( 高电平亮, 低电平灭) , 若晶振频率是12MHz, 用定时/计数器T0以工作方式1工作, 使8只发光二极管每1S单循环点亮。 (1) 计算定时初值, 写出过程 (2) 根据相关注释, 填写程序 (3) 答: ( 1) 定时初值: ( 216-X) ×1μS = 50mS X=216-50000 =15536 ( 2) MOV TMOD, #01H ; 设T0工作方式 MOV DPTR, #15536 ; 置定时初值50mS MOV TH0, DPH MOV TL0, DPL MOV A, #01H ; 置A初值 SETB TR0 ; 允许定时 LOOP: MOV R7, #20 ; 设定时次数 MOV P1, A ; 从P1口输出 LOOP1: JNB TF0, $ ; 判断定时50mS到没 CLR TF0 ; 定时时间到, TF0清0 MOV TH0, DPH ; 重新置定时初值50mS MOV TL0, DPL DJNZ R7, LOOP1 ; 判断定时次数到没 RL A ; 输出左移 SJMP LOOP ; 继续循环输出 END 2、 根据给定存储类型和数据类型, 声明下列变量: ( 1) 在片内RAM低128字节定义一个有符号整型变量val, 初值为100; (signed) int data val = 100; ( 2) 在ROM定义一个3元素的无符号字节数组num, 数组内容分别为: 12H, 34H, 56; unsigned char code num[3] = {0x12, 0x34, 56}; ( 3) 在片外RAM定义一个指向无符号字节类型的指针变量p; unsigned char xdata *p; 3、 根据下图进行分析。 ( 1) 6264是程序存储器还是数据存储器? 数据存储器件 ( 2) 写出三片6264所占的地址范围。 0x6000~0x7fff,0x80000`0x9fff;0xa000~0xbfff 4、 51系列单片机中, 利用8255A扩展了3个共阴极LED数码管, 如下图所示。 ( 1) 写出8255A的控制字; 控制字: 0x80 ( 2) 写出三位数码管显示”8””1””0”时( 按上图由左至右显示为”810”) , PA口和PB口分别送出的数据; ”8”: 0x7f 0xfe? ”1”: 0x06 0xfd? ”0”: 0x3f 0xfb? 8255控制字: 特征位 A组工作方式 A口入/出 C口高4位入/出 B组工作方式 B口入/出 C口低4位入/出 6、 简述矩阵式8行2列键盘的工作过程, 其中P1口连接8根行线, P3.0和P3.1连接2根列线。 判断是否有键按下: 先给列线P3.0和P3.1送低电平, 然后读行线P1的值, 判断P1是否为0xff; 若P1为0xff则表示没有键按下, 则返回重新判断是否有键按下; 若P1不为0xff则表示有键按下, 则延时10ms去抖动, 再重新读行线P1口, 再次判断是否有键按下。 若确实有键按下, 则判断哪一个键按下: 先给第一根列线P3.0送低电平, 而P3.1送高电平, 然后读行线P1, 判断P1是否为0xff; 若是则表示按下的键在这第一列; 否则给第二列P3.1送低电平, 而P3.0送高电平, 然后读行线P1, 判断P1是否为0xff, 若是则表示按下的键在这第二列; 找到按键所在列后, 再根据读到的行线值中0的位置从而判断按键所在行线。 确定按键后, 执行按键所对应的服务程序; 然后等待键释放; 按键释放经过给所有的列线P3.0和P3.1送低电平, 然后读行线P1的值来进行判断; 按键释放后再次延时去抖动, 然后返回重新判断是否有键按下。 7、 简述51单片机串行双机通信的过程, 写明发送和接收时软硬件分别执行的操作。 先 数据发送时, 在TI=0时, CPU将待发送数据送入SBUF, 启动发送; 数据由TXD引脚按位送出, 发送时钟由T1控制, 最先送出起始位( 0) , 然后依次是8位数据位( 低位在前) , 最后是停止位( 1) ; 一帧数据发送完毕后, 硬件自动将TI置1, 向CPU请求中断; CPU接收到请求信号后, 需将TI清0, 然后才能启动下一次发送。 数据接收时, 允许接收位REN必须置1, 接收器开始工作; 当接收到起始位( 0) , 启动接收; 在波特率的控制下, 把接收到的数据依次移入移位寄存器; 当接收完一帧数据, 将移位寄存器中的数据送入SBUF, 同时硬件自动将RI置1, 向CPU请求中断。CPU接收到请求信号后, 需将RI清0, 然后才能正常接收下一帧数据。
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传

当前位置:首页 > 包罗万象 > 大杂烩

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2026 宁波自信网络信息技术有限公司  版权所有

客服电话:0574-28810668  投诉电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服