arm考试复习资料.docx
- 文档编号:23726270
- 上传时间:2023-05-20
- 格式:DOCX
- 页数:20
- 大小:1.54MB
arm考试复习资料.docx
《arm考试复习资料.docx》由会员分享,可在线阅读,更多相关《arm考试复习资料.docx(20页珍藏版)》请在冰豆网上搜索。
arm考试复习资料
1.回答:
1.什么是嵌入式系统?
答:
IEEE定义:
嵌入式系统是“控制,监视或者辅助装置,及其和设备运行的装置”。
广泛认同的定义:
以应用为中心,以计算机技术为基础,软件硬件可裁剪,适应应用系统对功能,可靠性,成本,体积,功耗严格要求的专用计算机系统。
嵌入式系统性质:
专用而非通用系统,在程序的控制下工作,不需要的硬件接口功能不扩展,不需要的系统软件部安装。
2.嵌入式操作系统有什么特点?
答:
1)可裁剪性。
支持开放性和可伸缩性的体系结构。
2)强实时性。
EOS实时性一般较强,可用于各种设备控制中。
3)统一的接口。
提供设备统一的驱动接口。
4)操作方便、简单、提供友好的图形GUI和图形界面,追求易学易用。
提供强大的网络功能,支持TCP/IP协议及其他协议,提供TCP/UDP/IP/PPP协议支持及统一的MAC访问层接口,为各种移动计算设备预留接口。
5)强稳定性,弱交互性。
嵌入式系统一旦开始运行就不需要用户过多的干预、这就要负责系统管理的EOS具有较强的稳定性。
嵌入式操作系统的用户接口一般不提供操作命令,它通过系统的调用命令向用户程序提供服务。
6)固化代码。
在嵌入式系统中,嵌入式操作系统和应用软件被固化在嵌入式系统计算机的ROM中。
7)更好的硬件适应性,也就是良好的移植性。
3.ARM处理器内部结构:
答:
ARM核高系统总线、外围总线(看着书上19页自己发挥)
4.嵌入式系统软硬件结构?
答:
嵌入式硬件处理器、存储器、I/O以及总线,软件包括设备驱动、操作系统及中间件和应用软件
5.嵌入式技术适用在什么领域内应用?
答:
●军用。
各种武器控制、坦克、舰艇、轰炸机等陆海空各种军用电子
备,雷达、电子对抗军事通信装备,野战指挥作战用各种专用设备等。
●消费电子。
我国各种信息家电产品,如数字电视机、机顶盒、数码相
机、VCD、DVD、音响设备、可视电话等,广泛采用微处理器/微控制器及嵌入式软件。
娱乐等特性的智能手机,我国移动通信市场潜力巨大,发展前景看好。
●工业控制。
各种智能测量仪表、数控装置、可编程控制器、控制机、
分布式控制系统、现场总线仪表及控制系统、工业机器人、机电一体化机械设备、汽车电子设备等,广泛采用微处理器/控制器芯片级、标准总线的模板级及系统嵌入式计算机。
●网络应用。
Internet的发展,产生了大量网络基础设施、接入设备、终端设备的市场需求,这些设备中大量使用嵌入式系统。
2.驱动程序:
1.驱动代码:
staticinteduk4_led_ioctl(structinode*inode,structfile*file,unsignedintcmd,unsignedlongarg)
{
unsignedcharstatus=0xff;
switch(cmd){
case0:
case1:
if(arg>4){//LED编号大于4的为非法编号
return-EINVAL;
}
status=inb(LED_BASE);//读取74HC573的输出端Q0-Q7引脚信号
if(0==cmd){
status&=~(0x1< }elseif(1==cmd){ status|=(0x1< } //将设置好的寄存器值写入LED的控制寄存器,点亮指定的LED outb(status,LED_BASE); return0; default: return-EINVAL; } } staticstructfile_operationseduk4_led_fops={ .owner=THIS_MODULE, .ioctl=eduk4_led_ioctl,//与应用程序对此设备文件的ioctl操作对应 }; staticint__initeduk4_led_init(void) { intret; unsignedcharstatus; //注册字符设备 ret=register_chrdev(LED_MAJOR,//主设备号 DEVICE_NAME,//设备名 &eduk4_led_fops);//设备操作函数列表(file_operations结构体) //若注册设备不成功则打印内核提示信息“无法获取主设备号” if(ret<0){ printk(DEVICE_NAME"can'tregistermajornumber\n"); returnret; } //创建设备文件,使得应用程序可以像访问普通文件一样对设备操作 devfs_mk_cdev(MKDEV(LED_MAJOR,0),S_IFCHR|S_IRUSR|S_IWUSR|S_IRGRP,DEVICE_NAME); //读取74HC573的输出端Q0-Q7引脚信号 status=inb(LED_BASE); //熄灭所有LED outb(status|0xff,LED_BASE); //打印初始化成功的内核提示信息 printk(DEVICE_NAME"initialized\n"); return0; } staticvoid__exiteduk4_led_exit(void) { unsignedcharstatus; //读取74HC573的输出端Q0-Q7引脚信号 status=inb(LED_BASE); //熄灭所有LED outb(status|0xff,LED_BASE); //打印内核提示信息 printk(DEVICE_NAME"remove\n"); //重设备文件系统中移除该设备文件 devfs_remove(DEVICE_NAME); //注销字符设备 unregister_chrdev(LED_MAJOR,DEVICE_NAME); } module_init(eduk4_led_init);//加载驱动(insmod)时调用 module_exit(eduk4_led_exit);//卸载驱动(rmmod)时调用 MODULE_LICENSE("BSD/GPL"); 2.应用程序怎样调用驱动程序? 答: 系统首先加载muduleinit(led_init)加载驱动程序,驱动程序开始运行。 moduleinit函数首先注册字符设备(包括设备号,设备名,设备操作函数列表); 然后注册设备,创建设备文件; 最后移除文件,注销设备。 3.S3C2410中断 1.中断机制及特性: 答: ARM中断机制: CPU接收到中断请求后,保存当前的现场(寄存器组压栈),转去处理中断。 首先判断中断源和中断类型,然后执行相应的中断处理程序以响应中断。 中断处理结束后恢复现场,继续中断前的工作。 ARM处理器中断特性: S3C2410处理器有56个中断源,包括24个外部中断源,22个内部中断源。 中断源产生的中断信号首先传至中断控制器,由中断控制器处理后产生中断请求信号通过总线传给处理器的核。 ARM处理器不允许中断嵌套,即不允许在处理一个中断的过程中响应另外一个中断。 中断源由如DMA控制器、UART、IIC等内部外设提供。 这些中断源中,UARTn和EINTn中断是以或逻辑输入到中断控制器的。 当从内部外设和外部中断请求引脚接收到多个中断请求时,经过中断仲裁后,中断控制器向ARM920T请求FIQ或者IRQ中断。 2.举例说明中断复用(按键中断): 答: 1.地址总线和控制总线信号选通CPLD,数据线信号控制CPLD接受按键所连接的引脚产生的中断信号。 2.开关闭合产生中断信号。 3.CPLD将键盘产生的中断信号送入中断控制器的EINT9引脚。 4.中断控制器中断总裁后将中断信号送给处理器内核。 补充: 中断源请求寄存器SRCPND: 锁存每个中断信号,一个中断信号占一比特。 中断屏蔽寄存器INTMSK: 某位值为1则对应中断被屏蔽,否则不被屏蔽。 中断模式寄存器INTMOD: 某位值为1则对应中断源产生FIQ中断信号,否则产生IRQ中断信号。 中断优先级寄存器PRIORITY: 决定多路中断同时产生时的中断响应顺序,详见S3C2410用户手册。 中断请求寄存器INTPND: 锁存中断仲裁后的中断信号。 四,AD转换: 1.采样保持电路的工作原理: 答: 如图主要由保持电容C、输入、输出缓冲放大器以及控制开关S组成。 图中,两放大器均接成跟随器形式,采样期间,开关闭合,输入跟随 器的输出给电容器C快速充电;保持期间,开关断开,由于输出缓冲放大器的输入阻抗极高,电容器上存储的电荷将基本维持不变,保持充电时的最终值供A/D转换。 2.S3C2410内部AD转换器特性: 答: 精度: 10-bit 微分线性误差: ±1.5LSB 积分线性误差: ±2.0LSB 最大转换速率: 500KSPS 输入电压: 0-3.3V 片上采样保持电路 正常模式 单独X,Y坐标转换模式 自动X,Y坐标顺序转换模式 等待/中断模式 3.寄存器设置: S3C2410ADC寄存器组 寄存器 地址 R/W 功能描述 复位值 ADCCON 0x58000000 R/W ADC控制寄存器 0x3FC4 ADCDAT0 0x5800000C R ADC数据寄存器 - ADCDAT1 0x58000010 R ADC数据寄存器 - ADCTSC 0x58000004 R/W 触摸屏控制寄存器 0x058 ADCDLY 0x58000008 R/W ADC起始延迟寄存器 0x00ff 5.UART 1.RS232机械,电器,时序特性: 答: 机械特性: 定义了从pin1到pin9的九针串口(DB9接头) Tx,Rx 电器特性: 0: 0Vand1: 5V +3V~+15V的正电压表示高电平,逻辑0。 -3V~-15V的负电压表示低电平,逻辑1。 时序特性: 异步传输 2.举例说明,如何在S3C2410的uart接口改为RS232接口: RS232接口与UART接口的区别 UART RS232 机械特性 无定义 DB9 电气特性 0: +3v~+15v 1: -3v~-15v 0: 0v 1: +5v 引脚功能 TxD,RxD DCD,RxD,TxD,DTR,SG,DSR,RTS,CTS,RI RS232接口与UART接口的时序特性是相同的 •了解RS232接口的机械特性、电器特性、功能特性及时序特性。 •比较RS232接口与UART接口在机械特性、电器特性、功能特性及时序特性上的异同。 •在UART基础上,根据两种接口的区别将UART接口改造为RS232接口。 RS232接口) 3.根据串口配置文件设置uart寄存器: 答: 串口作为一种通信接口,主要用于系统的调试。 其工作的原理也就是配置好串口的波特率、数据位、停止位、校验位相关的寄存器,使得串口能按位的发送和接受字节。 目前3A上可用的UART有两类: 一类是CPU的UART,有UART0和UART1,UART0的串口寄存器的基址是0xbfe001e0,UART1的串口寄存器的基址是0xbfe001e8,波特率均为115200;还有一类是LPC的UART,其基址是0xbff003f8,波特率为57600。 在设置上,数据位均设置为8位,停止位为1位,无校验,无流控。 补充: •S3C2410内部集成3个UART接口控制器。 •每个UART控制器可以在CPU和UART之间以中断方式或者DMA请求方式传输数据。 •每个UART的波特率在系统时钟控制下最高可达230.4K。 如果使用外部设备提供的 UEXTCLK,速度还可以更高。 每个UART包括一个波特率发生器、一个发送器、一个接收器、一个控制单元、一个16字节发送缓存和一个16字节接收缓存 6.DMA: 1.什么是DMA? 答: 含义: DMA(DirectMemoryAccess)直接内存读取,即在I/O设备和存储器之间在DM控制器(而不是处理器内核)的控制下高速交数据 特点: (1)DMA使内存既可被CPU访问,也可被快速外设直接访问; (2)在传送数据块时,内存地址的确定、数据的传送及计数器的计数等工作都是由硬件完成设置的; (3)需要在内存中开辟一个专用的缓冲区,以及时提供和接收数据。 在DMA数据传送开始前和结束后,CPU以中断方式对其进行预处理和后处理; (4)提高了外设与CPU并行工作的并行程度,提高了系统效率。 (5)他允许不同速度的硬件装置来沟通而不需要依于CPU的大量中断负载 2内置DMA基本特性 内置4通道DMA控制器。 通道的源器件和目的器件即可以连接在外部总线上也可以连接在系统总线上。 允许软件方式、内部外设、外部请求方式发出DMA请求。 各DMA通道的请求源: 3简述S3C2410响应外部DMA请求时序: 答: P202书11.2 (1) (2)(3) 4.举例说明CCD图像采集系统的DMA解决方案: 答: 根据DMA的特点,设计了基于ARM和FPGA的CCD相机采集系统。 (FPGA选用Altera公司的Cyclone系列器件EP1C6T144C8,可为CCD相机提供工作所需的驱动时序.同时接收经模数转换的CCD输出图像数据。 S3C2410通过DMA方式从FPGA内部采集数据,通过数据线、DMA信号线、片选信号和输出时钟线与FPGA相连。 个人认为可以不写) 根据其时序特点,将FIFO的空信号作为DMA的请求信号DREQ0.当CCD输出的数据写入FIFO中时,空信号跳变为低电平启动DMA操作,同时以DACK0信号作为FIFO的读请求。 每一次DMA传输完成后应答信号使FIFO的读指针移动一位,以实现数据的快速准确采集 7.IIC总线(一下以IIS为例说明,自己类推) 1.主从设备有什么区别? 答: 主设备向从设备提供时钟信号; 主设备向从设备提供左右声道控制信号; 主设备向从设备发送编码信号;从设备向主设备发送解码信号 主设备和从设备都可以工作于接收和发送状态。 总线必须由主设备控制,主设备产生串行时钟(SCL)控制总线的传输方向,并产生起始和停止条件。 2.总发送模式总线时序: 答: I2C总线数据传送采用时钟脉冲逐位串行传送方式,在SCL的低电平期间,SDA线上高、低电平能变化,在高电平期间,SDA上数据必须保护稳定,以便接收器采样接收,时序如图2所示。 I2C总线发送器送到SDA线上的每个字节必须为8位长,传送时高位在前,低位在后。 与之对应,主器件在SCL线上产生8个脉冲;第9个脉冲低电平期间,发送器释放SDA线,接收器把SDA线拉低,以给出一个接收确认位;第9个脉冲高电平期间,发送器收到这个确认位然后开始下一字节的传送,下一个字节的第一个脉冲低电平期间接收器释放SDA。 每个字节需要9个脉冲,每次传送的字节数是不受限制的。 3.画出总发送模式驱动程序流程图: 答: 八.CAN(没详细问题) CAN总线由两根数据线组成,连接到总线的设备没有主从之分。 总线发送差动共模信号(通过两根总线的电位差确定发送是0还是1) CAN总线时序包括: 数据帧时序: 数据帧用于发送数据。 数据帧根据MessageID字段的长度分为标准数据帧(11bitMsgID),和扩展数据帧(29bitMsgID)。 远程帧时序: 远程帧用于请求发送数据。 远程帧除了RTR字段为逻辑1、没有Data字段外,其它字段均与数据帧相同。 错误帧时序: 当连接在CAN总线上的一个节点检测到错误时,就可以通过错误帧向其它节点发送错误帧通告错误。 多个节点发送错误帧时可能会导致错误帧叠加,使错误帧的ErrorFlag的长度从6bit到12bit不等。 过载帧时序: CAN总线上的节点会在如下三种情况下发出过载帧: 上次接收的数据未被CPU读取就已经被再次滤波进来的CAN数据改写。 CAN节点检测到帧间隔的第一位或第二位为逻辑0。 CAN节点采样到错误帧或过载帧的帧结束字段有逻辑0。 九.PWM定时器 S3C2410有5个16位定时器。 定时器0、1、2、3有脉宽调制(PWM)功能。 定时器4是一个内部定时器而没有输出引脚。 定时器0有一个死区发生器。 1、每个定时器都有一计数器。 2、计时器启动后,计数器每脉冲减1。 3、当计数器的减到0时产生中断,即定时器设定的时间等于: 计数器×时钟周期 4、设定计时器的时间应首先设定计时器时钟周期,然后设定计时器的计数器。 S3C2410计时器的PWM特性 每个计时器都有一个比较寄存器 在计时器工作的整个过程中计数器每时钟减1,比较器的值不变。 计数器的值大于比较器时计时器输出引脚为低电平;计数器的值小于比较器时计时器输出引脚为高电平。 计数器的值和比较器的值相同时产生中断。 1、计时器不工作时输出高电平 计数器设置为160 比较器设置为110 2、启动计时器 计数器的值每时钟减1 计数器的值大于比较器时输出低电平 3、计数器与比较器值相等时电平跳变 4、计数器减到零 不具备PWM特性的计时器只有计数器而没有比较器,相当于比较器设置 为0的PWM计时器。 双缓冲特性: 计数器每脉冲减1。 减到0时S3C2410自动将计数器缓冲器的值装入计数器,将比较器缓冲器的值装入比较器。 双缓冲的好处时计时器和比较器工作的同时可以设置下一阶段计时器与比较器的初始值。 PWM信号进入电机绕阻后,线圈的感抗会将PWM交流信号变换成近似直流的信号。 在占空比一定的情况下,频率越高线圈中的电压越趋近直流。 死区控制防止短路损毁 十.SD卡 SD卡内部结构 DATA0-4: 数据引脚(双向) CMD: 命令引脚(双向) VDD: 3.3V电压 CLK: 时钟 3、4号引脚: 地线 SD卡内部寄存器 CID128(CardIdentification)全球唯一SD卡标识寄存器, 组成: 厂家ID+产品ID+版本号+串号+生产日期 RCA16(RelativeCardAddress)相对地址寄存器,用于在多卡系统中标识某卡,SD卡只有收到主机的RCA才可被读写。 CSD128(CardSpecificData)专用数据寄存器,保存SD卡的配置信息,包括卡的容量、数据访问时间、最大传输率、最大读数据长度、最大读写电流、擦除保护和写保护等信息。 SCR64(SDConfigurationReigister)SD卡配置寄存器,包括SD版本号、SD加密支持和数据总线宽度等信息。 OCR32(OperatingCodeRegister)操作条件寄存器,记录了SD卡的操作电压范围(2.0-3.6) SD卡的工作模式 1、1位SD模式(一位串行传输) 2、4位SD模式(4为并行传输) 3、SPI模式(SerialPeripheralInterface) 当SD卡与读卡器刚刚相连的时候,默认 工作在SD模式下,可通过SD指令切换至SPI 模式。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- arm 考试 复习资料