版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、第一章1. 嵌入式系统的3个根本要素嵌入性、专用性、电脑系统。2. 嵌入式系统的实时分类非实时系统、软实时系统、硬实时系统。3. 嵌入式系统的硬件平台组成嵌入式系统的硬件平台是以嵌入式处理器为核心,由存储器、I/O单元电路、通信模块、外部设备等必要的辅助接口组成的。4. 嵌入式系统的3层和4层结构3层:嵌入式系统硬件平台、嵌入式实时操作系统和嵌入式系统应用。4层:嵌入式系统硬件平台、硬件抽象层、嵌入式实时操作系统和嵌入式系统应用。5. 什么是嵌入式系统?狭义上讲,嵌入式系统是指:“嵌入到对象体系中的、用于执行独立功能的专用电脑系统。定义为以应用为中心,以微电子技术、控制技术、电脑技术和通讯技术
2、为根底, 强调硬件软件的协同性与整合性,软件硬件可剪裁的,适应应用系统对功能、可靠性、 本钱、体积、功耗和应用环境有等严格要求的专用电脑系统。广义上讲,但凡带有微处理器的专用硬件系统都可以称为嵌入式系统。6. 什么是硬件抽象层 HAL,它有什么功能?硬件抽象层通过接口向操作系统以及应用程序提供对硬件进行抽象后的效劳。硬件抽象层一般应包含相关硬件的初始化、数据的输入输出操作、硬件设备的配置操作 等功能。7. 硬件抽象层的定义和代码设计应该具有哪些特点?1硬件抽象层具有与硬件的密切相关性;2硬件抽象层具有与操作系统的无关性;3接口定义的功能应包含硬件或系统所需硬件支持的所有功能;4定义简单明了,太
3、多接口函数会增加软件模拟的复杂性;5可测性的接口设计有利于系统的软硬件测试和集成。8. 嵌入式系统的应用领域。工业过程控制、网络通信设备、消费电子产品、航空航天设备、军事电子设备和现 代武器.第二章1、ARM的三种含义,常见的 ARM芯片。一个公司的名称、一类微处理器的通称、一种技术的名称。常见的 ARM 芯片有 ARM7、ARM9、ARM9E、ARM10E、ARM11 和 SecurCore、Cortex3、RISC与 CISC的区别指标RISCCISC指令集一个周期执行一条指令,通过简单指令的组 合实理复杂操作;指令长度固定指令长度不固定,执 行需要多个周期。流水线流水线每周期前进一步。指
4、令的执行需要调用微代码的一个微程序存放器更多通用存放器。用于特定目的的专用存放器Load/Store结构独立的Load和Store指令元成数据在奇存器 和外部存储器之间的传输。处理器能够直接处理 存储器中的数据。4、ARM微处理器的应用选型主要考虑哪些方面?1. ARM微处理器内核的选择2. 系统的工作频率3. 芯片内存储器的容量4片内外围电路的选择5、 存储器的“大端格式、“小端格式大端格式:字数据的高字节存储在低地址中,而字数据的低字节那么存放在高地址中; 小端格式:数据的低字节存储在低地址中,而数据的高字节那么存放在高地址中。6、ARM系统支持的指令集,都是多少位?ARM系统支持两种指令
5、集:ARM指令集和Thumb指令集。ARM指令集32位,Thumb指令集16位。7、 ARM9有多少存放器,通用存放器,状态存放器?R13、R14、R15通常被用作?ARM9的内部总共有37个32位的存放器,其中 31个用作通用存放器,6个用作状态 存放器.。R13存放器的作用通常是栈指针;R14用作子程序链接存放器,用于保存子程序的返回地址;R15的功能是程序计数器,从 R15读取的值是处理器正要取指的地址。& CPSR存放器标志位含义4个条件代码标志;2个中断控制位;5个对当前处理器模式进行编码的位;1个指示当前执行指令的工作状态位; 保存位.9、ARM处理支持哪7种运行模式?哪5
6、种的异常模式?用户模式、快速中断模式、外部中断模式、管理模式、数据访问终止模式、系统模式、 未定义指令中止模式。其中除去用户模式和系统模式以外的5种称为异常模式。10、当一个异常发生时, ARM处理步骤?1将下一条指令的地址存入相应连接存放器LR,以便程序在处理异常返回时能重新开始执行。2将CPSR复制到相应的 SPSF中。3根据异常类型,强制设置 CPSR的运行模式位。4强制PC从相关的异常向量地址取下一条指令执行,从而跳转到相应的异常处理程序处,同时设置中断禁止位,以禁止中断发生。11、ARM异常向量及其优先级。优先级异常优先级异常1最咼复位4IRQ2数据终止5预取指令终止3FIQ6最低未
7、定义指令、SWI12、ARM异常向量及其入口地址。地址异常进入模式0x00000000复位管理模式0x00000004未疋乂扌曰令未定义模式0x00000008软件中断管理模式0X0000000C:终止预取指令终止模式0x00000010终止数据终止模式0x00000014保存保存0x00000018IRQIRQ0x0000001CFIQFIQ第三章1. ARM指令的格式,并解释每一局部的含义。<opcode><c on d>S <Rd>,vR n>, <op2>其中各项介绍如下:<opcode>操作码,如ADD表示算术加操作指
8、令; <cond>决定指令执行的条件域;S决定指令执行是否影响CPSR存放器的值;<Rd>目的存放器;<Rn>第一个操作数,为存放器; <op2>第二个操作数。2. ARM处理器的堆栈工作方式 。满递增方式:堆栈指针指向最后入栈的数据位置, 且由低地址向高地址生 成。满递减方式:堆栈指针指向最后入栈的数据位置, 且由高地址向低地址生 成。空递增方式:堆栈指针指向下一个入栈数据的空位置, 且地址由低向高生 成。空递减方式:堆栈指针指向下一个入栈数据的空位置, 且地址由高向低生 成。3. B、BL和BX指令的区别。1. B指令分支,跳转2. BL指令
9、分支和链接指令,子程序调用3. BX指令分支和交换指令, ARM/Thumb切换4. MOV/LDR/STR/ADD/SUB/LSHL令。指令解释,如 LDR R2, R4,#5!的含义。MOV R4, R5 ;将存放器R5的内容传送到存放器 R4MOV PC, R14 ;将存放器R14的内容传送到PCLDRR1,R2 ; R1J R2,将以R2中的内容为地址,将该地址中的数据传送到R1中LDR R2, R4,#5! ; R2R4+5, R4R4+5;将R4的内容加上5形成操作数的有效地地址,从而取 得操作数存入存放器R2中,然后R4的内容自增5个字 节。STR R1, R2; R2JR1,将
10、R1中的内容传送到以 R2中的内容为地 址的存储器中。MOV R0, R1,LS#2 ;将R1中的内容左移2位后传送到R0中,ADD RO, R3, R4 ; R0 = R3 + R4ADD RO, R3, #10 ; R0 = R3 + 10SUB R0,R1,#0x10 ; R0 = R1 - 0x10SUB R0,R2,R3,LSL#1 ; R0 = R2 - (R3 << 1)第四章1、 asm Impor、t Export 、 AREA、 CODE、 READONLYImport :使用IMPORT伪操作声明该全局变量;Export:在汇编中用 EXPORT导出函数名,并
11、用该函数名作为汇编代码段的标识;AREA段指示伪指令,用于定义一个代码段或数据段;CODE代码段的相关属性,用于定义代码段,默认为 READONLYREADONL Y代码段的相关属性,指定本段为只读,默认为READONLY2、汇编语言结构AREA 伪指令定义一个段, 并定义段的相关属性, 本例定义一个名为 example 的代码段, 属性为只读。ENTRY 伪指令标识程序的入口点,接下来为语句段。执行主代码后通过使用软件中断SWI指令实现了返回到 DEBUG 。END 伪指令指示代码段的结束。3、C语言中内嵌ARM汇编指令时有哪些限制?1不能直接赋值 PC,程序跳转要使用 B或者BL指令。2在
12、使用物理存放器时,不要使用过于复杂的C表达式,防止物理存放器冲突。 3 R12 和 R13 可能被编译器用来存放中间编译结果,计算表达式值时可能将 R0R3、R12及R14用于子程序调用,因此要防止直接使用这些物理存放器。 4一般不要直接指定物理存放器,而让编译器进行分配。4、C/C+与 ARM汇编语言混合编程有哪些情况?1 在 C 语言中内嵌汇编2 在汇编中使用 C程序全局变量3. C程序中调用汇编的函数4在汇编程序中调用 C的函数5. C和C+混合调用5、C语言中内嵌汇编语言实例#include <stdio.h> void my_strcpy(const char *src
13、, char *dest) / 声明一个函数 char ch;/ 声明一个字符型变量_asm/ 调用关键词 _asmLOOP/ 循环入口LDRB ch, src , #1/STRB ch, dest , #1/CMP ch,#0/比拟CH是否为零,否那么循环。BNE LOOPB指令跳转,NE为Z位清零不相等int main(); C 语言主程序char *a = "forget it and move on!"char b64; / 字符型数组my_strcpy(a , b);/ 调用子函数,进行复制 printf("original: %s" , a)
14、;/ 屏幕输出, a 的数值 printf("copyed: %s" , b); / 屏幕输出, b 的数值 return 0;6、C 语言调用汇编语言的函数实例/* C 程序 */#include <stdio.h>extern void asm_strcpy(const char *src , char *dest);/ 声明可以被调用的函数int main() /C 语言主函数const char *s = "seasons in the sun"/ 声明字符型指针变量char d32;/ 声明字符型数组 ,初始化为 0asm_strc
15、py(s,d);/ 调用汇编子函数printf("source: %s",s);printf(" destination: %s",d);return 0; 汇编语言程序段AREA asmfile,CODE,READONLY声明汇编语言程序段EXPORT asm_strcpy;声明可被调用函数名称asm_strcpy;函数入口地址LOOP;循环标志条LDRB R4,R0,#1;R0的地址加1后送给R4CMP R4,#0;比拟R4是否为零BEQ OVER;为零跳转到结束,目标数组初始化为0STRB R4, R1,#1;R4的值送入R1加1地址B LOOP;
16、跳转到循环位置OVER;跳出标志位MOV PC, LR;子函数返回END第五章1、 S3C2440A的地址线对外引出条数?寻找空间多大?内存分成几个bank,每个bank多大?S3C2440A芯片对外只引出了 30根寻址的存储空间是 1GB,并且被分成8个存储模块, 每块 128MB 对外引出地址线 A0-A26。2、 SRAM DRAM勺特点,NorFlash、NandFlash 的特点。SRAM:优点:速度快,常用作电脑里的 Cache;缺点:功耗大,价格高,集成度差;DRAM:优点:结构简单,拥有非常高的密度,单位体积的容量较高因此本钱较低。但相反的,DRAM也有访问速度较慢,耗电量较大
17、的缺点。NorFlash :特点是芯片内执行, 这样应用程序可以直接在 flash 闪存内运行, 不必再 把代码读到系统 RAM中。NOR勺传输效率很高,在 14MB的小容量时具有很 高的本钱效益,但是很低的写入和擦除速度大大影响了它的性能。NandFlash 结构能提供极高的单元密度,可以到达高存储密度,并且写入和擦除的速度也很快。应用 NAND的困难在于flash的管理和需要特殊的系统接口。3、S3C2440A共有多少个GPIO?被分成几组?S3C2440A芯片共130个GPIO端口,被分为 9组。5、S3C2440A共有多少个中断源?外部、内部几个?可以接收 60 个中断源, 24个外部
18、中断 EINT0-23, 36 个内部中断。 外部中断可以根据紧 急情况分 EINT0-3,EINT4-7,EINT8-23。8、看门狗定时器的原理和作用原理:设系统程序完整运行一周期的时间是tp,看门狗的定时周期为 ti,且ti>tp ;在程序运行一周期 tp 后就修改再重新设定看门狗的定时周期定时器的计数 值俗称“喂狗 ),只要程序正常运行,定时器就不会溢出; 假设由于干扰等原因使系统不能在 tp 时刻修改定时器的计数值,定时器将在 ti 时刻溢出,引发系统复位,使系统得以重新运行,从而起到监控作用。作用:就是当系统“跑飞而进入死循环时,恢复系统的运行。9、GPIO如何设置输入、输出
19、、上拉电阻?配置输出端口,可以向 GP nDAT的相应位写数据配置输入端口,可以从 GPnDAT的相应位读数据 控制每个端口组的上拉电阻的允许/禁止:某位为 0,允许上拉电阻;某位为 1 ,禁止上拉电阻简答题1 、与通用电脑系统相比,嵌入式系统的特点。1. 系统内核小 2.专用性强 3.运行环境差异大 4.可靠性要求高 5.系统精简和高实时性系统6.具有固化在非易失性存储器中的代码7.嵌入式系统开发工作和环境2、采用RISC架构的ARM微处理器的特点。?体积小、低功耗、低本钱、高性能;?支持Thumb 16位/ARM 32位双指令集,能很好的兼容8位/16位器件;?大量使用存放器,指令执行速度
20、更快;?大多数数据操作都在存放器中完成;?寻址方式灵活简单,执行效率高;?指令长度固定。3、常见的 ARM 处理器的寻找方式。存放器寻址、立即寻址、存放器间接寻址、变址寻址、存放器移位寻址、多存放器寻 址、堆栈寻址、相对寻址4、S3C2440A设置外部中断的一般方法。1挑选GPx组的引脚,设置为中断输入不带上拉电阻2通过EXTINT0-2存放器,设置中断触发方式3清空中断源存放器 ESRCPND中断悬挂存放器EINTPND4设置中断屏蔽存放器允许中断5设置中断处理函数。如:plSR_EINT8_23 = (U32)Key_ISR;while(1)for(i=0;i<4;i+)GPFDAT
21、=ledtabi;Delay(70);return(0);void Delay (un sig ned int x )un sig ned int i,j,k;for(i=0;i<=x;i+) for(j=0;j<=0xff;j+) for(k=0;k<=0xff;k+);AREA |DATA|,CODE,READONLYENTRYldr r13,=0x1000IMPORT Ledlamp;b LedlampEND5、S3C2440A的定时器个数,配置定时器的一般流程:S3C2440A有5个16位的定时器;1 选择一个定时器(0,123,4)2. 设置预分频值(TCFG0)设
22、置分频值(TCFG1)设置计数初始值(TCNTBn)3. 设置TCON手动更新,自动加载),去除TCON的手动更新4 注册定时器中断效劳函数5.开启定时器中断(定时器中断使能),开启定时器6、RISC体系结构应具有如下特点。采用固定长度的指令格式,指令归整、简单、根本寻址方式有23种。使用单周期指令,便于流水线操作执行。大量使用存放器,数据处理指令只对存放器进行操作,只有加载/存储指令可以访问存储器,以提高指令的执行效率。除此以外,ARM体系结构还采用了一些特别的技术,在保证高性能的前提下尽量缩 小芯片的面积,并降低功耗 所有的指令都可根据前面的执行结果断定是否被执行,从而提高指令的执行效率。 可用加载/存储指令批量传输数据,以提高数据传输效率 可在一条数据处理指令中同时完成逻辑处理和移位处理 在循环处理中使用地址的自动增减来提高运行效率。两个例题例5-2程序如下:#defi ne GPFCON (*(volatile un sig ned *)0x56000050) #defi ne GPFDAT (*(volatile un sig ned *
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 房地产投资管理项目投资收益分析总结
- 风险管理计划及风险控制措施
- 宠物营养配餐与健康管理
- 驻唱岗位工作职责与计划
- 金属非金属矿山支护作业人员培训计划
- 让车检无忧资深二手车评估师工作实录
- 粮食检验员高级绩效考核指标体系优化研究
- 现代物流业的发展趋势与专项业务规划报告
- 新闻情感分析的算法原理与技术探讨
- 外汇经纪人业务培训计划
- 纳米银抗菌涂层应用-洞察与解读
- DL-T997-2020燃煤电厂石灰石-石膏湿法脱硫废水水质控制指标
- 宁夏吴忠市同心县第五中学2022-2023学年七年级上学期期末数学试卷+
- 工厂保安服务投标方案
- AOI直通率持续提升报告
- 传染病学课件:伤寒
- 土木工程专业实习指导书
- 对外汉语教学 课堂用语
- 非煤矿山安全操作规程
- 硅PU篮球场介绍施工方案
- 高考地理综合题答题思路
评论
0/150
提交评论