模拟试题二

更新时间:2024-03-29 01:41:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

模拟试题二 一、填空题(30分)(每空1分) 1)8051系列单片机中,片内数据存储区一共分为4个区,这4个区分别为: ; ; ; 。 2)8K字节的存储器共有地址线 根。 3)3—8译码器74LS138在全译码寻址方式中,译码器的输出端通常与单片机接口芯片

的 端连接。 4)当单片机接到外设的中断申请时,单片机响应中断,单片机将暂停主程序的执行,转去

执行 程序,执行完 ,再执行 程序。 5)8051单片机的中断源

有: , , , , 。 6) 单片机P0口为 总线和 总线的复用端口,74LS373与P0口连

接,其输出线作为系统的 ,74LS373的G端与单片机 连接。 7) 已知程序执行前有A=01H,SP=52H,(51H)=FFH,(52H)=FFH。下述程序执行后: POP DPH POP DPL MOV DPTR,#3000H RL A MOV B,A MOVC A,@A+DPTR PUSH A MOV A,B INC A MOVC A,@A+DPTR PUSH A RET ORG 3000H DB 10H,80H,30H,80H,50H,80H 请问:A=( ),SP=( ),(51H)=( ),(52H)=( ),PC=()。 9) 如果DPTR=507BH,SP=32H,(30H)=50H,(31H)=5FH,(32H)=3CH,则执行下列指

令后: POP DPH POP DPL POP SP 则:DPH=( ),DPL=( ),SP=( ) 10) 假定A=83H,(R0)=17H,(17H)=34H,执行以下指令: ANL A,#17H ORL 17H,A XRL A,@R0 CPL A 后,A的内容为( )。 二、简答题(20分) 1) 单片机的复位(RST)操作有几种方法,复位功能的主要作用。(5分) 2) 编制中断服务程序时,为什么在主程序的初始化程序中,必须设置 SETB EA 这条指令,

以及在中断服务程序中为什么通常需要保护现场和恢复现场?(10分) 3) 中断服务子程序返回指令RETI和普通子程序返回指令RET有什么区别?(5分) 三、判断下列指令的正误:(10分) 1)MOV 28H,@R2 ( ) 2)DEC DPTR ( ) 3)INC DPTR ( ) 4)MOV C,30H ( ) 5)CPL R5 ( ) 6)MOV R0,R1 ( ) 7)PUSH DPTR ( ) 8)MOV F0,C ( ) 9)MOV F0,ACC.3 ( ) 10)RLC R0 ( ) 四、编程题(40分) 1、编制中断初始化程序,外部中断0(跳变触发)、定时器0开中断(中断允许);外部

中断1、定时器1关中断(不允许中断)。(5分) 2、编程将片内RAM 40H 单元开始的16个数传送到片外RAM 2000H 开始的单元中。(5分) 3、使用定时器中断方式编程实现从P1.0引脚上输出一个周期为1s的方波。(系统时钟为

6MHz)(15分) 4. 根据硬件图计算ADC0809的8个模拟量输入通道的地址,并编写程序实现8个通道的模

拟量循环采集,采集结构存放至片内RAM 40H~47H中。(15分)

模拟试题二参考答案

一、填空题(每空1分) 1、工作寄存器区、位寻址区、数据缓冲区、特殊功能寄存器区 2、13 3、片选端 4、中断服务程序,中断服务程序,主程序 4、外部0中断,定时器T0中断,外部1中断,定时器T1中断,串行口通讯中断 5、数据,地址,地址,ALE 6、中断服务,中断服务,主 7、30H,50H,80H,30H,3080H 8、3CH,5FH,4FH 9、0CBH 二、简答题 1、单片机的复位操作方式有:1、上电复位;2、手动复位。 (2分) 复位功能的主要作用是:复位时,PC初始化为0000H,使MCS-51单片机从0000H开始执行程序。(3分) 2、中断允许寄存器IE中有1个总的开关中断控制位EA,当EA=0时,所有的中断请求被屏蔽,CPU不接受任何中断;只有当EA=1时,CPU才开放中断。所以主程序的初始化程序中,必须设置 SETB EA 这条指令。 (5分) 现场是指中断时刻单片机中某些寄存器和储存器单元中的数据或状态,为了使中断服务程序的执行不破坏这些数据和状态,以免在中断返回后影响主程序的运行,因此要这些数据和状态送入堆栈保存,这就是现场保护。中断结束后,在返回主程序谦,则需要把保存的现场数据和状态从堆栈中弹出,以恢复那些寄存器和存储器单元中的原有内容,这就是现场恢复。 (5分) 3、中断服务子程序返回指令RETI和普通子程序返回指令RET的区别在于: RETI指令在返回的同时清除相应的优先级触发器,以允许下次中断。(5分) 三、判断下列指令的正误:(10分) 1、 × 2、 × 3、 √ 4、 √ 5、 × 6、 × 7、 × 8、 √ 9、 × 10、× 四、编程题 1、编制中断初始化程序,外部中断0(边沿触发)、定时器0开中断(中断允许);外部中断1、定时器1关中断(不允许中断)。 (5分) 解:SETB EX0 SETB IT0 SETB ET0 CLR ET1 CLR EX1 SETB EA 2、编程将片内RAM 40H 单元开始的16个数传送到片外RAM 2000H 开始的单元中。(5分) 解: MOV R0,#40H MOV R7,#16 MOV DPTR,#2000H LOOP: MOV A,@R0 MOVX @DPTR,A INC R0 INC DPTR DJNZ R7,LOOP NOP END 3、使用定时器中断方式编程实现从P1.0引脚上输出一个周期为1s的方波。(系统时钟为6MHz) 解:使用定时器T0产生50ms的定时,然后在计数10次,从而500ms的定时。 (5分) ORG 0000H AJMP MAIN ORG 000BH LJMP TMR0_INT ORG 0030H MAIN:MOV TMOD,#01H MOV TH0,#9EH MOV TL0,#58H MOV R7,#10 SETB ET0 SETB EA SETB TR0 SJMP $ TMR0_INT: CLR TR0 DJNZ R7,LOOP MOV R7,#10 CPL P1.0 LOOP: MOV TH0,#9EH MOV TL0,#58H SETB TR0 RETI (10分) 3、根据如下电路连接图计算ADC0809的8个模拟量输入通道的地址,并编写程序用中断方式实现8个通道的模拟量循环采集,采集结构存放至片内RAM 40H~47H中。 解:根据电路连接图可计算出ADC0809的8个模拟量输入通道的地址为: 7F00H~7F07H (5分) 循环采集的程序设计如下: ORG 0000H AJMP MAIN ORG 0003H LJMP INT0_INT ORG 0030H MAIN: MOV DPTR,#7F00H MOV R0,#40H MOV R7,#8 SETB EX0 SETB EA MOVX A,@DPTR SJMP $INTO_INT: MOVX A,@DPTR MOV @R0,A INC DPTR INC R0 MOVX @DPTR,A DJNZ R7,LOOP MOV DPTR,#7F00H MOV R0,#40H MOV R7,#8 LOOP: RETI

本文来源:https://www.bwwdw.com/article/z7kr.html

Top