ImageVerifierCode 换一换
格式:DOCX , 页数:37 ,大小:204.92KB ,
资源ID:15638943      下载积分:5 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bingdoc.com/d-15638943.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(《单片机原理与应用》习题答案主编苏珊高如新谭兴国电子科技出版社.docx)为本站会员(b****6)主动上传,冰点文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰点文库(发送邮件至service@bingdoc.com或直接QQ联系客服),我们立即给予删除!

《单片机原理与应用》习题答案主编苏珊高如新谭兴国电子科技出版社.docx

1、单片机原理与应用习题答案主编苏珊高如新谭兴国电子科技出版社单片机原理与应用习题答案主编:苏珊-高如新-谭兴国-电子科技出版社单片机原理与应用电子科技出版社 主编:苏珊 高如新 谭兴国第一章习题答案1什么叫单片机?它有哪些主要特点?单片机是将中央处理器(CPU)、随机存储器(RAM)、只读存储器(ROM)、中断系统、定时/计数器、I/O口等主要计算机部件集成在一片集成电路芯片上的单片微型计算机(Single Chip Microcomputer)的简称。具有体积小、功耗低、价格便宜、控制功能强等特点。2请简述单片机的技术发展历史,单片机的主要技术发展方向是什么?单片机技术发展经历了单芯片微机形成

2、阶段、性能完善提高阶段和微控制器化阶段三个主要阶段。目前单片机主要技术发展方向是:大容量高性能化、小容量低价格化、外围电路内装化、多品种化以及 I/O 接口功能的增强、功耗降低等。3.单片机主要用在哪些方面?由于单片机体积小、功耗低、价格便宜,广泛应用于仪器仪表、家用电器、医用设备、航空航天专用设备的智能化管理及过程控制等领域;又由于单片机具有较强的实时数据处理能力和控制功能,可以使系统保持在最佳工作状态,提高系统的工作效率和产品质量,所以在工业控测控、航空航天、尖端武器等各种实时控制系统中,都作为控制器件使用。第二章习题参考答案1单片机系统复位后,PC值为( 0000H )。2MCS-51单

3、片机中,一个机器周期=( 6 ) 状态周期=( 12 )振荡周期。当主频为12MHz时,一个机器周期为( 1s )3PSW中RS1 RS0=01时,寄存器R2的地址为 ( 10H) PSW中RS1 RS0=10时,寄存器R2的地址为 ( 12H)4MCS-51单片机的=0,程序存储器访问的是(片外 ROM )5MCS-51单片机上有( 4 )个独立的存储空间。6MCS-51系列单片机在片内集成了哪些主要逻辑功能部件? 答:有微处理器CPU、程序存储器、数据存储器、定时/计数器、中断源、并行I/O端口等功能部件组成。7程序计数器(PC)作为不可寻址寄存器,它两个位的值确定和改变当前工作寄存器组。

4、10堆栈有哪些功能?堆栈指针(SP)的作用是什么?在程序设计时,为什么还要对SP重新赋值答:堆栈是一个特殊的存储区,用来暂存数据和地址。堆栈指针SP是用来管理堆栈的它指示出堆栈顶部在片内RAM中的位置。系统复位后,SP初始化为07H,使得堆栈实际上从08H单元开始。由于08H1FH 单元分属于工作寄存器13区,20H2FH为位寻址区,若程序中要用到这些区,应把SP值改为30H或更大的值。11MCS-51的SFR占用了什么空间?其寻址方式如何?答:MCS-51的SFR占用了片内数据存储器的空间,地址范围为80HFFH。其寻址方式为直接寻址。12程序状态寄存器PSW的作用是什么?常用状态位有哪些?

5、它们的作用各是什么?答:PSW是一个8位的特殊功能寄存器。用于存放程序运行中的各种状态信息。常用状态位及其作用:(1) 进位标志位Cy。在进行加或减运算时,如果操作结果最高位有进位或借位,Cy由硬件置“1”,否则清“0”。(2) 辅助进位标志位Ac。在进行加或减运算时,如果低四位数向高位有进位或借位,硬件会自动将Ac置“l”,否则清“0”。(3) 工作寄存器区指针RSl RS0。用于选择CPU当前工作寄存器的工作区。可由用户用软件来改变RSl RS0的组合,以切换当前选用的寄存器的工作区。(4) 溢出标志位OV。当进行算术运算时,如果产生溢出,则由硬件将OV位置“l”,否则清“0”。(5) 奇

6、偶标志位P。该位始终跟踪累加器A中含“1”个数的奇偶性。如果A中有奇数个“1”,则P置“l”,否则置“0”。13MCS-51单片机复位条件是什么?常用复位电路有哪些?答:复位条件是在单片机的RST引脚输入持续至少两个机器周期高电平。MCS-51单片机通常采用上电复位和上电+按钮电平复位两种方式。第三章习题参考答案1.选择题:(1)可以实现片外数据存储器访问的指令是( A )。AMOVX B. MOV C. NOP D. DIV(2)下列指令中,可以实现将累加器A的第0位置1(其它位不变)的指令是( B )。AMOV A,#01H B. SETBACC.0 C. ANL A,#0FFH D. S

7、ETB ACC(3)MOVX A DPTR 指令中,源操作数的寻址方式是(B )A寄存器寻址 B. 寄存器间接寻址 C.直接寻址 D. 立即寻址(4)LCALL指令操作码地址是2000H,执行完子程序返回指令后,PC=( D )。A2000H B. 2001H C.2002H D. 2003H(5)对程序存储器的读操作,只能使用( B )AMOVX B. MOVC C. PUSH D. MOV(6) 执行下面指令后,30H内容是( C ) MOVR1,#30H MOV40H,#0E0HMOVR1, 40HA40H B. 30H C. 0E0H D. FFH(7)下列指令格式正确的是( D )。

8、ADEL:XCHA,30H B. MOV:INC A C. 2AB:MOV A,#20H D. ABC:MOV 23H,A(8)当执行指令( A )后,累加器A的内容为00H。AANL A,#00H B. ORL A,#00H C. XRL A,#00H D.以上都不对2 比较下面各组指令,并在指令后添加注释(1) MOV A ,20H ; 20H内容送累加器AMOV C ,20H ;位地址20H内容送位累加器C(2) MOV A ,20H ;20H内容送累加器AMOV R1 ,#20H ;20H送累加器A MOV A , R1 ; 20H指向地址的内容累加器A(3) CJNE A ,R1,L

9、1 ;比较A和R1指向地址的内容,若相等程序顺序运行,不相等则转L1处DJNZ R2 ,L1 ;R2内容减1,不等于0转L1处,等于0则顺序运行3判断下列指令是否正确,并改正错误(1). SUBB 30H,#12H该指令错误,带进位减法指令目的操作数必须是A,要将立即数12H和30H内容相加,可改为:MOV A , 30HSUBB A,#12H(2). MOV A ,2000H该指令错误,MOV为内部数据传送指令,范围只是在内部数据存储器和累加器传送,地址不超过FFH。要将外部2000H送累加器可改为MOV DPTR ,2000HMOVX A, DPTR(3). ADD R0,0A3H该指令错

10、误,要将A3H内容和R0内容相加,可改为:MOV A , R0ADD A,0A3H(4). CJNE 20H,#20H,L1该指令错误,CJNE第一操作数可以是A、寄存器Rn或Ri可改为:MOV R1,20HCJNE R1,#20H,L1(5). RLC A该指令正确4设R0的内容为32H,A的内容为48H,而片内RAM 32H单元的内容为80H,40H单元的内容为08H。请指出在执行下列程序段后,上述各单元的内容变化。 MOV A,R0 ;R0指向地址32H内容送A,即(A)=80H MOV R0,40H ;32H(40H),即(32H)=(40H)=08H MOV 40H,A ;40H(A

11、),即(40H)=(A)=80H MOV R0,#35H ;R035H,(R0)=35H5 根据要求要求写出相应的指令。1).将R0的内容送R1MOV A,R0MOV R1,A2)将30H内容送20H。MOV 20H,30H 3)将立即数30H送R0HMOV R0,#30H5)将R0的内容送以R1中内容为地址的存储单元。MOV A,R0MOV R1,A6)将内部RAM30H内容送外部20H单元。MOV A,30MOV R1,#20HMOVX R1,A7)将外部RAM3000H内容送内部30H单元。MOV DPTR,#3000HMOVX A, DPTRMOV 30H,A8)将ROM2000H内容

12、送R1。MOV DPTR,#3000HMOVC A, A+DPTRMOV R1,A9)将ROM2000H内容送内部30H单元。MOV DPTR,#2000HMOVC A, A+DPTRMOV 20H,A10)将ROM2000H内容送外部20H单元。MOV DPTR,#2000HMOVC A, A+DPTRMOV R1,#20HMOVX R1,A6编程将片外数据存储器地址为40H60H区域的数据块,全部搬移到片内RAM的同地址区域,并将原数据区全部填为FFH。MOV R0, #40H MOV R1, #33 LOOP:MOVX A, R0MOV R0, AMOV A,#0FFHMOVX R0,

13、AINC R0DJNZ R1,LOOPRET7编程找出片外2000H200FH数据区中的最小值,结果存放于R2中。MOV DPTR,#2000H MOV R7, #0FH MOVX A,DPTR MOV B,A LOOP:INC DPTRMOVX A,DPTRCJNE A,B,LOOP1LOOP1:JNC LOOP2MOV B,A LOOP:DJNZ R7,LOOPMOV R7,B RET第四章习题参考答案1.是在外部RAM中的xdata区定义了无符号字符型的字变量OUTX2,它的地址是(1002H)。2.(1)编程容易;(2)容易实现复杂的数值计算;(3)容易阅读、调试、维护程序;(4)容易

14、实现模块化开发;(5)程序可移植性好。3.bit,data,idata,pdata,code,xdata,sbit,sfr,sfr164.bit和sbit都是C51扩展的变量类型。 bit是位变量,编译器在编译过程中分配地址。除非指定,否则这个地址是随机分配的。这个地址是整个可寻址空间,也就是内部RAM、外扩RAM和ROM。 sbit是对应可位寻址空间的一个位,包括可位寻址区:20H2FH和特殊功能寄存器区。一旦用了形如sbi xxx = REGE6的定义,这个sbit量就确定地址了。 bit和sbit的最大区别在于,bit是定义一个变量;sbit经常用在寄存器中的,方便对寄存器的某位进行操作

15、。 5.(1)使用C51运行库中的预定义宏;(2)通过指针访问;(3)使用C51扩展关键字_at_。6.(1)中断函数不能进行参数传递,如果中断函数中包含任何参数声明都将导致编译出错。 (2)中断函数没有返回值,如果企图定义一个返回值将得不到正确的结果,建议在定义中断函数时将其定义为void类型,以明确说明没有返回值。(3)在任何情况下都不能直接调用中断函数,否则会产生编译错误。因为中断函数的返回是由8051单片机的RETI指令完成的,RETI指令影响8051单片机的硬件中断系统。如果在没有实际中断情况下直接调用中断函数,RETI指令的操作结果会产生一个致命的错误。(4)如果在中断函数中调用了

16、其它函数,则被调用函数所使用的寄存器必须与中断函数相同。否则会产生不正确的结果。(5)C51编译器对中断函数编译时会自动在程序开始和结束处加上相应的内容,具体如下:在程序开始处对ACC、B、DPH、DPL和PSW入栈,结束时出栈。中断函数未加using m修饰符的,开始时还要将R0R1入栈,结束时出栈。如中断函数加using m修饰符,则在开始将PSW入栈后还要修改PSW中的工作寄存器组选择位。(6)C51编译器从绝对地址8n+3处产生一个中断向量,其中n为中断号,也即interrupt后面的数字。该向量包含一个到中断函数入口地址的绝对跳转。(7)中断函数最好写在文件的尾部,并且禁止使用ext

17、ern存储类型说明。防止其它程序调用。7.有small,compact和large三种存储器模式。Small存储器模式参数及局部变量放入可直接寻址的内部存储器(最大128B,默认存储器类型为data)compact存储器模式参数及局部变量放入分页外部数据存储器(最大256B,默认存储器类型为pdata)large存储器模式参数及局部变量直接放入外部数据存储器(最大64KB,默认存储器类型为xdata)8. #include main( ) int i; unsigned char xdata *p=0x2000; /* 指针指向2000H单元 */ for(i=0;i256;i+) /*清零2

18、000H-20FFH单元*/ *p=0; p+; 9.(1)unsigned char code dis_code10=0x3f,0x06,0x5b,0x4f, 0x66, 0x6d, 0x7d, 0x07, 0x7f, 0x6f; (2)unsigned char data TL0_L _at_ 0x30; unsigned char data TH0_H _at_ 0x31; (3)unsigned char idata data_buf20; (4)unsigned char xdata data_array100; (5)unsigned char bdata status; sbit

19、 flag_lamp1=status0; sbit flag_lamp2=status1; sbit flag_machine1=status2; sbit flag_machine2=status3; sbit flag_port1=status4; sbit flag_port2=status5; sbit flag_calcu1=status6; sbit flag_calcu2=status7; 第五章习题参考答案1. MCS-51单片机有5个中断源,2 个中断优先级。优先级由软件填写特殊功能寄存器IP加以选择。2.外部中断请求标志位是IE0和IE1。3. 8051 单片机响应中断后,

20、产生长调用指令LCALL,执行该指令的过程包括:首先把当前PC的内容压入堆栈,对断点保护,然后把长调用指令的16位地址送PC,使程序转向执行中断入口地址区。4.8051单片机的IP寄存器功能是设置中断优先级5.用指令完成下列要求。INT1、T0开中断,其余禁止中断;MOV IE, #86H全部开中断MOV IE, #FFHINT0、T0开中断,其余保持不变;SETB EASETB EX0SETB ET0INT1、串行口为高优先级,其余为低优先级;MOV IP, #85H5.子程序和中断程序有何异同,为什么子程序返回指令RET和中断返回指令RETI不能相互替代?答:中断类似于子程序设计中的调用子

21、程序,但它们有着本质的区别。调用子程序是程序员事先安排好的,而中断是由一些特殊事件触发的,是随机的。RET功能是恢复堆栈中PC的值,从调用指令的下一条指令开始运行程序,不影响标志位。RETI除了具有RET指令功能外,还清除内部相应的中断状态触发器,因此中断服务程序必须以RETI为指令结束。CPU执行RETI指令后至少再执行一条指令,才能响应新的中断请求,因此不能互换。1.外部中断有几种中断触发方式?对跳变触发和电平触发信号有什么要求?如何设置?答:外部中断有低电平触发和边沿触发两种触发方式。低电平触发时,施加在相应引脚上的低电平在中断返回前必须撤消,否则将再次申请中断造成出错。即施加在引脚上的

22、低电平持续时间应大于一个机器周期,且小于中断服务程序的执行时间。在边沿触发方式中,为了保证CPU在两个机器周期内能够检测到由高至低跳变的电平,输入的高电平和低电平的持续时间至少要保持12个振荡周期(即一个机器周期的时间)。通过TCON寄存器的IT1和IT0来设置。ITi设置为“0”时,相应的外部中断为低电平触发方式;设置为“1”时,相应的外部中断为边沿触发方式, 7.为何要在程序的首地址安排一条跳转到主程序的指令?在响应中断的过程中为什么要保护现场?应如何保护?答:因为程序的首地址与外中断0的入口地址之间只相差3各单元,放不下完整的主程序,一般将主程序放到0030H以后的单元,故要安排一条跳转

23、到主程序的指令。主程序中通常用到PSW、工作寄存器和特殊功能寄存器等。如果在中断服务程序中要用这些寄存器,会造成这些现场寄存器中数据的混乱,在中断服务前应将它们的内容保护起来称保护现场。通常利用堆栈操作来保护现场。8. 利用做一个计数器。当有脉冲时,A的内容加1。并且当A的内容大于或等于100时将P1.0置位。 ORG 0000H LJMP MIN0 ORG 0003H LJMP INTB0 ORG 0030H MIN0: MOV SP,#30H ;主程序 SETB IT0 SETB EX0 SETB EA MOV A,#00 MIN1: NOP LJMP MIN1 ORG 0100H INT

24、B0: PUSH PSW ;的中断服务程序 ADD A,#01 CJNE A,#100,INTB1 LJMP INTB2 INTB1:JC INTB3 INTB2:SETB P1.0 INTB3:POP PSW RETI END第六章习题答案1当定时器T0工作在方式3时,要占用定时器T1的TF1和TR1两个控制位。2在定时器工作在方式1下,计数器的计数器的宽度为16 位,若fosc=12MHz,最大定时时间为1s ,若fosc=6MHz,则最大定时时间为2s 。3定时时间与定时器的工作方式、计数初值及晶振频率有关。4MCS-51的定时器/计数器作计数器使用时,计数脉冲由外部信号通过引脚P3.4

25、和P3.5提供。5MCS-51的定时器/计数器T0门控信号GATE设置为1时,只有INT0引脚为高电平且由软件使TR0置1时,才能启动定时器工作。6MCS-51系列单片机内部设有几个定时器/计数器?它们是由哪些专用寄存器组成?有哪几种工作方式?简述各种工作方式的功能特点。MCS-51单片机内部设有两个16位定时器/计数器T0和T1。分别有的8位计数器TH0、TL0和TH1、 TL1组成,各有4种工作方式。方式0是一个13位的定时器/计数器。只用了16位寄存器中的高8位(THi)和低5位(TLi的D4D0位),TLi的高3位未用。方式1为16位定时器/计数器方式,由THi的8位和TLi的8位构成

26、16位加1计数器, ,当16位计数满溢出时,溢出标志位TFi置“1”。方式2为8位自动重装计数器。仅TLi作为计数器,而THi的值在计数中不变。TLi溢出时,THi中的值自动装入TLi中。方式3只适用定时器/计数器T0。T0在该方式下被拆成两个独立的8位计数器TH0和TL0,TL0可作8位的定时器或计数器用,而TH0借用T1的控制位和溢出标志位TR1和TF1,只可用作简单的定时器使用。该方式下T1可用作串行口波特率发生器。7MCS-51系列单片机定时器/计数器作定时器或计数器使用时,其计数脉冲分别由谁提供?作定时器使用时,其实质是在单片机内部对机器周期进行计数,计数脉冲输入信号由内部时钟提供,

27、每一个机器周期计数器自动加1。作计数器使用时,其实质是对外部事件进行计数,计数脉冲来自相应的外部输入引脚T1或T0,当外部输入脉冲信号由1至0的跳变时,计数器自动加1。8采用程序查询方式,由T1产生一个50Hz的方波,从P1.1输出,fosc=12MHz。解:方波周期T=1/50=0.02s=20ms,用T1定时10ms,计数初值为:2161010-31210612=6553610000=55536=D8F0H源程序如下: ORG 0000H LJMP T1BUS ORG 0030H T1BUS: MOV TMOD,#10H ;T1方式1,定时模式 SETB TRl ;启动T1 LOOP:MO

28、V TH1,#0D8H ;送T1计数初值 MOV TL1,#0F0H LOOP1: JNB TF1,LOOP1 ;T1没有溢出等待 CLR TF1 ;产生溢出清标志位 CPL P1.1 ;P1.1取反输出 SJMP LOOP ;循环END第七章习题答案1.选择题(1)MCS-5l系列单片机的串行口是( B )。 A. 单工 B.全双工 C.半双工 D.并行口(2)表示串行数据传输速率的指标是( D )。A. USART B.UART C.字符帧 D.波特率(3)串行口的控制寄存器是( C )。A. PCON B.SMOD C.SCON D.SBUF(4)当设置串行口工作于方式2时,采用( A

29、)指令。A.MOV SCON,#80H B. MOV SCON,#10H C. MOV PCON,#80H D. MOV PCON,#10H(5)当串行口工作于方式0时,其波特率( C )。A.取决于定时器1的溢出率 B. 取决于PCON的SMOD C. 取决于时钟频率 D. 取决于PCON的SMOD和定时器1的溢出率(6)当串行口工作于方式1时,其波特率( D )。A.取决于定时器1的溢出率 B. 取决于PCON的SMOD C. 取决于时钟频率 D. 取决于PCON的SMOD和定时器1的溢出率(7)串行口的发送数据和接收数据端为( A )。A.TXD和RXD B.TI和RI C.TB8和RB

30、8 D.REN(8)串行口是单片机的( A )。 A. 内部资源 B.外部资源 C.输入设备 D.输出设备简答题1串行口有几种工作方式?有几种帧格式?各工作方式的波特率如何确定?SM0 SM1工 作 方 式功 能波 特 率0 0方式08位同步移位寄存器/120 l方式l10位UART可变(由定时器控制)1 0方式211位UART/64、/321 1方式311位UART可变(由定时器控制)2何谓波特率、溢出率?如何计算和设置MCS-51系列单片机串行通信的波特率?波特率是串行数据传输中,串行口每秒钟发送(或接收)的二进制位数称为波特率,单位是b/s(位/秒)。溢出率是指定时器T1作为波特率发生器使用时的溢出频率,其大小为溢出周期之倒数在方式0时,每个机器周期发送或接收一位数据,因此波特率固定为振荡频率的l/12,且不受SMOD位的控制。方式2的波特率要受PCON中SMOD位的控制,波特率=,当SMOD设置为“0”时,波特率等于/64,若SMOD设置为“1”时,则波特率等于/32。方式1或方式3时,其波特率由定时器/计数器T1的溢

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2