您好,欢迎访问三七文档
第1章复习提纲1、嵌入式系统的定义2、嵌入式系统的分类,简述你所学过的嵌入式系统3、几种常见的嵌入式操作系统WindowsCE、uC/OSII、uCLinux、VxWorks、PalmOS等4、嵌入式系统的应用领域信息家电、移动计算设备、汽车电子、工业控制、机器人、军事领域等。、第2章嵌入式系统体系结构2、目前应用比较广泛ARM处理器系列是:ARM7、ARM9、ARM9E、ARM10,各系列特点……3、ARM920TDMI命名含义4、ARM指令集和Thumb指令集特点5、ARM920T微处理器的指令流水采用了典型的RISC五级流水线结构,将指令执行过程分为取指、译码、执行、访存和写回5个步骤。6、ARM处理器支持下列数据类型:字节8位;半字16位(占用两个字节)、字32位(占用4个字节)。7、ARM处理器的7种工作模式8、ARM9的存储组织结构:32位长的地址,它把存储器看成是0地址开始的字节的线性组合,即一个地址对应于一个存储字节,其范围是232个字节(8位二进制数)。9、ARM9处理器的内部总共有37个32位的寄存器,其中31个用作通用寄存器,6个用作状态寄存器,每个状态寄存器只使用了其中的12位。这37个寄存器根据处理器的状态及其工作模式的不同而被安排成不同的组。10、几个重要的寄存器:R13—堆栈指针、R14—链接寄存器R15—程序计数器、CPSR-状态寄存器SPSR—备份的状态寄存器11、CPSR12、什么是异常13、什么是异常向量表异常出现后处理器强制从异常类型所对应的固定存储器地址开始执行程序,这些存储器地址称为异常向量表。异常类型处理器模式异常向量地址优先级复位管理0×000000001(最高)未定义指令未定义0×000000046软件中断管理0×000000086预取中止中止0×0000000C5数据中止中止0×000000102中断IRQ中断0×000000184快中断FIQ快中断0×0000001C314、进入异常时,ARM9内核完成以下动作:(1)将下一条指令的地址保存在相应的LR寄存器中。(2)将CPSR复制到相应的SPSR中。(3)迫使CPSR模式位M[4:0]的值设置成对应的异常模式值(4)迫使PC从相关的异常向量取下一条指令。(5)用户可以设置中断禁止位来阻止或打开异常嵌套。如果在异常发生时处理器是在Thumb状态下,那么当用中断向量地址加载PC时,自动切换进入ARM状态。在完成异常处理后,ARM9完成以下动作:(1)将LR寄存器的值减去相应的偏移量(偏移量根据异常的不同而不同),送到PC中。(2)将SPSR复制回CPSR中。(3)清除中断禁止位标志。第3章ARM9指令系统1、ARM9寻址方式寄存器寻址、立即寻址、寄存器移位寻址、寄存器间接寻址、多寄存器寻址、变址寻址、堆栈寻址、块拷贝寻址、相对寻址。2、四种典型堆栈及其含义满递增、满递减、空递增、空递减3、ARM程序格式:注释、标号、代码段等NZCVDNM(((RAZ)(RAZ)(RAZ)(RAZ)(RAZ)IFTM4M3M2M1M04、8位位图数据,即一8位的常数通过循环右移偶数位得到5、寄存器移位方式操作码说明操作码说明ASR#n算术右移n位ROR#n循环右移n位LSL#n逻辑左移n位RRX带扩展的循环右移1位LSR#n逻辑右移n位TypeRsType为移位的一种类型,Rs为偏移量寄存器,低8位有效。操作码条件助记符标志含义0000EQZ=1相等0001NEZ=0不相等0010CS/HSC=1无符号数大于或等于0011CC/LOC=0无符号数小于0100MIN=1负数0101PLN=0正数或零0110VSV=1溢出0111VCV=0没有溢出1000HIC=1,Z=0无符号数大于1001LSC=0,Z=1无符号数小于或等于1010GEN=V有符号数大于或等于1011LTN!=V有符号数小于1100GTZ=0,N=V有符号数大于1101LEZ=1,N!=V有符号数小于或等于1110AL任何无条件执行(指令默认条件)1111NV任何从不执行(不要使用)LSL移位操作:0LSR移位操作:0ASR移位操作:ROR移位操作:RRX移位操作:C7、存储器访问指令LDR、STR等•LDR和STR指令应用示例:1.加载/存储字和无符号字节指令LDRR2,[R5];将R5指向地址的字数据存入R2STRR1,[R0,#0x04];将R1的数据存储到R0+0x04地址LDRBR3,[R2],#1;将R2指向地址的字节数据存入R3,R2=R2+1STRBR6,[R7];将R7指向地址的字节数据存入R62.加载/存储半字和有符号字节指令LDRSBR1,[R0,R3];将R0+R3地址上的字节数据存入R1,;高24位用符号扩展LDRHR6,[R2],#2;将R2指向地址的半字数据存入R6,高16位用0扩展;读出后,R2=R2+2STRHR1,[R0,#2]!;将R1的半字数据保存到R0+2地址,;只修改低2字节数据,R0=R0+28、算术与逻辑运算指令示例:64位加法,结果存于R1、R0中ADDSR0,R0,R2;R0等于低32位相加,并影响标志位ADCR1,R1,R3;R1等于高32位相加,并加上低位进位示例:64位减法,结果存于R1、R0中SUBSR0,R0,R2;低32位相减,并影响标志位SBCR1,R1,R3;高32位相减,并减去低位借位9、分支指令分支指令B;带链接的分支指令BL;带状态切换的分支指令BX。示例:ADRLR0,ThumbFun+1;将Thumb程序的入口地址加1存入R0BXR0;跳转到R0指定的地址,;并根据R0的最低位来切换处理器状态10、什么是系统引导程序?其作用是什么?第4章S3C2410存储结构1、S3C2410芯片封装与引脚定义。2、存储器系统的组织结构按作用可以划分为4级:寄存器、cache、主存储器和辅助存储器。3、存储器根据其存取方式分成两类:随机存储器(RAM)和只读存储器(ROM)。RAM是易失性存储器,ROM是非易失性存储器。4、随机存储器又分为两大类:静态随机存储器(SRAM)动态随机存储器(DRAM)5、CPU与SRAM接口方式与DRAM接口方式6、什么是存储管理单元?其工作原理是什么?7、虚拟地址、内存映射的概念8、S3C2410芯片地址空间分配地址空间总共为4GB,其中,1GB地址空间用于支持外部存储器的连接,另外的空间带进位加法ADC0101带进位减法指令SBC0110带进位逆向减法指令RSC0111位测试指令TST1000相等测试指令TEQ1001比较指令CMP1010负数比较指令CMN1011逻辑或操作指令ORR1100数据传送MOV1101位清除指令BIC1110数据非传送MVN1111加法运算指令ADD0100逆向减法指令RSB0011减法运算指令SUB0010逻辑异或操作指令EOR0001逻辑与操作指令AND0000说明指令助记符操作码opcode操作码功能表有一小部分用于I/O端口或部件的寻址,其他的地址空间没有用到。芯片外部可寻址的存储空间是1GB,被分成8个存储块(bank),每块128MB。第5章中断机制1、中断的概念中断方式是I/O端口或部件在完成了一个I/O操作后,产生一个信号给微处理器,这个信号叫做“中断请求”,微处理器响应这个请求信号,停止其当前的程序操作,而转向对该I/O端口或部件进行新的读/写操作。2、中断处理步骤初始化微处理器中用于中断方式的寄存器,开放中断;I/O端口或部件完成数据操作后并产生中断请求信号;当中断请求信号有效时,微处理器可能处在不可中断状态,等到微处理器允许中断时,微处理器就保存当前状态,停止它现行的操作并开始进行中断源的识别;在识别出优先级最高的中断源后,微处理器转到对应的中断服务例程入口,并应答中断,I/O端口或部件收到应答信号后,撤消其中断请求;微处理器读入或写出数据,当中断服务例程结束后,回到原来的被中断程序处继续执行。3、中断优先级仲裁默认情况下的中断优先级如何修改中断优先级次序4、5个中断寄存器源未决寄存器(SRCPND)、中断模式寄存器(INTMOD)、屏蔽寄存器(INTMSK)、优先级寄存器(PRIORITY)、中断未决寄存器(INTPND)。5、中断未决寄存器和源未决寄存器的清除方法:对应位写16、能读懂中断处理例程,能编写简单的中断程序,例如:通过按键中断控制蜂鸣器响。•编写中断程序,功能如下。•独立按键KEY1电路原理如图所示,设置GPFCON寄存器来选择GPF4引脚为外部中断EINT4功能,此时通过按下KEY1键即可触发外部中断。初始化S3C2410A中断控制器,设置EINT4为IRQ中断,并使能中断允许。初始化完成后,等待外部中断产生。中断服务程序里负责把LED1控制口输出信号取反,清除中断标志后退出中断。第6章DMA机制1、DMA技术:I/O设备与存储器之间不必经过CPU内部寄存器直接进行数据传输的技术。2、DMA原理(上右图)3、DMA请求源Source0Source1Source2Source3Source4CPU地址线读/写信号线数据线DMAC总线请求总线应答存储器I/O设备Ch-0nXDREQ0UART0SDITimerUSBdeviceEP1Ch-1nXDREQ1UART1I2SSDISPI0USBdeviceEP2Ch-2I2SSDOI2SSDISDITimerUSBdeviceEP3Ch-3UART2SDISPI1TimerUSBdeviceEP44、DMA请求模式S/W模式:软件请求模式,通过软件设置屏蔽寄存器来触发。H/W模式:硬件请求模式,通过初始化DMA控制寄存器相应位选择DMA请求源。5、DMA传输模式询问模式和握手模式。6、DMA服务模式单独服务模式和整体服务模式7、DMA寄存器DMA源起始地址寄存器DISRCnDMA源起始控制寄存器DISRCCnDMA目的起始地址寄存器DIDSTnDMA目的起始控制寄存器DIDSTCnDMA控制寄存器DCONnDMA屏蔽寄存器DMASKTRIGDMA状态寄存器DSTATnDMA当前源地址寄存器DCSRCnDMA当前目的地址寄存器DCDSTn第7章定时器部件1、定时器或计数器的逻辑电路本质是一样的,都是通过当前寄存器中的值加1或减1实现。2、定时器与计数器的区别在于:在应用中,定时器是对内部周期性信号进行计数,从而获得一段间隔的时间;而计数器一般是对外部事件产生的信号进行计数。3、能发送系统重起信号的定时器我们就叫它watchdog,中文名称叫做“看门狗”,全称watchdogtimer,从字面上我们可以知道其实它属于一种定时器。4、三个看门狗控制寄存器:WTCON--watchdog控制寄存器WTDAT--看门狗定时器数据寄存器WTCNT――看门狗定时器计数寄存器5、喂狗函数voidfeed_dog(){rWTCNT=0x8000;}例程:voidmain(){init_system();.....enable_watchdog();.....while(1){feed_dog();}}6、实时时钟部件RTC是用于提供年、月、日、时、分、秒、星期等实时时间信息的定时部件。7、RTC部件所使用的寄存器8、S3C2410提供了5个16位的Timer(Timer0~Timer4),其中Timer0~Timer3支持PulseWidthModulation—PWM(脉宽调制)。Timer4是一个内部定时器(internaltimer),没有输出引脚(outputpins)。9、定时器时钟确定TimerinputclockFrequency=PCLK/{prescalervalue+1}/{clockdivider}{prescalervalue}=0~255{clockdivider}=2,4,8,1610、S3C2410定时器的双缓冲机制,及利用双缓冲机制实现脉宽调制的方法。第8章IO端口1、S3C2410芯片共有272引脚,其中117个输入/输出引脚,分属于8个
本文标题:嵌入式复习课整理
链接地址:https://www.777doc.com/doc-2517747 .html