




已阅读5页,还剩21页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
单片机原理及应用期末复习题一、填空题 1相对寻址是以 PC 的当前值为基准,加上指令中给出的相对 偏移量 形成目标地址的方式。2AT89S51单片机的1个机器周期含有 12 个晶振周期或 6 状态周期。3AT89S51单片机进行扩展时,用 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 ,则其相应波特率为 6106/64 b/s11堆栈应遵循 先进后出 规律,堆栈指针的符号为 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 。二、单项选择题1AT89S51单片机的( d )口的引脚,还具有外中断、串行通信等第二功能。a)P0 b)P1 c)P2 d)P32单片机应用程序一般存放在(b) a)RAM b)ROM c)寄存器 d)CPU3已知某数的BCD码为0111010101000010 则其表示的十进制数值为( b )a) 7542H b) 7542 c) 75.42H d) 75.424下列指令中不影响标志位CY的指令有(d)。 a)ADDA,20Hb)CLR c)RRCA d)INCA5CPU主要的组成部部分为(a) a)运算器、控制器b)加法器、寄存器c)运算器、寄存器d)运算器、指令译码器6AT89S51 的CPU是(c)位的单片机 a) 16 b)4 c)8 d)准167当需要从AT89S51单片机程序存储器取数据时,采用的指令为( b )。 a)MOVA,R1 b)MOVCA,A+DPTR c)MOVXA,R0d)MOVXA,DPTR8AT89S51单片机中既可位寻址又可字节寻址的单元是(a) a)20H b)30H c)00H d)70H9下列哪条指令是正确的( d )a) PUSH R2 b) ADD R0, Ac) MOVXA DPTR d) MOV R0, A11.要使累加器A的高4位置为0000,低4位不变,以下指令正确的是 B 。(A)ANL A, #0F0H(B)ANL A, #0FH(C)ORL A, #0F0H(D)ORL A, #0FH12. 利用串行口工作方式1进行异步串行通信,当其波特率为4800bps,每秒最多能传送 A 个字符。(A)480(B)960(C)4800(D)960013. C51中,要编写一个中断函数,则必须在函数名后加 B 修饰符。(A)void(B)interrupt(C)using(D)unsigned14. 51系列单片机系统中需扩展32KByte的片外RAM,则需要 C 片6264(8K8bit)。(A)1(B)2(C)4(D)815. 若单片机当前正在执行高优先级的中断服务,则以下能响应的中断是 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: RET2、外部RAM单元2000H的内容传送到内部RAM单元70H; MOV DPTR,#2000HMOVX A,DPTRMOV 70H, A 3、将32H单元中内容的第7位取反后送给50H。 MOV A,32H CPL ACC.7 MOV C,ACC.7 MOV 50H,C4、若(50H)=40H,试写出执行以下程序段后累加器A、寄存器R0及内部RAM的40H、41H、42H单元中的内容各为多少?(5分)MOV A,50H ;(A)=40HMOV R0,A ;(R0)=40HMOV A,#00H ;(A)=0MOV R0,A ;(40H)=0MOV A, #3BH ;(A)=3BHMOV 41H,A ;(41H)=3BHMOV 42H,41H ;(42H)=3BH(A)= 3BH ; (R0)= 40H; (40H)= 0; (41H)= 3BH;(42H)= 3BH5、将外部数据存储器3000H开始100个存储单元的内容存入3070开始的存储单元(9分) MOV DPTR #3000HMOV P2,#30HMOV R1,#70H MOV R5,#100L1: MOVX A, DPTR MOVXR1,AINC R1INC DPTRDJNZ R5, L1RET四、读程序填空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) 该程序的功能是: 求出40H44H中最大的无符号数,并将最大数存入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,# 30HRR1: MOV A,R0 RRC A MOV R0,A INC R0 DJNZ R6,RR1 DJNZ R7,RR0 RET从该程序可看出这段程序的功能是: 将内RAM中30H32H的内容 右移4位 执行后结果:(30H)= 04H ,(31H)= 92H ,(32H)= 0BAH 。(3分)4、 已知()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)定时初值: (216X)1S = 50mSX=21650000 =15536(2) MOV TMOD,#01H ;设T0工作方式MOV DPTR,#15536 ;置定时初值50mSMOV TH0,DPHMOV TL0,DPLMOV 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 ;继续循环输出 END2、根据给定存储类型和数据类型,声明下列变量: (1)在片内RAM低128字节定义一个有符号整型变量val,初值为100;(signed) int data val = 100;(2)在ROM定义一个3元素的无符号字节数组num,数组内容分别为:12H,34H,56;unsigned char code num3 = 0x12, 0x34, 56;(3)在片外RAM定义一个指向无符号字节类型的指针变量p;unsigned char xdata *p;3、根据下图进行分析。(1)6264是程序存储器还是数据存储器? 数据存储器件(2)写出三片6264所占的地址范围。0x60000x7fff,0x800000x9fff;0xa0000xbfff4、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
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 燃气管道接入与分配系统优化方案
- 智能建筑空调系统设计、安装及能源管理服务合同
- 夫妻共同财产分割与离婚诉讼子女抚养费支付合同
- 房屋建筑工程施工现场废料管理与利用方案
- 脑出血护理测试题及答案
- 钢结构全寿命周期管理方案
- 道路工程课程的教学改革与虚拟实践模式
- 农林大学复试真题及答案
- 2025年中级轮胎测评题库及答案
- 4.3.1呼吸道对空气的处理(一)说课稿2023-2024学年人教版生物七年级下册
- 湿地巡护员培训课件
- 2025鄂尔多斯市城市建设投资集团招聘92人考试参考题库及答案解析
- 2025年地质实验室技术员综合素质考核试卷及答案解析
- 一氧化碳试卷及答案
- 2025年全国企业员工全面质量管理知识竞赛题库及答案(共132题) - 副本
- DL5000-火力发电厂设计技术规程
- 全文解读2021年新修订的《工会法》实用专题PPT讲授课件
- 深圳创业投资行业发展状况
- 《会议摄影怎样拍出彩?》PPT课件
- 美丽的秋天作文习作课件.ppt
- 标准版个人购房合同
评论
0/150
提交评论