东北林业大学2011-2012学年第二学期考试试题学院:机电工程学院教研室(学科)主任:第1页共4页考试科目:单片机原理与应用考试时间:120分钟试卷总分:90分题号一二三四五卷面成绩平时成绩总分得分评卷教师一、填空题(本大题共7小题,每空1分,共15分)1.时钟可以由两种方式产生,即()方式和()方式。2.单片机系统复位时,PC的值为(),SP的值为(),P0的值为()。3.端口作为外部输入线时,要先通过指令,把端口锁存器置(),然后再执行读引脚操作,否则可能读入出错。4.两个单片机用串行口同步通信传送数据时,必须保持()一致。5.产生片选信号主要有两种方法:()法和()法。6.DAC0832输出的模拟信号是(),常用作()发生器。它既可以工作在()方式,也可以工作在()方式。7.8051片内定时器/计数器既可以编程作定时器用,也可以编程做计数器用时,若是计数内部晶振驱动时钟,则它是()器,若是计数8051输入引脚的脉冲信号,则它是()器。二、选择题(本大题共9小题,前8小题为单选,每空1分,第9小题为多选,3分,共15分)1.8051单片微机数据存储器RAM的工作寄存器共四组(0、1、2、3组),组号由()中的RS1、RS0两位状态决定A.IPB.PSWC.TMODD.SBUF2.89C51内部有()个中断源,其中有()个外部中断。A.5B.3C.2D.43.MCS—51串行口有()种工作方式,有()种桢格式。A.4B.3C.2D.14.8051单片机的数据存储器扩展容量最大可达()KB。A.32B.64C.8D.45.用8051中的三个中断,中断优先级从高到低为外部中断0、串行口中断、定时器T/C1得分得分装订线课程名称:单片机原理与应用班级:学号:姓名:2012年5月24日第2页共4页中断,此时应该给IP送值(),给IE送值()。A.11HB.88HC.96HD.99H6.ADC0809是8路模拟量输入,()位数字量输出的A/D转换器,输入的模拟信号是()。A.电压B.电流C.8D.67.下列存贮类型对应于外部数据存储区的是()A、dataB、codeC、bdataD、xdata8.下列对Cx51中主函数和一般函数之间的关系描述错误的是()A、程序从主函数开始执行B、程序中必须有且只能有一个主函数C、主函数和一般函数可以互相调用D、中断服务函数只能由系统自动调用9.单片机的串行口主要用于与()间的通信。A.单片机间B.大型计算机机间C.通用微机间D.主从结构的分布式控制系统机间三、简答题(本大题共5小题,总计22分)1、什么是单片机?(3分)2、MCS-51系列单片机能直接识别的数字类型有哪些?(2分)3、堆栈是什么?简述堆栈涉及到的专用寄存器是什么、使用堆栈前的注意事项及堆栈的两种类型。(5分)4、单片机有哪几种工作方式?(5分)5、什么是中断?简述CPU在中断响应后完成哪些操作。(7分)四、程序题(本大题共3小题,共28分)1.如图一所示DAC0832与8051接口,读如下Cx51函数,写出在运放输出端将得到什么信号,并在横线上填空使程序完整。(5分)#includeabsacc.h#includereg51.h#defineDAC0832XBYTE[0xfffe]#defineunsignedint#defineunsignedcharvoidstair(void){uchari;while(1){for(i=0;i255;i=){DA0832=i;}得分得分东北林业大学2011-2012学年第二学期考试试题学院:机电工程学院教研室(学科)主任:第3页共4页for(i=255;i0;i=i--){DA0832=i;}}}图一2.利用定时器T/C1在P1.7口产生一串500Hz的方波,定时器溢出时采用中断方式处理,已知fosc=6MHz。(18分)(1)确定T/C1的工作方式;(2)计算计数初值;(3)编写程序。3.8051单片机串行口工作工作于方式1,取SMOD=1,用定时器T/C1作波特率发生器,T1为工作方式2,需要波特率4800b/s,已知时钟频率fosc=12MHZ,试计算T/C1的初值。(5分)2012年5月24日第4页共4页五、芯片扩展连线(10分)如图二89C51扩展一片8KB的ROM,选用一片2764,试画出扩展电路,并确定扩展的ROM的地址范围(设无用位为“0”)。(10分)图二得分P2.0P2.1P2.2P2.3P2.4P2.5P2.6P2.789C51P0.0P0.1P0.2P0.3P0.4P0.5P0.6P0.7PSENALEA0CEA12A1A11A2A10A3A9A4A8A5A6A72764D0D1D2D3D4D5D6D7OED0Q0D1Q1D274LS373Q2D3Q3D4Q4D5Q5D6Q6D7Q7GOE东北林业大学2011-2012学年第二学期考试试题学院:机电工程学院教研室(学科)主任:第5页共4页三、1、什么是单片机?(3分)答:单片机又称微控制器,是在一块硅片上集成了各种部件的微型计算机。这些部件包括中央处理器CPU、数据存储器RAMH、程序存储器ROM、定时器/计数器和多种I/O接口电路。2、MCS-51系列单片机能直接识别的数字类型有哪些?(2分)答:有无符号字符型和位型。3、堆栈是什么?简述堆栈涉及到的专用寄存器是什么、使用堆栈前的注意事项及堆栈的两种类型。(5分)答:堆栈是在内存中专门开辟出来的按照“先进后出、后进先出”原则进行存取的区域。专用寄存器SP用来指示堆栈位置。使用堆栈前应先给SP赋值,以规定堆栈的起始位置,称为栈底。堆栈有两种类型:向上生长型和向下生长型。4、单片机有哪几种工作方式?(5分)答:单片机的工作方式包括:复位方式、程序执行方式、单步执行方式、低功耗操作方式及EPROM编程和校验方式。5、什么是中断?简述CPU在中断响应后完成哪些操作。(7分)答:中断是指当计算机执行正常程序时,系统中出现某些急需处理的异常情况和特殊请求,CPU暂时中止现行程序,转去对随机发生的更紧迫事件进行处理;处理完毕后,CPU自动返回原来的程序继续执行。CPU在中断响应后完成如下操作:1)硬件清除相应的中断请求标志;2)执行一条硬件子程序,保护断点,并转向中断服务程序入口;3)结束中断时执行RETI指令,恢复断点,返回主程序。四.1、答:输出一个三角波电压信号;#includeabsacc.h#includereg51.h#defineDAC0832XBYTE[0xfffe]#defineuintunsignedint#defineucharunsignedcharvoidstair(void){uchari;while(1){for(i=0;i255;i=i++)2012年5月24日第6页共4页{DA0832=i;}for(i=255;i0;i=i--){DA0832=i;}}}2、(1)因方波频率f=500Hz,其周期T=1/500=2ms,即用T/C1每定时1msP1.7取反一次。因为定时时间为1ms,单片机时钟频率fosc=6MHz,所以可用定时方式0或方式1实现。(2)用定时方式0时,因t=1000=(8192-x)*2,即定时初值x=8192-500;用定时方式1时,因t=1000=(65536-x)*2,即定时初值x=65536-500;(3)编程如下:用定时方式0时用定时方式1时#includereg51.h#includereg51.hsbitP17=P1^7;sbitP17=P1^7;voidtime1()interrupt3using3voidtime1()interrupt3using3{{P17=!P17;P17=!P17;TH1=(8192-500)/32;TH1=(65536-500)/256;TL1=(8192-500)%32;TL1=(65536-500)%256;}}voidmain(void)voidmain(void){{TMOD=0x00;TMOD=0x10;P17=0;P17=0;TH1=(8192-500)/32;TH1=(65536-500)/256;TL1=(8192-500)%32;TL1=(65536-500)%256;EA=1;EA=1;ET1=1;ET1=1;TR1=1;TR1=1;for(;;)for(;;)}}3、