欢迎来到冰点文库! | 帮助中心 分享价值,成长自我!
冰点文库
全部分类
  • 临时分类>
  • IT计算机>
  • 经管营销>
  • 医药卫生>
  • 自然科学>
  • 农林牧渔>
  • 人文社科>
  • 工程科技>
  • PPT模板>
  • 求职职场>
  • 解决方案>
  • 总结汇报>
  • ImageVerifierCode 换一换
    首页 冰点文库 > 资源分类 > DOCX文档下载
    分享到微信 分享到微博 分享到QQ空间

    《单片机原理与接口技术修订本》部分习题与参考答案.docx

    • 资源ID:722481       资源大小:38.72KB        全文页数:54页
    • 资源格式: DOCX        下载积分:3金币
    快捷下载 游客一键下载
    账号登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录 QQ登录
    二维码
    微信扫一扫登录
    下载资源需要3金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP,免费下载
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    《单片机原理与接口技术修订本》部分习题与参考答案.docx

    1、单片机原理与接口技术修订本部分习题与参考答案单片机原理及接口技术(修订本)部分 习题与参考答案第1章绪论1-2 什么叫单片机?一个完整的单片机芯片至少有哪些部件?答: 将微处理器( CPU)、存储器、定时 /计数器及输入输出接口电路等部件集成在一块集成电路上, 称为单片微型计算机, 简称单片机。 一个完整的单片机芯片至少有中央处理器(CPU)、随机存储器( RAM )、只读存储器( ROM )、定时 /计数器及 I/O 接口等部件。1-5 Intel 公司的主要单片机产品分为哪几大系列?各系列的区别何在?答: Intel 公司的 MCS-48 系列、 MCS-51 系列、 MCS-96 系列产

    2、品;48 系列的单片机在片内集成 4 位 CPU ,片内含有多种 I/O 接口,有的根据不同用途还配有许多专用接口,价格便宜,控制功能强。51 系列的单片机在片内集成 8 位 CPU 、片内 RAM 为 128 字节, ROM 为 4K 字节,个并行 I/O 口、 2 个 16 位定时 /计数器、串行接口、 5 个中断源。96 系列单片机 CPU 为 16 位,片内 RAM 为 232 字节, ROM 为 8K 字节,片内带有高速输入输出部件,多通道 10 位 A/D 转换部件,中断处理为 8 级。41-6 叙述 51 子系列与 52 子系列的区别?答: 51 子系列包含 8031/8051/

    3、8751 三种型号,它们的基本组成、基本性能都相同,都具有一个 8 位 CPU 、片内数据存储器 RAM128B 、 2 个 16 位定时计数器、有 5 个中断源,一个全双工串行接口,它们之间的区别在于片内程序存储器配置: 8031 片内没有 ROM ,使用时需在片外接 EPROM。8051 片内含有 4KB 的掩模 ROM ,其中的程序是生产厂家制作芯片时烧制的。 8751 片内含有 4KB 的 EPROM ,用户可以先用紫外线擦除器擦除,然后再利用开发机或编程器写入新的程序。52 子系列包含 8032/8052/8752 三种型号,52 子系列 与 51 子系列的区别在于: 片内 ROM和

    4、 RAM 的容量比 8051 子系列各增加一倍,另外,增加了一个定时 /计数器和一个中断源。第 2 章 MCS-51 系列单片机的结构及原理2-2MCS-51单片机的引脚有何功能?在使用8031 时如何接法?使用8751 时如何接法?答: 引脚是片内外程序存储器的选择信号。当 端保持高电平时,访问内部程序存储器,但在 PC(程序计数器) 值超过 0FFFH(对于 8051/8751/80C51 )或 1FFFH(对于 8052)时,将自动转向访问外部程序存储器。当 端保持低电平时,不管是否有内部程序存储器,则只访问外部程序存储器。由于 8031 片内没有程序存储器,所以在使用 8031 时,

    5、引脚必须接低电平。2-4 MCS-51 单片机的内部存储空间是怎样分配的?答: MCS-51 单片机的内部存储空间分为数据存储器和程序存储器。内部数据存储器: 共 256 字节单元, 包括低 128 个单元和高 128 个单元。 低 128 字节又分成 3 个区域:工作寄存器区( 00H1FH ),位寻址区( 20H2FH )和用户 RAM 区( 30H7FH )。高 128 字节是供给特殊功能寄存器使用的,因此称之为特殊功能寄存器区。内部程序存储器: 在 8031 片内无程序存储器, 8051 片内具有 4KB 掩模 ROM ,8751 片内具有 4KBEPROM 。2-5 如何从 MCS-

    6、51 单片机的 4 个工作寄存器组中选择当前工作寄存器组?答:MCS-51 单片机提供了 4 组工作寄存器, 对于当前工作寄存器组的选择, 是通过 PSW 中的 RS1 和 RS0 来进行选择。具体关系如下表:RS1RS0当前寄存器组00第 0 组工作寄存器01第 1 组工作寄存器10第 2 组工作寄存器11第 3 组工作寄存器2-6 内部 RAM 低 128 个单元是如何划分的?答: 内部 RAM 低 128 个单元按用途分成 3 个区域:工作寄存器区(址区( 20H2FH )和用户 RAM 区( 30H7FH )。00H1FH ),位寻2-7 DPTR 是什么寄存器?它的作用是什么?它由哪

    7、几个寄存器组成?答: DPTR 是数据指针寄存器,是一个 16 位寄存器,用来存放 16便对外部数据存储器 RAM 中的数据进行操作。 DPTR 由高位字节 DPH成。位存储器的地址,以和低位字节 DPL 组2-8 什么是堆栈?堆栈有何作用?为什么在程序初始化时要对 SP 重新赋值?答: 所谓堆栈,顾名思义就是一种以“堆”的方式工作的“栈”。堆栈是在内存中专门开辟出来的按照“先进后出,后进先出”的原则进行存取的 RAM 区域。堆栈的用途是保护现场和断点地址。在 8051 单片机复位后,堆栈指针 SP 总是初始化到内部 RAM 地址 07H。从 08H 开始就是 8051 的堆栈区,这个位置与工

    8、作寄存器组 1 的位置相同。因此,在实际应用中,通常要根据需要在程序初始化时对 SP 重新赋值,以改变堆栈的位置。2-9 试述程序状态字寄存器 PSW 各位的含义。答: 程序状态字寄存器 PSW 是 8 位寄存器,用于存放程序运行的状态信息。CY( PSW.7):进位标志位。AC( PSW.6):辅助进位标志位。F0( PSW.5)、 F1( PSW.1):用户标志位。RS1( PSW.4)、 RS0(PSW.3 ):工作寄存器组选择位。OV(PSW.2 ):溢出标志位。P( PSW.0 ):奇偶标志位。2-10 P0、 P1、 P2、P3 口的结构有何不同?使用时要注意什么?各口都有什么用途

    9、?答: P0 口由一个所存器、两个三态输入缓冲器、场效应管、控制与门、反相器和转换开关组成; 作为输出口时, 必须外接上拉电阻才能有高电平输出,作为输入口时, 必须先向锁存器写“ 1”;作为普通 I/O 口使用或低 8 位地址 /数据总线使用。P1 口内没有转换开关,但有上拉电阻;只用作普通 I/O 口使用。P2 口比 P1 口多了一个转换控制开关;作为普通 I/O 口使用或高 8 位地址线使用。P3 口比 P1 口增加了与非门和缓冲器;具有准双向 I/O 功能和第二功能。上述 4 个端口在作为输入口使用时,应注意必须先向端口写“ 1”。2-11 请说出 指令周期、 机器周期、 状态和拍的概念

    10、。 当晶振频率为 12MHz 、8MHz 时,一个机器周期为多少微秒?答: 指令周期:执行一条指令所需要的时间。期为机器周期: CPU 完成一个基本操作所需要的时间。状态:振荡脉冲经过二分频后,得到的单片机的时钟信号。拍:振荡脉冲的周期。当晶振频率为 12MHz 时,一个机器周期为 1s;当晶振频率为3s。8MHz时,一个机器周2-12 什么是单片机复位?复位后单片机的状态如何?答: 在时钟电路工作后,只要在单片机的 RESET引脚上出现24 个时钟震荡脉冲(两个机器周期)以上的高电平,单片机就能实现复位。复位后, CPU 和系统都处于一个确定的初始状态,在这种状态下,所有的专用寄存器都被赋予

    11、默认值,除 SP=07H, P0P3 口为 FFH 外,其余寄存器均为 0。第 3 章 MCS-51 系列单片机的指令系统3-3 MCS-51 系列单片机有哪几种寻址方式?各种寻址方式所对应的寄存器或存储器寻址空间如何?答: MCS-51 系列单片机提供了 7 种寻址方式:( 1)立即寻址:操作数在指令中直接给出,立即数前面有“ #”。( 2)直接寻址:在指令中直接给出操作数地址。对应片内低 128 个字节单元和特殊功能寄存器。( 3)寄存器寻址:以寄存器的内容作为操作数。对应的寄存器有: R0R7、 A、 AB 寄存器和数据指针 DPTR 。( 4)寄存器间接寻址:以寄存器的内容作为 RAM

    12、 地址,该地址中的内容才是操作数。对应片内 RAM 的低 128 个单元采用 R0、 R1 作为间址寄存器,片外 RAM 低 256 个单元可用 R0、 R1 作为间址寄存器,整个 64KB 空间可用 DPTR 作为间址寄存器。( 5)变址寻址:以 DPTR 或 PC 作为基址寄存器,以累加器 A 作为变址寄存器,并以两者内容相加形成的 16 位地址作为操作数地址。对应片内、片外的 ROM 空间。( 6)相对寻址:只在相对转移指令中使用。对应片内、片外的 ROM 空间。( 7)位寻址: 对可寻址的位单独进行操作。 对应位寻址区 20H2FH 单元的 128 位和字节地址能被 8 整除的特殊功能

    13、寄存器的相应位。3-4 若访问特殊功能寄存器,可使用那些寻址方式?答: 直接寻址方式。3-5 若访问外部 RAM 单元,可使用那些寻址方式?答: 寄存器间接寻址方式。3-6 若访问内部 RAM 单元,可使用那些寻址方式?答: 立即寻址方式,直接寻址方式,寄存器寻址方式,寄存器间接寻址方式,位寻址方式。3-7 若访问内外程序存储器,可使用那些寻址方式?3-9 外部数据传送指令有几条?试比较下面每一组中两条指令的区别。( 1) MOVX A, R1 , MOVX A ,DPTR( 2) MOVX A, DPTR , MOVX DPTR ,A(3) MOV R0 ,A , MOVX R0,A( 4)

    14、 MOVC A, A+DPTR, MOVXA, DPTR答: 外部数据传送指令有 6 条:MOVXA, DPTRMOVX DPTR, AMOVXA, RiMOVXRi, AMOVCA, A+DPTRMOVC A, A+PC( 1) MOVXA ,R1MOVXA, DPTR都是访问片外RAM ,但二者寻址范围不同。前1 条指令是对片外 RAM 低 256 个单元的“读”操作。后 1 条指令是对片外 RAM64KB 空间的“读”操作。( 2) MOVX A , DPTR MOVX DPTR , A访问空间相同,但数据传送方向不同。前1 条指令是对片外 RAM64KB 空间的“读”操作。后 1 条指

    15、令是对片外 RAM64KB 空间的“写”操作。( 3) MOV R0 , A MOVX R0 , A二者访问的空间不同。前 1 条指令是对片内 RAM 低 128 个单元的“写”操作。后 1 条指令是对片外 RAM 低 256 个单元的“写”操作。( 4) MOVC A , A+DPTR MOVX A ,DPTR二者访问的空间不同,寻址方式不同。前 1 条指令是变址寻址方式,对 ROM 操作。后 1 条指令是寄存器间接寻址方式,对片外 RAM 操作。3-10 已知( 30H)=40H,( 40H ) =10H ,( 10H) =32H ,( P1)=EFH ,试写出执行以下程序段后有关单元的内

    16、容。MOV R0, #30HMOV A, R0MOV R1, AMOV B, R1MOV R1, P1MOV P2, P1MOV 10H, #20HMOV 30H, 10H答: R0 30H,( R0) =30HA( R0),( A) =40HR1( A),( R1)=40HB( R1),( B) =10H(R1)( P1 ),( R1) =(40H ) =EFHP2( P1 ),( P2) =EFH10H 20H ,( 10H ) =20H30H( 10H),( 30H ) =20H结果:( R0) =30H,( A) =40H ,( R1) =40H ,( B) =10H ,( 40H)

    17、=EFH ,( P2)=EFH,( 10H )=20H ,( 30H) =20H3-11 试写出完成以下数据传送的的指令序列。(1) R1 的内容传送 R0;(2)片外 RAM 60H 单元的内容送入 R0;(3)片外 RAM 60H 单元的内容送入片内 RAM 40H 单元;( 4)片外 RAM 1000H 单元的内容送入片外 RAM 40H 单元;(5) ROM 2000H 单元的内容送入 R2;( 6) ROM 2000H 单元的内容送入片内 RAM 40H 单元;(7) ROM 2000H 单元的内容送入片外 RAM 0200H 单元。RAM答:( 1)由于在工作寄存器与工作寄存器之间

    18、不能直接传送数据, 所以需要借助累加器 A。MOVA ,R1MOV R0 ,A( 2)片外 RAM 向片内 RAM 传送数据, 不能直接进行, 需要借助累加器 A。由于片外是 60H 单元,地址小于 FFH,所以间址寄存器使用 Ri 即可。MOV R1 , #60HMOVX A , R1MOV R0 ,A( 3) MOV R1 , #60HMOVX A, R1MOV40H, A( 4)片外数据不能直接送入片外单元,需要先将片外数据读入累加器,然后再送到片外。MOV DPTR, #1000HMOVX AMOV R1MOVX R1, DPTR, #40H, A(5)ROM 中的数据需要使用查表指令

    19、才能读出来,所以此题不能使用一般的传送指令从ROM 中读数据。MOVDPTR, #2000HMOVA, #00HMOVCA, A+DPTRMOVR2, A(6) MOV DPTR, #2000HMOV A , #00HMOVC A , A+DPTRMOV 40H ,A(7) MOV DPTR, #2000HMOV A , #00HMOVC A , A+DPTRMOV DPTR , #0200HMOVX DPTR , A3-12 试编程,将外部 RAM 1000H 单元中的数据与内部 RAM 60H 单元中的数据相互交换。答: 片外 RAM 与片内 RAM 之间的数据传送不能直接进行,需要借助累

    20、加器 A。数据交换需要使用数据交换指令 XCH 。MOVDPTR, #1000HMOVX A, DPTRXCH A ,60HMOVX DPTR , A3-14 已知( A) =5BH,( R1) =40H ,( 40H)=C3H ,( PSW ) =81H,试写出各条指令的执行结果,并说明程序状态字的状态。( 1) XCH A, R1 ( 2) XCH A, 40H( 3) XCH A, R1 ( 4) XCHD A, R1( 5) SWAP A ( 6) ADD A, R1( 7) ADD A , 40H ( 8) ADD A, #40H( 9) ADDC A, 40H ( 10) SUBB

    21、 A , 40H( 11) SUBB A, #40H答:(1)结果:( A)( R1),( A)=40H ,( R1) =5BH ,( PSW) =81H(2)结果:( A)( 40H),( A )=C3H ,( 40H) =5BH ,( PSW )=80H(3)结果: (A)( R1),( A)=C3H ,( R1)=( 40H)=5BH ,( PSW)=80H(4)结果:( A) 03 ( R1) 03 ,( A) =53H ,( R1) =(40H) =CBH ,(PSW ) =80H(5)结果:( A) 03 ( A) 47 ,( A) =B5H ,( PSW ) =81H(6)结果:

    22、 A( A) +( R1),( A) =9BH ,( PSW) =05H(7)结果: A( A) +(40H),( A) =1EH ,( PSW) =80H(8)结果: A( A) +40H ,( A) =9BH ,( PSW) =05H(9)结果: A( A) +(40H) +CY ,( A )=1FH ,( PSW ) =81H(10)结果: A( A) -( 40H) -CY ,( A )=97H ,( PSW )=85H(11)结果: A( A) - 40H - CY ,( A) =1AH ,( PSW ) =01H3-26 已知( A) =5BH ,( R1) =40H ,( 40H

    23、) =C3H ,( PSW)=81H ,试写出各条指令的执行结果,并说明程序状态字的状态。( 1) XCH A, R1 ( 2) XCH A, 40H( 3) XCH A, R1 ( 4) XCHD A, R1( 5) SWAP A ( 6) ADD A, R1( 7) ADD A , 40H ( 8) ADD A, #40H( 9) ADDC A, 40H ( 10) SUBB A , 40H( 11) SUBB A, #40H答:指令 LJMP addr16 是长转移指令, 指令中提供了 16 位目的地址, 寻址范围是 64KB。指令 AJMP addr11 是绝对转移指令, 指令中 11

    24、 位目的地址, 其中 a7a0 在第二字节,a10a8 则占据第一字节的高 3 位,寻址范围是与 PC 当前值(本指令所在地址 +本条指令所占用的字节数 2)在同一个 2K 的区域内。3-27 试分析以下两段程序中各条指令的作用。程序执行完将转向何处?(1) MOV P1, #0CAH MOV A,#56HJB P1.2 , L1JNB ACC.3 , L2L1: L2: (2) MOV A, #43H JB ACC.2 , L1 JBC ACC.6 , L2,L1: L2: 答:( 1)MOVP1, #0CAH; P1CAH, P1=CAH=11001010BMOVA, #56H; A 56

    25、H, A=56H=01010110BJBP1.2, L1;若 P1.2=1 ,则转移至 L1JNBACC.3, L2;若 ACC.3=0 ,则转移至 L2L1 :L2 :执行完本段程序后将转移至L2,因为 P1.2=0, ACC.3=0 ,所以转至 L2。( 2)MOVA, #43H;A43H, A=43H=01000011BJBACC.2, L1;若 ACC.2=1 ,则转移至 L1JBCACC.6,L2;若 ACC.6=1 ,则转移至L2 ,同时将 ACC.6清零L1 :L2 :执行完本段程序后将转移至L2,因为 ACC.2=0 ,ACC.6=1 ,所以转至L2,并且将 ACC.6清零。第

    26、 4 章 汇编语言程序设计4-3 存放在内部 RAM函数的函数值并存放到内部的 DATARAM 的单元中的变量FUNC 单元中。X 是一个无符号整数, 试编程计算下面答:ORG0300HMOVA, DATACJNEA, #20 , LOP1LOP1 : JCLOP3CJNEA, #50 , LOP2LOP2 : JCLOP4MOVB, #1LJMPLOP5LOP3 : MOVB, #2LJMPLOP5LOP4 : MOVB, #5LOP5 : MULABMOVFUNC, ARET4-5 某单片机应用系统有4 4 键盘,经键盘扫描程序得到被按键的键值(00H 0FH)存放在 R2 中, 16 个

    27、键的键处理程序入口地址分别为KEY0 、 KEY1 、 KEY2 、, 、 KEY15 。试编程实现,根据被按键的键值,转对应的键处理程序。答: ORG0500HMOVDPTR, #JPTABMOVA, R2RLAJMPA+DPTRJPTAB : AJMP KEY0AJMPKEY1AJMP KEY2AJMP KEY15KEY0 : KEY1 : KEY2 : KEY15 :4-6试编程将片内40H 60H 单元中内容传送到外部RAM以 2000H为首地址的存储区中。答:ORG 0600HMOVR0, #40HMOVDPTR, #2000HMOVR7, #21HLOOP: MOV A, R0MOVX DPTR, AINCR0INCDPTRDJNZR7, LOOPRET4-7试编程将片内40H 60H 单元中内容传送到外部RAM以 2000H为首地址的存储区中。答:ORG 0700HMOVDPTR, #DATAMOVR7,


    注意事项

    本文(《单片机原理与接口技术修订本》部分习题与参考答案.docx)为本站会员主动上传,冰点文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰点文库(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

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

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


    收起
    展开