广西大学生SNS社区——地鼠团论坛本资料由广西返利网提供,转载请注明:网上购物返现金,全网返利最高!1分钱即可提现,24小时到账!广西工学院2003—2004学年第2学期课程考核试题考核课程单片机原理及应用考核班级自动化01级学生数160印数170考核方式闭卷考核时间120分钟一、填空题(30分)(每空1分)1)8051系列单片机中,片内数据存储区一共分为3个区,这3个区分别为:;;。2)8K╳8位的存储器共有地址线根。3)3—8译码器74LS138在全译码寻址方式中,译码器的输出端通常与单片机接口芯片的端连接。4)当单片机接到外设的中断申请时,单片机响应中断,单片机将暂停的执行,转去执行程序,执行完,再执行程序。5)8051单片机的中断源有:,,,,。6)单片机P0口为总线和总线的复用端口,74LS373与P0口连接,其输出线作为系统的,74LS373的G端与单片机连接。7)当单片机接到外设的中断申请时,单片机响应中断,单片机将暂停执行,转去执行程序,执行完,再执行程序。8)已知程序执行前有A=01H,SP=52H,(51H)=FFH,(52H)=FFH。下述程序执行后:POPDPHPOPDPLMOVDPTR,#3000HRLAMOVB,AMOVCA,@A+DPTRPUSHAMOVA,BINCAMOVCA,@A+DPTRPUSHARETORG3000HDB10H,80H,30H,80H,50H,80H请问:A=(),SP=(),(51H)=(),(52H)=(),PC=()。7、30H,50H,80H,30H,3080H9)如果DPTR=507BH,SP=32H,(30H)=50H,(31H)=5FH,(32H)=3CH,则执行下列指令后:广西大学生SNS社区——地鼠团论坛、3CH,5FH,4FH:DPH=(),DPL=(),SP=()10)假定A=83H,(R0)=17H,(17H)=34H,执行以下指令:ANLA,#17HORL17H,AXRLA,@R0CPLA后,A的内容为()。9、0CBH二、简答题(20分)1)单片机的复位(RST)操作有几种方法,复位功能的主要作用。(5分)2)编制中断服务程序时,为什么在主程序的初始化程序中,必须设置SETBEA这条指令,以及在中断服务程序中为什么通常需要保护现场和恢复现场?(10分)3)中断服务子程序返回指令RETI和普通子程序返回指令RET有什么区别?(5分)三、判断下列指令的正误:(10分)1)MOV28H,@R2(×)2)DECDPTR(×)3)INCDPTR(√)4)MOVC,30H(√)5)CPLR5(×)6)MOVR0,R1(×)7)PUSHDPTR(×)8)MOVF0,C(√)9)MOVF0,ACC.3(×)10)RLCR0(×)四、编程题(40分)1、编制中断初始化程序,外部中断0(边沿触发)、定时器0开中断(中断允许);外部中断1、定时器1关中断(不允许中断)。(5分)2、编程将片内RAM40H单元开始的16个数传送到片外RAM2000H开始的单元中。(5分)3、使用定时器中断方式编程实现从P1.0引脚上输出一个周期为1s的方波。(系统时钟为6MHz)(15分)4.根据硬件图计算ADC0809的8个模拟量输入通道的地址,并编写程序实现8个通道的模广西大学生SNS社区——地鼠团论坛拟量循环采集,采集结构存放至片内RAM40H~47H中。(15分)广西工学院课程考试试题答案要点及评分细则课程名称单片微机原理及应用/单片机技术专业年级:自动化01级;填写人:蔡启仲方华2003—2004学年第2学期参考答案及得分要点评分标准(得分)一、填空题(每空1分)1、寄存器区、位寻址区、数据缓冲区2、133、片选端4、中断服务程序,中断服务程序,主程序4、外部0中断,定时器T0中断,外部1中断,定时器T1中断,串行口通讯中断5、数据,地址,地址,ALE6、中断服务,中断服务,主二、简答题1、单片机的复位操作方式有:1、上电复位;2、手动复位。(2分)复位功能的主要作用是:复位时,PC初始化为0000H,使MCS-51单片机从0000H开始执行程序。(3分)2、中断允许寄存器IE中有1个总的开关中断控制位EA,当EA=0时,所有的中断请求被屏蔽,CPU不接受任何中断;只有当EA=1时,CPU才开放中断。所以主程序的初始化程序中,必须设置SETBEA这条指令。(5分)现场是指中断时刻单片机中某些寄存器和储存器单元中的数据或状态,为了使中断服务程序的执行不破坏这些数据和状态,以免在中断返回后影响主程序的运行,因此要这些数据和状态送入堆栈保存,这就是现场保护。中断结束后,在返回主程序谦,则需要把保存的现场数据和状态从堆栈中弹出,以恢复那些寄存器和存储器单元中的原有内容,这就是现场恢复。(5分)3、中断服务子程序返回指令RETI和普通子程序返回指令RET的区别在于:广西大学生SNS社区——地鼠团论坛指令在返回的同时清除相应的优先级触发器,以允许下次中断。(5分)三、判断下列指令的正误:(10分)1、×2、×3、√4、√5、×6、×7、×8、√9、×10、×四、编程题1、编制中断初始化程序,外部中断0(边沿触发)、定时器0开中断(中断允许);外部中断1、定时器1关中断(不允许中断)。(5分)解:SETBEX0SETBIT0SETBET0CLRET1CLREX1SETBEA2、编程将片内RAM40H单元开始的16个数传送到片外RAM2000H开始的单元中。(5分)解:MOVR0,#40HMOVR7,#16MOVDPTR,#2000HLOOP:MOVA,@R0MOVX@DPTR,AINCR0INCDPTRDJNZR7,LOOPNOPEND3、使用定时器中断方式编程实现从P1.0引脚上输出一个周期为1s的方波。(系统时钟为6MHz)解:使用定时器T0产生50ms的定时,然后在计数10次,从而500ms的定时。(5分)ORG0000HAJMPMAINORG000BHLJMPTMR0_INTORG0030HMAIN:MOVTMOD,#01H广西大学生SNS社区——地鼠团论坛:CLRTR0DJNZR7,LOOPMOVR7,#10CPLP1.0LOOP:MOVTH0,#9EHMOVTL0,#58HSETBTR0RETI(10分)3、根据如下电路连接图计算ADC0809的8个模拟量输入通道的地址,并编写程序实现8个通道的模拟量循环采集,采集结构存放至片内RAM40H~47H中。解:根据电路连接图可计算出ADC0809的8个模拟量输入通道的地址为:7F00H~7F07H(5分)循环采集的程序设计如下:ORG0000HAJMPMAINORG0030HMAIN:MOVDPTR,#7F00HMOVR0,#40HMOVR7,#8LOOP:MOVX@DPTR,AJNBP3.2,$MOVXA,@DPTRMOV@R0,AINCDPTRINCR0DJNZR7,LOOPMOVDPTR,#7F00HMOVR0,#40HMOVR7,#8AJMPLOOPEND(10分)或:ORG0000HAJMPMAINORG0003HLJMPINT0_INT广西大学生SNS社区——地鼠团论坛@DPTRSJMP$INTO_INT:MOVXA,@DPTRMOV@R0,AINCDPTRINCR0MOVX@DPTR,ADJNZR7,LOOPMOVDPTR,#7F00HMOVR0,#40HMOVR7,8LOOP:RETI