微控制器原理及应用-111A-电气08-考查-答案及评分标准

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

第1页四川理工学院试卷(2010至2011学年第2学期)课程名称:微控制器原理及应用(考查课开卷考试A卷参考答案及评分标准)命题教师:适用班级:电气工程及其自动化08级1、2、3、4、5、6班考查(开卷考试)年月日共8页题号一二三四五总分评阅(统分)教师得分注意事项:1、满分100分。要求卷面整洁、字迹工整、无错别字。2、考生必须将姓名、班级、学号完整、准确、清楚地填写在试卷规定的地方,否则视为废卷。3、考生必须在签到单上签到,若出现遗漏,后果自负。4、如有答题纸,答案请全部写在答题纸上,否则不给分;考完请将试卷和答题卷分别一同交回,否则不给分。试题一、填空题(每空1分,共10分)1.微控制器片外总线按功能分为三种:包括控制总线、地址总线和数据总线。2.8051微控制器的CPU主要包括运算和控制两大部件。3.8051单片机片内有5个中断源,其中2个外部中断源。4.指令POPB的源操作数是SP,是寄存器间接寻址方式,目的操作数是B,是寄存器寻址方式。5.为确保单片机读键的准确性,消除按键抖动可用软件消抖和硬件消抖两种办法解决。二、选择题,请将答案填入题后括号内,否则不得分(每小题2分,共20分)1.PSW中的RS1=0、RS0=1时,当前使用的工作寄存区对应的单元是:(B)A.00H~07HB.08H~0FHC.10H~17HD.18H~1FH2.MCS-51单片机用来开放或禁止中断的控制寄存器是:(A)A.IEB.IPC.TCOND.EA得分评阅教师得分评阅教师系专业级班学号姓名密封线密封线内不要答题第2页3.下列指令中错误的是:(B)A.MOVX﹫R0,AB.SUBR4,R3C.ANL20H,#20HD.ADDCA,R44.8051微控制器的晶振频率为fosc=12MHz,则执行一条双周期指令需要(C)A.1µSB.0.5µSC.2µSD.4µS5.MCS-51中,PC的值是:(B)A.当前指令前一条指令的地址B.当前正在执行指令的地址C.下一条指令的地址D.控制器中指令寄存器的地址6.8051微控制器的定时器T0工作在计数方式时:(D)A.由内部时钟频率定时,一个时钟周期加1B.由内部时钟频率定时,一个机器周期加1C.对外部计数脉冲计数,上升沿加1D.对外部计数脉冲计数,至少需要二个机器周期才能识别1个计数脉冲7.以下不属于液晶显示器LCD的特点的是(B)A.体积小、重量轻、功耗低B.耐高温等恶劣环境C.可分为笔段式、字符点阵式和图形点阵式D.字符点阵式LCM的控制器可分为带字库型和不带字库型8.以下8051中断优先级控制的叙述中,错误的是(D)A.低优先级不能中断高优先级,但高优先级能中断低优先级B.同级中断不能嵌套C.同级中断请求按时间的先后顺序响应D.同时同级的多中断请求,将形成阻塞,系统无法响应9.如果把8255A的A1、A0分别与80C51的P2.l、P2.0连接,则8255A的A、B、C口和控制寄存器的地址可能是(B)A.××00H~××03HB.00××H~03××HC.0×××H~3×××HD.×00×H~×03×H10.与其他接口芯片不同,A/D转换芯片中通常需要编址的是(C)A.用于转换数据输出的数据锁存器B.A/D转换电路C.模拟信号输入的通道D.地址锁存器第3页三、判断题(正确的划“√”,错误的划“×”)(每小题1分,共10分)1.MCS-51单片机的数据空间与程序空间是独立编址的。(√)2.CPU取指令时,完全由程序计数器PC控制。(√)3.DAC0832是8位D/A转换器,其输出量为电流量。(√)4.8051片内RAM的任何一个单元均可进行位操作。(×)5.执行LCALL指令时,栈指针SP的内容不会发生变化。(×)6.执行CLR30H指令后,30H字节单元被清0。(×)7.只要中断允许寄存器IE中的EA=1,那么中断请求就一定能够得到响应。(×)8.CPU在响应INT0中断时,INT0的中断申请标志IE0要用软件清除。(×)9.MOVC,00H指令中00H是字节地址。(×)10.特殊功能寄存器都具有位地址。(×)四、读程序及绘图题(共30分,每题10分)1.读下列程序,回答问题。MOVR0,#dataMOVA,@R0RLAMOVR1,ARLARLAADDA,R1MOV@R0,A上述程序段实现的功能是:把data单元的内容乘以10放回原单元(2分);若程序执行前data=40H,(40H)=10H,执行上述程序段后,(A)=0A0H(2分),(40H)=0A0H(2分),(R0)=40H(2分),(R1)=20H(2分)。2.下图为8051扩展3片2764的电路连接示意图,用片选法完成剩下的硬件电路连接并写出每一片2764的地址范围(用十六进制数表示,否则不得分)。得分评阅教师得分评阅教师系专业级班学号姓名密封线密封线内不要答题第4页58555882764可外扩作为8051的程序存储器,单片2764容量是:8K字节;(2分)第(1)片2764的地址范围是:C000H~DFFFH;(2分)第(2)片2764的地址范围是:A000H~BFFFH;(2分)第(3)片2764的地址范围是:6000H~7FFFH。(2分)3.读下列程序,回答问题。voidmain(void){unsignedchardatavar1;unsignedcharpdata*dp1;unsignedintxdata*dp2;unsignedchardata*dp3;var1=XBYTE[0x0005];dp1=0x30;dp2=0x1000;*dp1=0xff;*dp2=0x1234;dp3=&var1;*dp3=0x20;while(1);}上述程序段中“pdata”的含义是指:以Ri间接访问的片外RAM低256Byte(1分);“xdata”的含义是指:以DPTR间接访问的片外RAM,可访问全部64KB范围(1分);执行完上述指令后:变量var1的值是0x20(2分),片外0x1000单元的内容是0x12(2分),片外0x1001单元的内容是0x34(2分),dp3的值是0x08(2分)。绘图2分第5页五、编程题,编程语言不限,程序应有适当注释(共30分,每题10分)1.8051系统中,已知振荡器频率为12MHz,用定时/计数器T1,实现从P1.1产生高电平宽度为10ms,低电平宽度为20ms的矩形波,要求用中断实现。得分评阅教师符号地址D7D6D5D4D3D2D1D0TCON88HTF1TR1TF0TR0IE1IT1IE0IT0TMOD89HGATEC/TM1M0GATEC/TM1M0IEA8HEAET2ESET1EX1ET0EX0SCON98HSM0SM1SM2RENTB8RB8TIRIPCON87HSMOD系专业级班学号姓名密封线密封线内不要答题答:#includereg52.hsbitP1_1=P1^1;voidtimer1()interrupt3{EA=0;if(P1_1){P1_1=!P1_1;TH1=0xB1;TL1=0XE0;}(3分)else{P1_1=!P1_1;TH1=0xD8;TL1=0XF0;}EA=1;}(3分)voidmain(){P1_1=1;TH1=0xD8;TL1=0XF0;TMOD=0x10;//16位定时计数方式ET1=1;TR1=1;EA=1;while(1);(4分)}第6页2.设fosc=11.0592MHz,试编写一段程序,其功能为对串行口初始化,使之工作于方式1,波特率为1200bps,SMOD=0;并用查询串行口状态的方法,读出接收缓冲器的数据并回送到发送缓冲器。答:Baud=120012)256(322)256(322modmodxfTxoscss,smod=0时,x=232=E8H(3分)MAIN:MOVSCON,#01010000BMOVTMOD,#00100000BMOVTH1,#0E8HMOVTL1,#0E8HCLREAMOVPCON,#00HSETBTR1(3分)LOOP:JNBRI,$MOVA,SBUFCLRRI(2分)MOVSBUF,AJNBTI,$CLRTISJMPLOOP(2分)#includereg51.hvoidmain(void){unsignedcharbuf;SCON=0x50;TMOD=0x20;TH1=0xE8;TL1=0xE8;PCON=0x00;TR1=1;(3分)while(1){while(RI==0);buf=SBUF;RI=0;(2分)SBUF=buf;While(TI==0);TI=0;}}(2分)第7页3.下图是ADC0809与8051的接口电路图,读图完成下列问题。提示:当START和ALE输入高电平脉冲时,启动一次A/D转换。EOC为高电平时,A/D转换结束,当OE输入为高电平时,可读取A/D转换的结果。(1)A/D转换通道端口地址分别是多少?(未连接地址引脚取“0”)(2)根据图形编写采集8路模拟量程序,并将结果存入20H地址开始的内部RAM中。P0.0~P0.7ALEP2.0WRRD0INTEOCABCCLKD0~D7STARTALEOEADC0809VREF+VREF-IN0~IN7模模模模模模5v89C5174LS373D0~D7Q0Q1Q2GOE答:(1)由图可得,A/D转换通道端口地址范围是0000H~0007H(2分)(2)程序如下:汇编:ORG0003HLJMPINT0ORG0100H;主程序MAIN:MOVR0,#30H;设立数据存储区指针MOVR2,#08H;设置8路采样计数值SETBIT0;设置外部中断0为边沿触发方式SETBEA;CPU开放中断SETBEX0;允许外部中断0中断MOVDPTR,#0000H;送入口地址并指向IN0(2分)LOOP:MOVX@DPTR,A;启动A/D转换,A的值无意义(2分)HERE:SJMPHERE;等待中断ORG0200H;中断服务程序INT0:MOVXA,@DPTR;读取转换后的数字量MOV@R0,A;存入片内RAM单元INCDPTR;指向下一模拟通道系专业级班学号姓名密封线密封线内不要答题第8页INCR0;指向下一个数据存储单元DJNZR2,NEXT;8路未转换完,则继续CLREA;已转换完,则关中断CLREX0;禁止外部中断0中断RETI;中断返回(2分)NEXT:MOVX@DPTR,A;再次启动A/D转换RETI;中断返回(2分)C语言:#includereg51.h#includeabsacc.h//定义绝对地址访问#defineucharunsignedchar#defineIN0XBYTE[0x0000]//定义IN0为通道0的地址staticuchardatax[8]_at_0x20;//定义0x20开始的数组,存放结果ucharxdata*ad_adr;//定义指向通道的指针uchari=0;voidmain(void){IT0=1;//初始化EX0=1;EA=1;i=0;ad_adr=&IN0;//指针指向通道0*ad_adr=i;//启动通道0转换(3分)while(1);//等待中断}voidint_adc(void)interrupt0//中断函数{x[i]=*ad_adr;//接收当前通道转换结果i++;ad_adr++;//指向下一个通道(3分)if(i8){*ad_adr=i;}//8个通道未转换完,启动下一个通道返回else{EA=0;EX0=0;}//8个通道转换完,关中断返回}(2分)

1 / 8
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功