当前位置:文档之家› 嵌入式系统原理及接口技术复习题

嵌入式系统原理及接口技术复习题

一、简答题1.什么是嵌入式系统?嵌入式系统的特点是什么?答:以应用为中心,以计算机技术为基础,软硬件可裁剪,适应应用系统对功能,可靠性,成本,体积,功耗严格要求的专用计算机系统特点:与应用密切相关,实时性,复杂的算法,制造成本,功耗,开发和调试,可靠性,体积2.简要说明嵌入式系统的硬件组成和软件组成。

答:硬件组成:微处理器,存储器,输入设备和输出设备。

软件组成:操作系统,文件系统,图形用户接口,网络系统,通用组建模块。

3.S3C2410A的AHB总线上连接了那些控制器?APB总线上连接了那些部件?AHB:LCD控制器,LCD DMA,总线控制器,USB主控制器,中断控制器,ExtMaster,电源管理,Nandflash控制器,储存器控制器。

APB:通用异步收发器,内部集成电路总线(IIC),USB设备控制器,集成电路内部声音总线(IIS),MMC/SD/SDIO主控制器,通用I/O端口(GPIO),看门狗定时器(WDT),定时时钟(RTC),总线控制器,A/D转换器,串行外设接口,定时器/脉宽调制。

4.ARM体系结构支持几种类型的异常,并说明其异常处理模式和优先级状态?答,支持7种类型的异常异常处理过程:(进入异常)PC→LR,CPRS→SPSR,设置CPSR的运行模式位,跳转到相应的异常处理程序,(异常返回)LR→PC,SPSR→CPSR,若在进入异常处理时设置中断禁止位,要在此清楚,复位异常处理程序不需要返回。

Reset>数据中指>快速中断请求(FIQ)>中断请求(IRQ)>指令预取中止>未定义指令和软件中止。

5.存储器生长堆栈可分为哪几种?各有什么特点?4种,满递增堆栈,满递减堆栈,空递增堆栈,空递减堆栈。

6.简述存储器系统层次结构及特点。

答:层次结构:包括Cache,主存储器和辅助存储器特点:7.简述I2S总线接口的启动与停止过程。

通过I2S控制寄存器IISCON控制,当控制寄存器IISCON的地址为0=I2S禁止(停止);当控制寄存器IISCON的地址为1=I2S允许(开始)。

8.简述ARM系统中的中断处理过程。

中断处理过程包括:中断请求、中断排队或中断判优、中断响应、中断处理和中断返回9.ARM微处理器支持哪几种运行模式?各运行模式有什么特点?User:用户模式。

绝大部分的任务执行都在这种操作模式下,此为正常的程序执行模式。

FIQ:快速中断模式。

支持数据传送或通道处理。

IRQ:普通中断模式。

用于一半中断处理。

Supervisor:管理模式。

一种操作系统受保护的方式。

Abort:中止模式。

在访问数据中止后或指令预取中止后进入中止方式。

System:系统模式。

是操作系统一种特权级的用户方式。

Undef:未定义模式。

当执行未定义指令时会进入这种操作模式。

10.当PCLK=66.5MHz时,选择不同的时钟分频(1/2、1/4、1/8、1/16)输入,分别计算定时器最小分辨率、最大分辨率及最大定时区间。

答:最小分辨率:定时器输入时钟频率=PCLK/{prescaler+1}/{divider值}=66.5/{0+1}/{2}=33.2500(MHz)一个计数脉冲时间=1/33.2500MHz=0.0300(us)最大分辨率:定时器输入时钟频率=PCLK/{255+1}/{2}=66.5/256/2=129.8828一个计数脉冲的时间=1/129.8828=7.6992(us)最大定时区间:由于TCNTBn=65535,计数到0共65536个计数脉冲,所以65536*7.6992=0.5045(sec)。

11.分析如图所示I2S总线时序图,说明其操作过程。

12.S3C2410A与UAD1341通过I2S总线接口连接,试述音频数据传送过程。

答:处理器通过IIS总线接口,控制音频数据在s3c2410内存与UDA1341TS之间传送。

连接在UDA1314TS上的麦克风信号在UDA1314内部经过A/D转换器,转换成二进制数,串行通过DATAO引脚送到S3C2410的IIS模块,在IIS模块中数据转换成并行数据然后使用通常存取方式或DMA存取方式,将并行数据保存的内存中,而内存中要输出的音频数据使用通常存取方式或DMA存取方式,将数据并行传送到IIS模块在IIS中转换成串行数据,串行通过DATAI引脚送到UDA1314TS,在片内经过D/A转换器,变成模拟信号,经过驱动器,驱动扬声器。

13.简述LCD控制器组成及数据流描述。

LCD控制器包括:REGBBANK,LCDCDMA,TMEGEN,LPC定时控制逻辑单元,VIDPRCS 以及VIDEOMUX组成。

当传送请求由总线仲裁器接收时,4个连续的字数据由系统存储器帧缓冲区传送到LCDCDMA内的FIFO。

全部FIFO大小为28个字,分别由12个字的FIFOL和16个字的FIFOH组成。

使用FIFOL和FIFOH,用来支持双扫描显示模式,在单扫描显示模式,仅有FIFO中一个,即FIFOH能够被使用。

14.以下是S3C2410A的串口逻辑方框图,试分析其组成和工作原理。

二、程序分析。

给以下程序主要过程加注释,幷写出程序功能1. 汇编程序:IsrIRQsub sp,sp,#4;//堆栈指针—4送入spstmfd sp!,{r8-r9}ldr r9,=INTOFFSETldr r9,[r9];//将该r9内容作为地址,读该单元数据送r9。

ldr r8,=HandleEINT0;//读中断向量表首地址add r8,r8,r9,lsl #2;//r9的值逻辑左移2位,加r8,和送r8。

ldr r8, [r8];//将该r8内容作为地址,读该单元数据送r8。

str r8,[sp,#8];//先索引,r8数据写入sp+8做地址的寄存器中,不回写。

ldmfd sp!,{r8-r9,pc};//将sp指向的储存单元多字数据,装入r8-r9地址单元,pc中。

程序实现的功能:IRQ中断服务程序课本P2572. C语言程序段rGPFCON|=2<<0|2<<4; // 将GPF0配置成EINT0和将GPF2配置成EINT2rGPGCON|=2<<6|2<<22; // 将GPG3,GPG11配置成EINT11,EINT19功能rINTMOD=0; // 中断模式配置为IRQ中断rEXTINT0|=4<<0|4<<8; // 将EINT0和EINT2信号方式设置为上升沿触发rEXTINT1|=4<<12; // 将EINT11信号方式配置为上升沿触发rEXTINT2|=4<<12; // 将EINT19信号方式配置为上升沿触发//rINTMSK&=~(1<<0|1<<2|1<<5);// EINT0,EINT2,EINT8_23对应屏蔽位置0,允许服务程序实现的功能:中断初始化课本P2553. C语言程序段void Test_Touchpanel(void){rADCDLY=50000; //Normal conversion mode delay aboutrADCCON=(1<<14)+(ADCPRS<<6); //ADCPRS En, ADCPRS ValuerADCTSC=0xd3; //Wfait,XP_PU,XP_Dis,XM_Dis,YP_Dis,YM_EnpISR_ADC = (int)AdcTsAuto;rINTMSK=~BIT_ADC; //ADC Touch Screen Mask bit clearrINTSUBMSK=~(BIT_SUB_TC);Uart_Getch();rINTSUBMSK|=BIT_SUB_TC;rINTMSK|=BIT_ADC;}程序实现的功能:测试触摸屏4. 汇编语言ldr r0,=REFRESHldr r3,[r0] ;r3=rREFRESHmov r1, r3orr r1, r1, #BIT_SELFREFRESHstr r1, [r0] ;Enable SDRAM self-refreshmov r1,#16 ;wait until self-refresh is issued. may not be needed.0 subs r1,r1,#1bne %B0四、设计与编程(每题10分,共20分)1. 设计程序,写出实现LED1~LED4轮流闪烁的主程序代码。

已知FCLK=400M,不考虑分频函数,FCLK:HCLK:PCLK按1:2:4计算,使用端口GPB0、1、2、3为LED控制端口,低电平点亮。

程序代码:{U32 i;for(;tt>0;tt--){for(i=0;i<10000;i++){}}}int Main(int argc, char **argv){int i;U8 key;U32 mpll_val=0;int data;mpll_val = (92<<12)|(1<<4)|(1);//init FCLK=400M, so change MPLL firstChangeMPllValue((mpll_val>>12)&0xff, (mpll_val>>4)&0x3f, mpll_val&3);ChangeClockDivider(key, 12);MMU_DisableICache();MMU_DisableDCache();rGPBCON = 0x155555;data = 0x06;while(1){rGPBDAT = (data<<5);dely(120);data =~data;}return 0;}2.根据Nand Flash控制器工作原理,试在图中画出S3C2410A的Nand Flash控制器与K9F2808U0C芯片的连接关系,并简单描述其操作过程。

3.S3C2410A的LCD控制器初始化程序主要包括配置LCD引脚用到的GPIO;设置LCDCON寄存器参数等。

试配置C端口、D端口的相关引脚为LCD功能引脚。

写出端口配置初始化程序。

4.用S3C2410A或S3C2440的串口1实现串口通信。

试设计不带流量控制的简单收发程序,包括初始化程序,发送程序和接收程序。

所用寄存器描述如下:等等已定义宏如下:#define WrUTXH0(ch) (*(volatile unsigned char *)0x50000020)=(unsigned char)(ch)#define RdURXH0() (*(volatile unsigned char *)0x50000024)程序设计(要求加注释):5.使用S3C2410A的A/D转换器进行模拟信号到数字信号的转换。

相关主题