整理嵌入式系统复习终极版_第1页
整理嵌入式系统复习终极版_第2页
整理嵌入式系统复习终极版_第3页
整理嵌入式系统复习终极版_第4页
整理嵌入式系统复习终极版_第5页
已阅读5页,还剩20页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、精品文档嵌入式系统复习重点一、题型填空题2x 10单选题2X 5名词解释2X 5简答题5X 6设计题15X 2、考点第一章嵌入式系统概述1、嵌入式系统从技术角度的定义及其特点(见PPT第一章)定义:以应用为中心、以计算机技术为基础、软件硬件可裁剪、适应应用系统对功能、 可靠性、成本、体积、功耗严格要求的专用计算机系统。特点:嵌入性、内含计算机、专用性。2、嵌入式系统的未来P3产品市场窗口现在预计翻番的周期狂热到69个月;全球重新定义市场的机会和膨胀的应用空间;互联现在是一个需求而不是辅助性的,包括用有线和刚刚显露头角的无线技术; 基于电子的产品更复杂化;互联嵌入式系统产生新的依赖网络基础设施的

2、应用;微处理器的处理能力按莫尔定律(Moore s L aw )预计的速度在增加。该定律认为集成电路和晶体管个数每18个月翻一番。3、 什么是嵌入式处理器及嵌入式系统的分类 P5嵌入式处理器:为完成特殊应用而设计的特殊目的的处理器。嵌入式系统可以分为以下几大类:嵌入式微处理器EMPU嵌入式微控制器MCU嵌入式DS強理器;嵌入式片上系统SOC4、嵌入式操作系统相关的基本概念 P7-10 (可能考名词解释)前后台系统:对基于芯片的开发来说,应用程序一般是一个无限的循环,可称为前后台系 统或超循环系统。循环中调用相应的函数完成相应的操作,这部分可以看成后台行为,后台也可以叫做任务级,这种系统在处理的

3、及时性上比实际可以做到的要差。中断服务程序处理异步事件,这部分可以看成前台行为,前台也叫中断级,时间相关性很强的关键操作一定是 靠中断服务程序来保证的。操作系统:操作系统是计算机中最基本的程序。操作系统负责计算机系统中全部软硬资源的分配与回收、控制与协调等并发的活动;操作系统提供用户接口, 使用户获得良好的工作环 境;操作系统为用户扩展新的系统功能提供软件平台。实时操作系统:实时操作系统是一段在嵌入式系统启动后首先执行的背景程序,用户的应用程序是运行于 RTOS之上的各个任务,RTOS根据各个任务的要求,进行资源 (包括存储器、 外设等)管理、消息管理、任务调度、异常处理等工作。在RTOS支持

4、的系统中,每个任务均有一个优先级,RTOS根据各个任务的优先级,动态地切换各个任务,保证对实时性的要 求。代码的临界区:也称为临界区,指处理不可分割的代码,运行这些代码不允许被打断。一旦 这部分代码开始执行, 则不允许任何中断打断 (这不是绝对的,如果中断不调用任何包含临 界区的代码,也不访问临界区的使用的共享资源,这个中断可以执行)。为确保临界区代码的执行,在进入临界区之前要关中断,而临界区代码执行完成以后要立即开中断。资源:程序运行时可使用的软、硬件环境统称为资源。资源可以是输入、输出设备,例如打 印机、键盘、显示器,也可以是一个变量、一个结构或一个数组等。共享资源:可以被一个以上任务使用

5、的资源叫做共享资源。为了防止数据被破坏, 每个任务在与共享资源打交道时,必须独占该资源,这叫做互斥。任务:一个任务也叫做一个线程, 是一个简单的程序, 该程序可以认为 CPU完全属于该程序 本身。实时应用程序的设计过程, 包括如何把问题分割成多个任务, 每个任务都是整个应用 的某一部分,被赋予一定的优先级,有它自己的一套 CPU和寄存器和自己的栈空间。任务切换:当多任务内核决定运行另外的任务时,保存正在运行任务的当前状态,即CPU寄存器中的全部内容。 这些内容保存在当前状态保存区,也就是任务自己的栈区之中。 入栈工作完成以后,就把下一个将要运行的任务的当前状态从任务的栈中重新装入CPU寄存器,

6、并开始下一个任务的运行,这个过程就叫任务的切换。(这个过程增加了应用程序的额外负担,CPU的寄存器越多,额外负担就越重。做任务切换所需要的时间取决于CPU有多少寄存器要入栈,实时内核的性能不应该以每秒钟能做多少次任务切换来评价。)内核:多任务系统中,内核负责管理各个任务,或者说为每个任务分配CPU时间,并且负责任务之间的通信。内核提供的基本服务是任务切换。使用实时内核可以大大简化应用系统的设计,是因为实时内核允许将应用分成若干个任务,由实时内核来管理它们。内核提供必不可少的系统服务,如信号量、消息队列、延时等。调度:调度是内核的主要职责之一。 调度就是决定该轮到哪个任务运行了。 多数实时内核是

7、 基于优先级调度法的。 每个任务根据其重要程序的不同被赋予一定的优先级。 基于优先级的 调度法指CPU总是让处在就绪态的优先级最高的任务先运行。 然而究竟何时让高优先级任务掌握CPU的使用权,有两种不同的情况, 这要看用的是什么类型的内核,是非占先式的还是占先式的内核。非先占式内核:非占先式内核要求每个任务自我放弃CPU的所有权。非占先式调度法也称作合作型多任务,各个任务彼此合作共享一个CPU异步事件还是由中断服务来处理。中断服务可以使一个高优先级的任务由挂起状态变为就绪状态。但中断服务以后控制权还是回到原来被中断了的那个任务,直到该任务主动放弃 CPU的使用权时,那个高优先级的任务才能 获得

8、CPU的使用权。先占式内核:当系统响应时间很重要时,要使用占先式内核。 因此绝大多数商业上销售的实时内核都是占先式内核。最高优先级的任务一旦就绪,总能得到CPU的控制权。当一个运行着的任务使一个比它优先级高的任务进入了就绪状态,当前任务的CPU使用权就被剥夺了,或者说被挂起了,那个高优先级的任务立刻得到了CPU的控制权。如果是中断服务子程序使一个高优先级的任务进入就绪态,中断完成时,中断了的任务被挂起, 优先级高的那个任务开始运行。任务优先级:任务的优先级是表示任务被调度的优先程度。每个任务都具有优先级。任务越重要,赋予的优先级应越高,越容易被调度而进入运行态。中断:中断是一种硬件机制,用于通

9、知 CPUW个异步事件发生了。中断一旦被识别,CP保存部分(或全部)上下文即部分或全部寄存器的值,跳转到专门的子程序,称为中断服务子程序(ISR)。中断服务子程序做事件处理,处理完成后,程序回到:1. 在前后台系统中,程序回到后台程序;2. 对非占先式内核而言,程序回到被中断了的任务;3. 对占先式内核而言,让进入就绪态的优先级最高的任务开始运行。时钟节拍:时钟节拍是特定的周期性中断。这个中断可以看作是系统心脏的脉动。中断之间的时间间隔取决于不同应用,一般在10ms到200ms之间。时钟的节拍式中断使得内核可以将任务延时若干个整数时钟节拍,以及当任务等待事件发生时,提供等待超时的依据。 时钟节

10、拍率越快,系统的额外开销就越大。5、嵌入式实时操作系统的优缺点及常见的嵌入式实时操作系统P11-14优点:在嵌入式实时操作系统环境下开发实时应用程序使程序的设计和扩展变得容易,不需要大的改动就可以增加新的功能。通过将应用程序分割成若干独立的任务模块, 使应用程序 的设计过程大为简化;而且对实时性要求苛刻的事件都得到了快速、可靠的处理。通过有效的系统服务,嵌入式实时操作系统使得系统资源得到更好的利用。缺点:使用嵌入式实时操作系统还需要额外的ROM/RAI开销,25%的 CPU额外负荷,以及内核的费用。常见的嵌入式实时操作系统:uCIinux、Wndows CE、VxWorks、卩C/OS-II第

11、二章 ARM7体系结构精品文档1、ARM的体系结构及常用的ARM处理器系列P16ARI内核采用RISC体系结构。RISC是精简指令集计算机的缩写,其目标是设计出在高时钟频率下单周期执行,简单而有效的指令集。ARM内核采用RISC体系结构,因此具有RISC的结构特点如具有大量的通用存 储器;独特的装载/保存(load-store )结构;简单的寻址模式;统一和固定长度的指令格式。常用的ARM处理器系列:ARM孫列、ARM9系列、ARM10系列、ARM11系列、In tel的XScale 系列和MPCore系列;还有针对低端 8位MCI市场推出的Cortex-M3系列,其具有32位CPU 性能、8

12、位CPU的价格。2、ARM7TDM的完整意思是什么?ARM7TDM是基于ARM体系结构V4版本的低端ARM核。其弥补了 ARM&艮难在低于5V电压 下稳定工作的不足,还增加了后缀所对应的功能:ARM7TDMISARM7TDM1 的吁蛭合 fsynthesizableJI版本C软核丿,对应用工程师乘说其编驛楫型jARM7TDMl 敷;炙特 EmbededlCE 异IQ FI 在 有 只7、ARM犬态下的内部寄存器P28-36 (重点)(熟记各数字)在ARMlt理器内部共有37个用户可访问的寄存器,分别为31个通用32位寄存器和6个状态 寄存器。ARM处理器共有7种不同的处理器模式, 每种模式都有

13、一组相应的寄存器组, 最多可 以18个活动的寄存器。如下表所示:ARM状态各模式下可以访问的寄存器类別Ci申的名輪用户中止耒圭文中斷快中科RO(.a1)R0qR10_fiqR6(w3R7(v4R13(SPJR13R13_svcR13_abtR13 und L|RtVrqR13_fiqR44(LR|R14iR14 svcRMJrqRHJkjR15肋(FP3呵 R12(IP)CP5RR 15( PCI寄存卷(:映SPSRSPSR riaSPSR 3CSPSR.abtSPSR undSPSR寄存器ROR7为未分组的通用寄存器,它们在任何处理器模式都对应于相同的32位物理寄存器。寄存器R8R12有两个

14、分组的物理寄存器。一个用于除FIQ模式之外的所有寄存器模式,另一 个用于FIQ模式。在发生FIQ中断后,处理器不必为保护寄存器而浪费时间,从而加速了FIQ的处理速度。寄存器R13 R14分别有6个分组的物理寄存器。1个用于用户和系统模式,其余5个分别用于5种异常模式。寄存器R13通常作为堆栈指针(SF),用于保存待使用的寄存器的内容。寄存器R14称为链接寄存器(LR),在结构上有两个特殊功能:当使用BL旨令调用子程序时,返回地址将自动存入 R14中 当发生异常时,将R14对应的异常模式版本设置为异常返回 地址(有些异常有一个小的固定偏移量)。寄存器R15称为程序计数器(PC),它指向正在“取指

15、”的指令。寄存器CPS为当前程序状态寄存器,在异常模式中,另外一个寄存器“程序状态保存寄 存器(SPSR”可以被访问。每种异常都有自己的 SPSR在进入异常时它保存 CPSR勺当前值, 异常退出时可通过它恢复 CPSRThumb犬态寄存器集是ARM状态集的子集,程序员可以直接访问的寄存器为:8个通用寄存器R0R7,在汇编语言中寄存器 R0R7为通用寄存器,对于任何处理器模 式,它们中的每一个都对应于相同的32为物理寄存器。程序计数器(PC);堆栈指针(SP),堆栈指针SP对应ARM状态的寄存器R13。每个异常模式都有其自身的 SP 分组版本,SF通常指向各异常模式所专用的堆栈。 注意:在发生异

16、常时,处理器自动进入ARM 状态。链接寄存器(LR),链接寄存器LRX寸应ARM状态寄存器R14。注意:在发生异常时,处理 器自动进入ARM状态。当前程序状态寄存器(CPSR。在两种状态中,寄存器R0-R7是低端寄存器,R8-R12是高端寄存器,在Thumb犬态中,高 端寄存器的访问是受到限制的,只有MOV CM和ADD旨令可以对其访问,可以用于数据的快速暂存。8、当前程序状态寄存器的用法 P36-39ARM内核包含1个CPSf和5个仅供异常处理程序使用的 SPSR CPS反映当前处理器的状态,其 包含:4个条件代码标志(负标志N、零标志Z、进位标志C和溢出标志V );2个中断禁止位(IRQ禁

17、止与FIQ禁止);5个对当前处理器模式进行编码的位(M4:0);1个用于指示当前执行指令的位(ARMf令还是Thumb旨令)。其格式如下:各标志位的含义如下:负标志N:运算结果的第31位值,记录标志设置操作的结果; 零标志Z:如果标志设置的操作为 0,则置位;进位标志C:记录无符号加法溢出,减法无借位,循环移位; 溢出标志V:记录标志设置操作的有符号溢出。中断禁止控制位I和F:当控制位I置位时,IRQ中断被禁止;当控制位F置位时,FIQ中断被禁止。处理器状态位T:当控制位T置位时,处理器正在Thumb犬态下运行;当控制位T清零时,处理器正在ARM状态下运行。警告:绝对不要强制改变CPS寄存器中

18、的控制位T。如果这样做,处理器将进入一个无 法预测的状态。处理器模式位M0- M4M4:0可见的Eumbtt态寄存器可见的AR Ml状态寄存器1000G用户R0-R7, SPr LR. PC, CPSRROR14rPC, CPSR10001快遼申断R0-R7, SP fiq.LR fiq. PC,CPSR, SPSR fkaROR7. R8Jiqft14PC.CPSR, SPSRJiq10010中斷ROR7, SP_irq; LRjrq. PChCPSR, SPSRJtqROR12, Rl3_irqr R14Jrq; FC,CPSR, SPSR irq10011管理ROR7; SP_5i/c.

19、 LR_SvC. PC:CPSR, SPSR svcR0R12, R13_S ;C; R14_svch PC,CPSR. SPSR svc10111中止,R(WR7, SP_abt. LR.abt, PC,CPSR, SPSR.abtRCWR12, R13_abt, R14_abt FC,CPSR, SPSR_abt11Q11未定义R(WR7, SP_und LR_und. PCrCPSR, SPSR undRCWR12, R13,und. R14_und.PChCPSR, SPSR und11111L _R(WR7, SP, LR. PCCPSRR(WR14rPC,CPSR注意:不是所有模式

20、位的组合都定义了有效的处理器模式,如果将非法值写入M4:0中,处理器将进入一个无法恢复的模式。保留位:CPSF中的保留位被保留将来使用。 当改变CPS标志和控制位时, 请确认没有改变这 些保留位。另外,请确保您的程序不依赖于包含特定值的保留位,因为将来的处理器可能会将这些位设置为1或者0。9、ARM体系的异常、中断及其向量表 P39 (异常中断的进入与退出是重中之重)当多个异常同时发生时,一个固定的优先级决定系统处理它们的顺序:优先级由高到低优先级异常1复创数据中止3aFIQLk4IRQ5预取指中止6未定义指令中止61软件中断异常当一个异常导致模式切换时,内核自动的做如下处理:(即异常的进入)

21、将异常处理程序的返回地址(加固定的偏移量)保存到相应异常模式下的LR;将CPSR勺当前值保存到相应异常模式下的 SPSR设置CPSI为相应的异常模式;设置PC为相应异常处理程序的中断入口向量地址,跳转到相应的异常中断处理程序执 行;当异常处理程序结束时,异常处理程序必须:(即异常的退出)返回到发生异常中断的指令的下一条指令处执行,即就是说将LR中的值减去偏移量后移入PC将SPS啲值复制回CPSR清零在入口处置位的中断禁止标志。10、ARM体系的存储系统P48 (了解“大端”与“小端”)存储器系统有两种映射机制:小端存储器系统:在小端格式中,数据的高字节存放在高地址中。 大端存储器系统:在大端格

22、式中,数据的高字节存放在低地址中。存储器格式O小扌為存锚 a a犠扎下.Z0x120x12345678 a+20x34在A地址幵始A+10x56的一个字空0x78间的存赭; dJ存储器存储A+3 U丸下”A+2 0x12345678A+1在Z址开始 的一个字空间A妁存储;第三章 ARM7TDMI(-S)指令系统1、ARM处理器的8种寻址方式P52(可能考名词解释)寄存器寻址:操作数的值在寄存器中,指令中的地址码字段指出的是寄存器编号,指令执 行时直接取出寄存器值来操作。寄存器寻址指令举例如下:MOV R1,R2;SUB R0,R1,R2将R2的值存入R1; 将R1的值减去R2的值,结果保存到

23、R0立即寻址:立即寻址指令中的操作码字段后面的地址码部分即是操作数本身,也就是说,数据就包含在指令当中,取出指令也就取出了可以立即使用的操作数(这样的数称为立即数)。立即寻址指令举例如下:SUBS R0,R0,#1;R0 减1,结果放入 R0,并且影响标志位MOV R0,#0xFF000 ;将立即数0xFF000装入R0寄存器 寄存器移位寻址:寄存器移位寻址是ARM旨令集特有的寻址方式。当第2个操作数是寄存器移 位方式时,第2个寄存器操作数在与第1个操作数结合之前, 选择进行移位操作。 寄存器移位 寻址指令举例如下:MOV R0,R2,LSL #3;R2的值左移3位,结果放入 R0;即是R0=

24、R2X 8ANDS R1,R1,R2,LSL R3 ;R2的值左移R3位,然后和R1相;“与”操作,结果放入 R1寄存器间接寻址:寄存器间接寻址指令中的地址码给出的是一个通用寄存器的编号,所需的操作数保存在寄存器指定地址的存储单元中,即寄存器为操作数的地址指针。 寄存器间接寻址指令举例如下:LDR R1,R2;将R2旨向的存储单元的数据读出;保存在R1中SWP R1,R1,R2;将寄存器R1的值和R2旨定的存储;单元的内容交换基址寻址:基址寻址就是将基址寄存器的内容与指令中给出的偏移量相加,形成操作数的有效地址。基址寻址用于访问基址附近的存储单元,常用于查表、数组操作、 功能部件寄存器访问等。

25、基址寻址指令举例如下:LDR R2,R3,#0x0C;读取R3+0x0C地址上的存储单元;的内容,放入 R2STR R1,R0,#-4!;先R0=R0-4,然后把R1的值寄存;到保存到R0指定的存储单元多寄存器寻址:多寄存器寻址一次可传送几个寄存器值,允许一条指令传送16个寄存器的任何子集或所有寄存器。多寄存器寻址指令举例如下:LDMIA R1!,R2-R7,R12;将R1指向的单元中的数据读出到;R2R7、R12中(R1自动加1)STMIA R0!,R2-R7,R12;将寄存器R2R7、R12的值保;存到R0指向的存储;单元中;(R0自动加1)堆栈寻址:堆栈指针指向最后压入的堆栈的有效数据项

26、,称为满堆栈;堆栈指针指向下一个 待压入数据的空位置,称为空堆栈。0x12345678 .毎戏栈底所以可以组合出四种类型的堆栈方式: 满递增:堆栈向上增长,等;空递增:堆栈向上增长,满递减:堆栈向下增长,等;空递减:堆栈向下增长,堆栈指针指向内含有效数据项的最高地址。指令如堆栈指针指向堆栈上的第一个空位置。指令如 堆栈指针指向内含有效数据项的最低地址。指令如堆栈指针向堆栈下的第一个空位置。指令如LDMFA STMFALDMEA STME等;LDMFD STMFDLDMED STME等。相对寻址:相对寻址是基址寻址的一种变通。由程序计数器PC提供基准地址,指令中的地址码字段作为偏移量,两者相加后

27、得到的地址即为操作数的有效地址。相对寻址指令举例如下:BL SUBR1;调用至U SUBR子程序BEQ LOOP;条件跳转到L00标号处LOOP MOV R6,#1SUBR12、ARMlt令集中各典型指令的用途P58 小例子:(可能考选择或填空)少虑考与练习以下8佞图立即数是丢合法?0x01030000 Xr0x12800000可以由0x4A循坏右移10住捋到乙请列举2个8侄图立即数?0X4000003B 0XED2雪 H;右移2住丿OxOOIGCOOO (0X5B循环右 秒18伍丿加载指令:LDR/STR加载/存储指令LDM/ST多寄存器加载/存储指令SW寄存器和存储器交换指令数据处理指令:

28、见书上P70-71乘法指令:* ARKRk令集乘法指令助记符说明愎作条ft円位置MUL Rd Rm.Rs32位乘法扌比Rd-Rn*Rs(RdRm)1WL cond SMLA Rd Rm Rs Rn3维勳叶缺EdEldHi:Rm:Rs沮位无符号乗法楮令(RdLo, RdHi) -Rm*RstHULL cond SUyfLAL RdLo;RdHi:Rm:Rs胆位无符号乘加指令限dLgRdHijWRiU尺s+低 乩 o, RdHi)SIL AL cand SjSMITLL RdLodHi.Rm.RiS4位宥决乗穆措令(RdLo, RdHi) -Rm*KsSKILL cond ISSMLAL RdLo

29、;RdHi;Rm:Rs讽位有符号乘加指令(KdLoRdHijeRmtRs+tRJLRdHi)SMLALtcond S3、ARM分支指令和杂项指令P72-77分支指令:B指令为简单的跳转指令,不附带其它功能。跳转范围限制在当前指令的土32M字节地址内(ARM指令为字对齐,最低2位地址固定为0)。BL指令除了具有跳转功能,还能在跳转之前将下一条指令的地址拷贝到R14(即LR)链接寄存器中,它适用于子程序调用。跳转范围限制在当前指令的土32M字节地址内。BX指令除了具有跳转功能,还能在跳转的同时切换处理器状态。其跳转范围不受限制。杂项指令:在ARM旨令集中杂项指令共有3条,它们非常重要,特别是与操作

30、系统的使用息息相关:1. 软件中断产生指令:SWI,主要用于用户程序调用操作系统的系统服务。2. 程序状态寄存器读指令:MRS对状态寄存器CPSI和SPS进行读操作。3. 程序状态寄存器写指令:MSR对状态寄存器CPSI和SPS进行写操作。4、ARM伪指令P78ARMfe指令有四条:1. 小范围地址读取指令: ADR,将基于PC相对偏移的地址值或基于寄存器相对偏移的地 址值读取到寄存器中。2. 中等范围地址读取指令:ADRL,将基于PCW对偏移的地址值或基于寄存器相对偏移的 地址值读取到寄存器中,比 ADR伪指令可以读取更大范围的地址。3. 大等范围地址读取指令:LDR,用于加载32位的立即数

31、或一个地址值到指定寄存器。4. 空操作指令:NCP,在汇编时将会被代替成 ARM中的空操作,比如可能是“ MOV R0,R0” 指令等。NOP可用于延时操作。5、ARMt令集和Thumb指令集的异同 同:Thumb旨令的格式与使用方式与 ARM旨令集类似,它也具有以下种类的指令:存储器访问指令数据处理指令分支指令杂项指令伪指令异:Thuml指令集较ARM!令集有如下限制:只有B旨令可以条件执行,其它指令都不能条件执行;分支指令的跳转范围有更多限制;数据处理指令的操作结果必须放入其中一个;单寄存器访问指令,只能操作 R0R7;LDh和STM旨令可以对R0R7的任何子集进行操作;第四章 LPC20

32、00系列ARM硬件结构1、了解硬件结构P90芯片内部结构LPC2000S列極施制段包舍 4丸却分;O丈箱仿真ARM7TDMl-SCPU0匀片内存緒轟也制駁接口的ARIVU焉部总线S 中蓟挫制黑凄口的AMBA壽住能卷慈(AHB)连接斤内?N艮功能的VLSI牛观息筑(VPB)2、存储器重映射的概念及其作用 P106给物理存储器分配逻辑地址的过程称为存储器映射。将已经过映射的存储器再次映射的过程称为存储器重映射,它使同一物理存储单元出现多个不同的逻辑地址(增加了代码的可移植性和可通用性)。这些存储单元主要包括引导块“Boot Block ”和用于保存异常向量表的少量存储单元。引导块(Boot Blo

33、ck )是芯片设计厂家在 LPC2000系列ARM内部固化的一段代码,用户无 法修改或删除。这段代码在芯片复位后被首先运行,其功能主要是:判断运行哪个存储器上的程序;检查用户代码是否有效;判断芯片是否被加密;芯片的在应用编程(IAP)以及在系统编程功能(ISP)3、时钟部件一一锁相环PLL (可能考大题)P126CPU内核芯片外设LPC2000糸列芯片内部均具有PLL电珞,振荡彖护 生的对钟Fox通过PLL升频,可以获谡更當的糸统对钟 (Fcclk)oPLL频率计算:可以得出以下几个等式:Fosc = Fcco/(2 x px M) a Fcco = Fosc x (2 x px M)Fccl

34、k = Fcco/(2 x p) a Fcco = Fcclk x (2 x p)最后得出PLL的输出频率(当PLL激活并连接时)为:Fcclk = M x Fosc 或 Fcclk = Fcco / (2x P)CC输出频率为:Fcco = Fcclk x 2x P 或 Fcco = Foscx MX 2x PPLL设置举例:系统要求 Fosc= 10MHz Fcclk = 60MHz根据这些要求:确定 Fcclk = 60MHz选择 Fosc = 10MHz计算 M= Fcclk/Fosc = 60MHz/10MHz= 6。M-1 = 5,所以写入 PLLCFG4:0 = 00101;计算

35、 P=Fcco/( Fcclk*2),其中 Fcco为 156320 MHz 当 Fcco= 156MH时,P=156MHz/(2*60MHz) =1.3 当 Fcco = 320MH时,P=2.67P取整数2,所以写入PLLCFG6:5=01。 PLL设置举例uintB i; ulnt32cilldati = (Frco / Fcdk); swltch(i)PLL配置过程:case 2:break;case 4:Pdat=(Fcdk Fosc)-DI break:C3iS6 8四妞叭3針妙f ISV誹break;case 1 &:clldat= H.Fcck Fcsc: - 1 11.35b

36、reak;default:return- ZALSE): break:PLLCON = 1:PLLGFG =plldat:PLLFEEDOxaa.PLLFEED = 0x55:whlle(PLLSTAT&(1 10= 0);PLLCON = 3:PLLFEED = OxaaPLLFEED = (h(55:return 汀尺UE:4、外部存储器控制器EMC及引脚连接模块P152-1785、& GPIO P1797、向量中断控制器P1888、定时器0和定时器1的作用P2229、10、I 2C接口的操作模式 P27111、12、UART(和UART1的用法和区别P276UART0只提供TXD和RXD

37、信信号引脚,而 UART1增加了一个调制解调器(Moder)接口,其余 二者都是完全相同的:16字节接收FIFO和16字节发送FIFO;寄存器位置符合16C550工业标准;接收FIFO触发点可设置为1、4、8或 14字节;内置波特率发生器;UART含有标准调制解调器接口信号13、A/D转换器、脉宽调制器PWM和实时时钟RTC第六章 1C/OS-II程序设计基础1、2、任务的分类、划分和优先级安排 P395按执行方式可将任务分类以下三类:任务的分类任备丘石 pCO 5-11*4- 4-H-4-41 单次执行类任务任务的分类2.周期楊行类任务E时时间到任孫先级養冋void MyTaskfvoid

38、*pdata) 进行准各工作的代码;while (1)任夯令祎代码;屢习奚汙王E?,亍;(舷执行灵任务(创心、厂、”攔除Jvoid MyTaskvoid +pdata)一4定叉和初始化变量及谀件设备琲行准善工作的弋码斤 三务实体代码;丿完成该任务的具体功能 J调弔圧务删除函数:*将自己删除,操作系统将不再管理它丨任务的分类3事件触发执行类任务运行状态就绪状态任务优先级足够高void MyTask(void +pdata) 进行准备工作的代码;while(1)丿等特信号量或消息调用莪豪事件的函数:*丿-完成貝体功能住务实体代码;*任务的划分:目标1.首要目标是满足“实时性”指标:即使在最坏的情况

39、下,系统中所有对实时性有要求的 功能都能够正常实现;2.任务数目合理:对于同一个应用系统, 合理的合并一些任务, 使任务数目适当少一些还是比较有利;3.简化软件系统:一个任务要实现其功能,除了需要操作系统的调度功能支持外,还需要操作系统的其它服务功能支持,合理划分任务,可以减少对操作系统的服务要求,简化软件系统;4降低资源需求:合理划分任务,减少或简化任务之间的冋步和通信需求,就可以减少相应数据结构的内存规模,从而降低对系统资源的需求。任务的优先级的安排原则中断关联性:与中断服务程序(ISR)有关联的任务应该安排尽可能高的优先级,以便及时 处理异步事件,提高系统的实时性。如果优先级安排得比较低

40、,CP有可能被优先级比较高的任务长期占用,以致于在第二次中断发生时连第一次中断还没有处理,产生信号丢失现象;紧迫性:因为紧迫任务对响应时间有严格要求,在所有紧迫任务中,按响应时间要求排序, 越紧迫的任务安排的优先级越高。紧迫任务通常与ISR关联;关键性:任务越关键安排的优先级越高,以保障其执行机会;频繁性:对于周期性任务,执行越频繁,则周期越短,允许耽误的时间也越短,故应该安排的优先级也越高,以保障及时得到执行;快捷性:在前面各项条件相近时,越快捷(耗时短)的任务安排的优先级越高,以使其它就 绪任务的延时缩短;传递性:信息传递的上游任务的优先级高于下游任务的优先级。如信号采集任务的优先级高于数据处理任务的优先级。3、时间管理P406 (时间函数的使用)时间管理服务函数是以系统节拍为处理单位的,实际的时间与希望的时间是有误差的

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论