- 1、本文档共8页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
嵌入式系统开发基础基于ARM微处理器和Linux操作系统课后习题答案滕英岩.
1-1 什么是嵌入式系统?嵌入式系统和普通计算机系统的区别是什么?举例说明。
答:
问题一:嵌入式系统是以应用为中心,以计算机为基础,其软硬件可裁剪配置,对功能、可靠性、成本、体积、功耗有严格约束的一种专用计算机系统。
问题二:
比较项目 嵌入式系统 普通计算机系统 引导代码 BootLoader引导,针对不同电路进行移植 主板的BIOS引导 OS WindowsCE、VxWorks、Linux等,需要移植 Windows、Linux,不移植 驱动程序 每个设备都必须针对电路板进行开发 OS中含有大多数,直接下载 协议栈 移植 OS或者第三方供应商提供 开发环境 借助服务器进行交叉编译 在本机可开发调试 仿真器 需要 不需要
1-2 简述嵌入式系统的构成
答:
硬件 微处理器 嵌入式系统的控制核心 外围电路 嵌入式系统的内存、I/O端口、复位电路、电源等 外设 USB、LCD、键盘等 软件 设备驱动接口 负责嵌入式系统与外设的信息交互 实时操作系统 包括与硬件相关的底层软件、系统内核、设备驱动接口、通信协议、图形界面、标准化浏览器等 可编程应用接口 为编制应用程序提供各种编程接口库 应用软件
1-3
答:R13:也记作SP,在ARM指令集中虽然没有强制,但是通常用于堆栈指针SP;在Thumb指令集中强制其作为堆栈指针。
R14:也记作程序连接寄存器LR(Link Register),用于保存子程序调用或异常中断处理返回时程序的返回地址。
R15:也记作程序计数器PC,用于标示下一条将要执行的指令地址。
CPSR:程序状态寄存器,包含条件标识位、中断标识位、当前处理器模式等状态和控制位。
SPSR:备份的程序状态寄存器。在异常中断处理过程中,用于保存被中断处理程序的执行现场和处理器状态。
1-4
答:(1)复位异常中断:当系统上电、复位、软件复位时产生该类型中断。
(2)未定义指令异常中断:当ARM处理器或系统中的协处理器认为当前指令未定义时,产生该中断。通常利用该中断模拟浮点向量运算。
(3)软件中断:可用于用户模式下特权操作的调用,既可以是系统功能,也可以是用户自定义的功能。
(4)指令预取中止异常中断:如果处理器预取的指令地址不存在,或者该地址不允许当前指令访问,产生该类型的中断。
(5)数据访问中止异常中断:如果数据访问的目标地址不存在,或者该地址不允许当前指令访问,则产生该中断。
(6)外部中断:当处理器的外部中断请求引脚有效,而且CPSR的I控制位被清除时,产生该类型的中断
(7)快速外部中断:当处理器的快速中断请求引脚有效,而且CPSR的F控制位被清除时,产生该中断。
1-5
答:(1)ADR R0, TABLE
(2) ADR R1, DATA
LDR R0, [R1]
(3) LDR R0, =DATA
(4) TABLE EQU 800
MOV R0, #TABLE
(5) TABLE SPACE 20
1-6
答:
R0=DATA1这组数据在存储器中所存放的起始地址,由编译器分配;
R1=0x0C0D0E0F; R2=0xF; R3=0x8020; [0x8020]=R1
1-7
答:
AREA SWITCH, CODE, READONLY
ENTRY
AND R2, R0, 0x3 ;R2? R0的低两位
MOV R2, R2, LSL #30 ;将低两位移动到高两位
BIC R0, R0, 0x3 ;将R0的低两位清0
AND R3, R1, 0xC0000000 ;R3?R1的高两位
MOV R3, R3, LSR #30 ;将高两位移动到低两位
BIC R1, R1, 0xC0000000 ;将R1的高两位清0
ORR R0, R0,R3 ;R1的高两位写入到R0的低两位
ORR R1, R1, R2 ;R0的低两位写入到R1的高两位
END
1-8
答:
// main.c
Include “stdio.h”
extern int sum (int num[], int n);
main(){
int array[10]={20, 30, 23, 5,15,64,6,15,72,73 };
int HE=sum(array, 10);
printf(“The sum of array is %d”, HE);
}
//huibian.s
AREA ASM, CODE, READONLY
EXPORT sum
sum MOV R2, #0
LOOP LDR R3, [R0], #4
您可能关注的文档
- 岩芯图像采集系统设计报告2011617..doc
- 岭南版五年级美术上册全册教案..doc
- 岱山中学学生体育运动情况调查研究完整版4.14..doc
- 岳彩申张晓东金融监管制度发展的新趋势消费者保护与审慎监管的分离..doc
- 岱山污泥脱水机房方案3台205..doc
- 岳朝龙《SAS与现代经济统计分析》例题程序..doc
- 岳阳职业技术学院党建工作自评报告..doc
- 岳阳市消费品市场发展现状及潜力研究..doc
- 岳麓版,高一历史,必修二课后练习答案(1-3单元)..doc
- 岳麓版高一期末试题1..doc
- 初中历史重大事件教学中时间线逻辑思维能力培养教学研究课题报告.docx
- 《艺术市场中的艺术批评与艺术家创作关系研究》教学研究课题报告.docx
- 《冷链物流过程中农产品损耗的冷链物流保险产品开发》教学研究课题报告.docx
- 6G行业面临的机遇与挑战.docx
- 高中生物实验中遗传实验操作技巧的培训与应用教学研究课题报告.docx
- 色胶粒项目详细风险分析及评估报告.docx
- 电子竞技产业的数字化赛事运营与电竞人才培养体系建设项目可行性研究报告.docx
- 职业生涯教育在高中阶段对学生自我效能感的影响研究教学研究课题报告.docx
- 6G行业前景与全球市场趋势.docx
- 初中校园安全标识教学中的安全教育课程实施效果评价方法研究教学研究课题报告.docx
文档评论(0)