您好,欢迎访问三七文档
当前位置:首页 > 临时分类 > 常熟理工嵌入式期末考试复习大题部分
第1章1、请说明国内普遍认同的嵌入式系统的定义,它的基本要素和特征是什么?..答:以应用为中心、以计算机技术为基础、软件硬件可裁剪、功能、可靠性、成本、体积、功耗严格要求的专用计算机系统。嵌入式系统“嵌入”、“专用性”、“计算机”是其基本要素和特征。2、请介绍四种常见的嵌入式操作系统,并说明它们各自的主要特点?答µC/OS-II是一个可裁减的、源码开放的、结构小巧、可剥夺型的实时多任务内核,是真正的实时操作系统。VxWorks嵌入式实时操作系统,多应用于高端技术及实时要求极高的领域。WinCE操作系统,提供与PC机类似的图形界面和主要的应用程序,它不是一个硬实时操作系统。Linux操作系统以内核为基础的、完全内存保护、多任务多进程的操作系统,源码开放。第2章1、ARM的异常中断按引起异常事件的不同可以分为哪些?各自的向量地址是多少?..答:异常的种类:外部中断请求(IRQ)、快速中断请求(FIQ)、软件中断(SWI)、中止(ABORT)、未定义指令、复位(RESET)。异常向量——异常处理程序入口地址:复位中断,0x00000000未定义指令中断,0x00000004软中断,0x00000008预取中止,0x0000000C数据中止,0x00000010IRQ中断,0x00000018快速中断,0x0000001C3、ARM处理器在两种工作状态之间是如何切换的?..答:ARM处理器在两种工作状态之间切换方法:进入Thumb状态:当操作数寄存器Rm的状态位bit[0]为1时,执行BXRm指令进入Thumb状态。如果处理器在Thumb状态进入异常,则当异常处理(IRQ,FIQ,Undef,Abort和SWI)返回时,自动切换到Thumb状态。进入ARM状态:当操作数寄存器Rm的状态位bit[0]为0时,执行BXRm指令进入ARM状态。如果处理器进行异常处理,在此情况下,把PC放入异常模式链接寄存器LR中,从异常向量地址开始执行也可以进入ARM状态。4、ARM寄存器R13,R14,R15,CPSR,SPSR分别作何用处?答:R13一般用来作为堆栈指针(类似AT89S51的SP)。R14(LR)一般用来作为调子程序的链接寄存器,当执行调子程序指令BL时,将程序计数器R15的内容拷贝进R14保存,从子程序返回时再将R14的内容送回到程序计数器R15。R15一般用来存放下一条将要执行指令的地址(类似AT89S51的PC)。在ARM状态下R15的最低2位为0,在Thumb状态下R15的最低位为0。当前程序状态寄存器CPSR与备份程序状态寄存器SPSR。当前程序状态寄存器CPSR用来保存当前的状态与控制的标志位。备份程序状态寄存器SPSR用来在操作模式切换时保存程序状态寄存器CPSR的当前值。第6章1、编程实现UART1的初始化。.要求字符帧格式为7位数据位、1位停止位、偶校验、波特率取9600、采用正常工作模式、不使用中断、不使用回送、不使用错误标志状态、发送和接收采用FIFO模式,不使用自动流控制,时钟PLCK取40MHz。UART的使用分析参考:知识点:S3C2410A中对UART的使用,在工作前必须对其进行初始化,即对UART的线控制寄存器(ULCON)、控制寄存器(UCON)、FIFO控制寄存器(UFCON)、Modem控制寄存器(UMCON)、波特率因子寄存器(UBRDIV)进行设置。参考点:第6章ppt中“6.1.4UART的初始化”中的说明。初始化内容:#definerULCON1(*(volatileunsigned*)0x1d04000)#definerUCON1(*(volatileunsigned*)0x1d04004)#definerUFCON1(*(volatileunsigned*)0x1d04008)#definerUMCON1(*(volatileunsigned*)0x1d0400c)#definerUBRDIV1(*(volatileunsigned*)0x1d04028)rULCON1=0x2ArUCON1=0x05rUFCON1=0x01rUMCON1=0x0rUBRDIV1=0x103知识点:S3C2410A中对GPIO口的配置寄存器GPACON~GPHCON,端口数据寄存器GPADAT~GPHDAT的使用。参考点:第6章ppt中“GPIO应用举例”中的例子的分析。第7章1、在图中进行必要的连线,管脚电平设置,地址编号填写等,完成S3C44B0最小系统相关设计。题目要求:1)使S3C44B0的BANK0连接一片FlashROM,且总线宽度为8位。2)选择晶振作为时钟输入。存储器以小端模式存储字。3)画出复位电路图,实现上电复位功能和手动按键复位功能。(注:不使用的管脚打×)连接参考图:(1)BANK0,8位数据总线:OM1=0,OM0=0DATA[7..0]连接DATA[7..0]nGCS0连接nCS,Address[19..0](2)晶振连线:OM3=0,OM2=0晶振连接EXTAL0和EXTAL0小端模式ENDIA=0(3)复位电路:上电低电平复位按键复位2、S3C44B0的存储系统中,0xc000000和0xc080000的含义是什么?它们之间的512kbyte空间做什么用?答案参考:0xC000000是SDRAM的起始地址,系统的程序存储空间从0xC080000开始。(2分)512Kbyte的空间划分出来,作为系统的LCD显示缓冲区使用(更新其中的数据,就可以更新LCD的显示)。3、请简要描述S3C2410A微处理器的存储空间特点以及地址映射范围。参考点:第7章ppt中“存储器系统”中的分析。参考答案:第8章2、说明μC/OS-II中任务创建函数OSTaskCreate()的四个参数的含义?参考点:第8章ppt中“8.3--8.µC/OS-II任务的创建”中的例子的分析。答案参考:μC/OS-II中任务创建函数OSTaskCreate()的四个参数的含义:OSTaskCreate(MyTask,//(任务名称)(void*)s,//(任务参数)&TaskStartStk【TASK_STK_SIZE-1】,//(任务栈)0//(任务优先级号));3、画图说明μCOS-II操作系统中任务的五种状态之间是如何切换的,并举出至少一个相应的切换条件或函数。..参考点:第8章ppt中“8.3—2.任务的五种状态”中的分析。参考答案:4、以下是UCOS-II操作系统下的C语言程序,请在1)—7)的注释中填入该行语句的作用#include..\ucos-ii\includes.h/*uC/OSinterface*/#include..\ucos-ii\add\osaddition.h#include..\inc\drv.h#includestring.hOS_STKMain_Stack[STACKSIZE*8]={0,};//1)定义任务栈空间voidMain_Task(void*Id);#defineMain_Task_Prio12//2)定义任务优先级号OS_EVENT*Nand_Rw_Sem;//3)定义Nand_Rw的信号量OS_EVENT*Uart_Rw_Sem;intmain(void){ARMTargetInit();//开发板初始化OSInit();//4)ucos-ii操作系统的初始化uHALr_ResetMMU();//复位MMULCD_Init();//初始化LCD模块LCD_printf(LCDinitializationisOK\n);//向液晶屏输出数据LCD_printf(320x240TextMode\n);initOSGUI();//初始化图形界面LoadFont();//调Unicode字库LoadConfigSys();//使用config.sys文件配置系统设置LCD_printf(CreatetaskonuCOS-II...\n);OSTaskCreate(Main_Task,(void*)0,(OS_STK*)&Main_Stack[STACKSIZE*8-1],Main_Task_Prio);//5)创建Main_Task任务OSAddTask_Init();//创建系统附加任务LCD_printf(StartinguCOS-II...\n);LCD_printf(Enteringgraphmode...\n);LCD_ChangeMode(DspGraMode);//变LCD显示模式为文本模式InitRtc();//初始化系统时钟Nand_Rw_Sem=OSSemCreate(1);//6)创建信号量OSStart();//7)OS启动,开始任务调度return0;}
本文标题:常熟理工嵌入式期末考试复习大题部分
链接地址:https://www.777doc.com/doc-4410786 .html