ARM嵌入式系统基础与开发教程丁文龙.docVIP

ARM嵌入式系统基础与开发教程丁文龙.doc

  1. 1、本文档共9页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
ARM嵌入式系统基础与开发教程丁文龙

第1章 嵌入式系统概述 1.填空题 (1)嵌入式系统硬件平台 嵌入式软件 (2)硬件抽象层HAL 板级支持包BSP 设备驱动程序 (3)嵌入式微处理器 嵌入式微控制器 嵌入式片上系统SoC 2.选择题 (1)B (2)A B D (3)D 3.简答题 (1)什么是嵌入式系统?列举几个熟悉的嵌入式系统的产品。 嵌入式系统是以应用为中心,以计算机技术为基础,并且软硬件可裁剪,适用于应用系统对功能、可靠性、成本、体积、功耗有严格要求的专用计算机系统。常见的有汽车、手机、MP3等等。 (2)嵌入式系统由哪几部分组成? 嵌入式系统从大的方面分嵌入式系统硬件平台和嵌入式软件两大部分,其中软件部分又具体分为若干层次。对于包含有操作系统的嵌入式系统来讲,嵌入式系统软件结构包含4个层次:设备驱动层、实时操作系统RTOS层、应用程序接口API层、应用程序层。 (3)简述嵌入式系统的特点。 系统内核小;专用性强;系统精简;软件固化;嵌入式软件开发要想走向标准化,就必须使用多任务的操作系统;嵌入式系统开发需要开发工具和环境。 第2章 ARM体系结构 1.填空题 (1)Cortex-R4处理器 Cortex-A8处理器 (2)ARM Thumb (3)R13 R14 R15 (4)8 16 32 2.选择题 (1)A C D (2)A (3)B C D 3.简答题 (1)简述ARM可以工作的几种模式。 ARM体系结构支持7种处理器模式:用户模式、快中断模式、中断模式、管理模式、中止模式、未定义模式和系统模式。 (2)ARM7内部有多少个寄存器? 在ARM7TDMI处理器内部有37个用户可见的32位寄存器,其中31个通用寄存器,6个状态寄存器。 (3)描述一下如何禁止IRQ和FIQ的中断? 在一个特权模式下,都可通过置位CPSR中的I位来禁止IRQ。 在一个特权模式中,可通过置位CPSR中的F标志来禁止FIQ异常。 (4)请描述ARM7TDMI进入异常或退出异常时内核有何操作? 当异常发生时,ARM处理器尽可能完成当前指令(除了复位异常)后,再去处理异常,并执行如下动作: ① 进入与特定的异常相应的操作模式; ② 将引起异常指令的下一条指令的地址保存到新模式的R14中; ③ 将CPSR的原值保存到新模式的SPSR中; ④ 通过设置CPSR的第7位来禁止IRQ;如果异常为快中断,则要设置CPSR的第6位禁止快中断; ⑤ 给PC强制赋向量地址值。 退出异常时: ① 将LR中的值减去偏移量后移入PC,偏移量根据异常的类型而有所不同; ② 将SPSR的值复制回CPSR; ③ 清零在入口置位的中断禁止标志。 第3章 ARM7TDMI(-S)指令系统 1.填空题 (1)ARM Thumb (2)存储器 目的寄存器 (3)寄存器寻址 立即寻址 寄存器移位寻址 寄存器间接寻址 基址寻址 2.选择题 (1)D (2)C (3)B 3.简答题 (1)BIC指令的作用是什么? BIC指令用于位清除操作,将寄存器Rn的值与operand2的值的反码按位作逻辑“异或”操作,结果保存到Rd中。 (2)描述B、BL、BX指令的区别。 B指令实现跳转到指定的地址执行程序。注意:B指令限制在当前指令的±32MB地址范围内(ARM指令为字对齐,最低两位地址固定为0)。 BL指令实现先将下一条指令的地址拷贝到R14(即LR)连接寄存器中,然后跳转到指定地址运行程序。注意:BL指令限制在当前指令的±32MB地址范围内,BL指令用于子程序调用,在子程序的最后可以使用MOV PC, LR指令跳回BL Label指令处的下一条指令继续执行。 BX指令跳转到Rm指定的地址去执行程序。若Rm的bit0为1,则跳转时自动将CPSR中的标志T位置,即把目标地址的代码解释为Thumb代码;若Rm的bit0为0,则跳转时自动将CPRS中的标志T复位,即把目标地址的代码解释为ARM代码。 (3)当执行SWI指令时,会发生什么? SWI指令用于产生软件中断,以便用户程序能调用操作系统的系统例程。操作系统在SWI的异常处理程序中提供相应的系统服务,指令中24位的立即数指定用户程序调用系统例程的类型,相关参数通过通用寄存器传递。当指令中24位的立即数被忽略时,用户程序调用系统例程的类型由通用寄存器R0的内容决定,同时,参数通过其他通用寄存器传递。 (4)编写一段ARM汇编程序,实现数据块复制,将R0指向的8个字的连续数据保存到R1指向的一段连续的内存单元。 第4章 基于ARM的嵌入式软件设计 1.填空题 (1)代码 数据 (2)32位的ARM (3)指令

文档评论(0)

aicencen + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档