嵌入式复习题

合集下载

嵌入式复习题

嵌入式复习题

嵌入式复习题1、STM32的嵌套向量中断控制器(NVIC) 管理着包括Cortex-M3核异常等中断,其和ARM处理器核的接口紧密相连。

2、STM32的所有端口都有外部中断能力。

当使用外部中断线时,相应的引脚必须配置成输入模式。

3、系统计时器(SysTick)提供了1个24位、降序的计数器,具有灵活的控制机制。

4、STM32通用定时器TIM的16位计数器可以采用三种方式工作,分别为向上计数模式、向下计数模式和中央对齐模式。

5、ST公司的STM32系列芯片采用了Cortex-M3 内核,其分为两个系列。

STM32F101 系列为基本型,运行频率为36MHZ ;STM32F103 系列为增强型,运行频率为72MHZ 。

6、STM32提供了用户可通过多个预分频器,配置AHB 、高速APB2 和低速APB1 域的频率。

7、为了优化不同引脚封装的外设数目,可以把一些复用功能重新映射到其他引脚上。

这时,复用功能不再映射到它们原始分配的引脚上。

在程序上,是通过设置复用重映射和调试I/O配置寄存器(AFIO_MAPR) 来实现引脚的重新映射。

8、ADC的校准模式通过设置ADC_CR2 寄存器的CAL 位来启动。

9、在STM32中,ADC_CR2 寄存器的ALIGN 位选择转换后数据储存的对齐方式。

10、通用TIMx定时器包括TIM2 、TIM3 、TIM4 和TIM5,是可编程预分频器驱动的16 位自动装载计数器构成。

11、STM32的ADC 是12 位逐次逼近型的模拟数字转换器,可测量16 个外部和 2 个内部信号源。

ADC 的转换分为2个通道组:规则通道组最多包含16 个转换,注入通道组最多包含 4 个通道。

12、TIM1具备16 位可编程预分频器,时钟频率的分频系数为1~65535 之间的任意数值。

13、在STM32中,只有在规则通道的转换结束时才产生DMA请求,并将转换的数据从ADC_DR 寄存器传输到用户指定的目的地址。

嵌入式系统考前复习题

嵌入式系统考前复习题

嵌入式系统考前复习题终结版(节操落地版,不看考完定后悔)、填空题1.嵌入式系统是以应用为中心,以计算机技术为基础,软件硬件可裁剪,适应应用系统对功能、可靠性、成本、体积、功耗严格要求的专用计算机系统。

2.请列举2个嵌入式实时操作系统:WinCE操作系统和Linux操作系统。

3.ARMv7M采用的异常模型理论上预定义了256个异常类型,其中包括11个系统异常类型和4+L个档位,然而实际上CortexM3只存在7个系统异常类型4.Bootloader主要功能是:系统初始化、加载和运行内核程序。

5.RAM存储器有两种,分别是:SRAM和DRAM;现在市场上两种主要的非易失闪存技术也有两类,分别是:NorFlash和MandFlash。

6.CortexM3有两种工作模式:handler模式和线程模式。

7.CortexM3支持的指令集为Thumb-2指令集的子集。

8.在CM3控制内核中R13对应的有两个堆栈指针,分别是主堆栈指针(MSP)和进程堆栈指针(PSP)指针。

9.C编译器没有(选填“有”或“没有”)直接支持CortexM3的位带区操作。

10.较为普遍的一种Cortex的编程开发调试环境为ARM公司的RealViewMDK。

11.嵌入式系统主要由嵌入式处理器、相关支撑硬件和嵌入式软件系统构成。

12.I/O接口电路数据传送方式有:查询、中断、DMA、I/O通道和I/O处理机方式。

13.ARM体系结构所支持的最大寻址空间为4GB。

14.CortexM3采用的两种提升中断响应速度的措施为尾链(Tailchaining)和迟到处理(LateArriving)。

15.CortexM3的PSR由3个子状态寄存器APSR、IPSR和EPSR组成。

16.指令LDR.WR0,[R1,#20!]为带顶索引的指令,而STR.WR0,[R1],#-20则为带后索引的指令。

17.访问特殊功能寄存器指令MSR和MRS必须在特权级下使用。

嵌入式试题及答案

嵌入式试题及答案

嵌入式试题及答案一、单项选择题(每题2分,共20分)1. 嵌入式系统是指:A. 具有特定功能的计算机系统B. 只运行单一任务的计算机系统C. 可以运行多个操作系统的计算机系统D. 以上都不是2. 下列哪项不是嵌入式系统的典型特征?A. 实时性B. 可扩展性C. 资源受限D. 专用性3. 嵌入式系统中,通常使用哪种类型的处理器?A. 通用处理器B. 精简指令集处理器(RISC)C. 复杂指令集处理器(CISC)D. 以上都是4. 在嵌入式系统中,操作系统的作用是什么?A. 管理计算机硬件资源B. 提供用户界面C. 执行所有程序D. 以上都不是5. 以下哪个不是嵌入式操作系统?A. LinuxB. WindowsC. VxWorksD. QNX6. 嵌入式系统的硬件设计通常需要考虑哪些因素?A. 成本B. 功耗C. 尺寸D. 所有以上7. 以下哪个是嵌入式系统的通信接口?A. USBB. HDMIC. VGAD. 所有以上8. 嵌入式系统中的中断处理机制主要用于:A. 程序调试B. 系统启动C. 任务调度D. 错误检测9. 以下哪个不是嵌入式系统的应用领域?A. 工业控制B. 消费电子C. 桌面计算D. 汽车电子10. 嵌入式系统的开发流程通常包括哪些阶段?A. 需求分析B. 系统设计C. 编码与测试D. 所有以上答案:1. A2. B3. B4. A5. B6. D7. D8. C9. C10. D二、多项选择题(每题3分,共15分)11. 嵌入式系统设计时需要考虑的非功能性需求包括:A. 性能B. 可靠性C. 安全性D. 可维护性12. 以下哪些是嵌入式系统开发中的编程语言?A. CB. C++C. JavaD. Python13. 在嵌入式系统中,哪些因素会影响系统的功耗?A. 处理器的运行频率B. 内存的使用量C. 外设的使用D. 所有以上14. 嵌入式系统的软件架构通常包括:A. 硬件抽象层B. 操作系统内核C. 设备驱动程序D. 应用程序15. 以下哪些是嵌入式系统的调试工具?A. 逻辑分析仪B. 仿真器C. 调试器D. 编译器答案:11. ABCD12. ABC13. D14. ABCD15. ABC三、简答题(每题5分,共10分)16. 简述嵌入式系统的实时性要求。

嵌入式考试题

嵌入式考试题

嵌入式考试题
一、选择题
1. 下列哪种不是嵌入式系统的特点?
A. 实时性
B. 高可靠性
C. 批量生产
D. 低功耗
2. 嵌入式系统中常用的处理器是?
A. Intel i7
B. ARM Cortex
C. AMD Ryzen
D. NVIDIA GeForce
3. 下列哪种不是嵌入式系统常用的操作系统?
A. Linux
B. Android
C. Windows
D. FreeRTOS
4. 嵌入式系统中常用的编程语言是?
A. Java
B. C++
C. Python
D. HTML
5. 以下哪种外设不能算作嵌入式系统的外设?
A. LCD显示屏
B. 小键盘
C. 摄像头
D. 鼠标
二、简答题
1. 什么是嵌入式系统?举例说明。

2. 嵌入式系统的设计流程包括哪些步骤?简要描述。

3. 什么是实时系统?嵌入式系统中为什么需要实时性?
4. 解释嵌入式系统中的中断处理机制。

5. 介绍一种常用的嵌入式系统开发工具及其功能。

三、计算题
1. 假设嵌入式系统中有一个定时器中断,中断间隔为10ms,如果在中断服务程序中运行一个函数需要5ms,问系统能否满足实时性要求?
2. 假设一个嵌入式系统的主频为50MHz,要求其通过串口发送一个100字节的数据包,波特率为9600bps,计算发送该数据包需要多长时间?
3. 假设一个嵌入式系统的Flash存储器容量为512MB,每个数据包大小为1KB,存储器可擦写次数为10000次,计算该存储器的寿命能够支持多少次数据包的写入操作?
以上为嵌入式考试题,请根据题目要求完成题目。

嵌入式复习题

嵌入式复习题

选择题1、嵌入式系统有硬件和软件部分构成,以下(C)不属于嵌入式系统软件.A。

系统软件 B. 驱动 C. ADS软件 D。

嵌入式中间件2、ARM处理器的工作模式有( C )种.A. 5 B。

6 C. 7 D。

83、ARM寄存器组有(D )个寄存器。

A、7B、32C、6D、374、下列CPSR寄存器标志位的作用说法错误的是(D)。

A。

N:负数 B. Z:零 C. C: 进位 D. V: 借位5、ARM复位异常的入口地址是( A ).A、0x00000000B、0x00000008C、0x00000018D、0x000000146、下列描述不属于RISC计算机的特点的是(C)。

A.流水线每周期前进一步. B.更多通用寄存器。

C.指令长度不固定,执行需要多个周期.D.独立的Load和Store指令完成数据在寄存器和外部存储器之间的传输。

7、关于μCOS-II应用,以下说法不正确的是(B )。

A、任务可以有类型说明B、任务可以返回一个数值C、任务可以有形参变量D、任务是一个无限循环8、μCOS-II操作系统不属于( C).A、RTOSB、占先式实时操作系统C、非占先式实时操作系统D、嵌入式实时操作系统9、实时操作系统中,两个任务并发执行,一个任务要等待其合作伙伴发来信息,或建立某个条件后再向前执行,这种制约性合作关系被成为(A).A。

同步 B。

互斥 C。

调度 D. 执行10、每种嵌入式操作系统都有自身的特点以吸引相关用户,下列说法错误的是(D)。

A. 嵌入式Linux提供了完善的网络技术支持;B. μCLinux是专门为没有MMU的ARM芯片开发的;C. μC/OS—Ⅱ操作系统是一种实时操作系统(RTOS);D. WinCE提供完全开放的源代码。

11、存储一个32位数0x12345678到2000H~2003H四个字节单元中,若以大端模式存储,则2000H存储单元的内容为( D).A、0x21B、0x68C、0x65D、0x0212、ARM指令集和Thumb指令集分别是(D )位的。

嵌入式考试题库及答案

嵌入式考试题库及答案

嵌入式考试题库及答案一、单项选择题(每题2分,共20分)1. 在嵌入式系统中,通常采用哪种类型的处理器?A. 通用处理器B. 精简指令集处理器(RISC)C. 复杂指令集处理器(CISC)D. 专用处理器答案:B2. 以下哪个不是嵌入式系统的典型特点?A. 实时性B. 可扩展性C. 资源受限D. 专用性答案:B3. 在嵌入式系统中,以下哪个不是常用的存储介质?A. ROMB. RAMC. 硬盘D. Flash答案:C4. 嵌入式操作系统与通用操作系统的主要区别是什么?A. 嵌入式操作系统更复杂B. 嵌入式操作系统更简单,资源占用少C. 嵌入式操作系统价格更高D. 嵌入式操作系统运行速度更快答案:B5. 以下哪个不是嵌入式系统的应用领域?A. 消费电子B. 工业控制C. 航空航天D. 办公自动化答案:D6. 在嵌入式系统中,通常使用哪种类型的编程语言?A. 汇编语言B. 高级语言C. 机器语言D. 以上都是答案:D7. 以下哪个不是嵌入式系统的开发工具?A. 编译器B. 调试器C. 项目管理软件D. 文字处理软件答案:D8. 在嵌入式系统中,以下哪个不是常用的通信协议?A. TCP/IPB. USARTC. I2CD. USB答案:D9. 嵌入式系统的功耗通常与什么因素有关?A. 处理器速度B. 存储容量C. 系统复杂度D. 以上都是答案:D10. 以下哪个不是嵌入式系统的开发流程?A. 需求分析B. 系统设计C. 编码实现D. 产品发布答案:D二、多项选择题(每题3分,共15分)1. 嵌入式系统的开发过程中,以下哪些是必须考虑的因素?A. 系统性能B. 成本控制C. 系统安全性D. 用户体验答案:ABCD2. 在嵌入式系统中,以下哪些是常见的输入设备?A. 触摸屏B. 键盘C. 鼠标D. 传感器答案:ABD3. 以下哪些是嵌入式系统开发中常用的软件工具?A. 集成开发环境(IDE)B. 版本控制系统C. 项目管理工具D. 数据库管理系统答案:ABC4. 在嵌入式系统中,以下哪些是常见的输出设备?A. 显示器B. 扬声器C. 打印机D. LED灯答案:ABD5. 嵌入式系统的测试通常包括哪些方面?A. 功能测试B. 性能测试C. 安全性测试D. 稳定性测试答案:ABCD三、填空题(每题2分,共20分)1. 嵌入式系统通常由、、和四个部分组成。

嵌入式复习题(题目借鉴)

嵌入式复习题(题目借鉴)

一、单选1..Cortex-M处理器采用的架构是(D)(A)v4T (B)v5TE (C)v6 (D)v72.Cortex-M系列正式发布的版本是(A )(A)Cortex-M3 (B)Cortex-M4 (C)Cortex-M6 (D)Cortex-M83.STM32F10x的NVIC可用来表示优先级的位数可配置为是____A.2B.4C.6D.8##B4.Cortex-M3的提供的流水线是____A.2级B.3级C.5级D.8级##B5.STM32处理器的USB接口可达____ A.8Mbit/s B.12Mbit/s C.16Mbit/s D.24Mbit/s##B6.Contex-M3处理器的寄存器r14代表____A.通用寄存器B.链接寄存器C.程序计数器D.程序状态寄存器##B7.Cortex-M3使用的存储器格式是____ A.小端格式 B.大端格式C.小端或大端格式D.没有正确答案##D8.Cortex-M3的存储格式中专用外设总线区域可以使用____A.小端格式B.大端格式C.小端或大端格式D.没有正确答案##A二、判断1.从某种意义上说,异常就是中断。

(√)2.中断的优先级和它在中断向量表里的位置没有关系。

(×)3.当抢占式优先级不一样时,一定会发生抢占。

(×)4.STM32ADC是一个12位的连续近似模拟到数字的转换器。

(√)5.所谓不可屏蔽的中断就是优先级不可调整的中断。

(×)6.固件包里的Library文件夹包括一个标准的模板工程,该工程编译所有的库文件和所有用于创建一个新工程所必须的用户可修改文件。

(×)三、填空1.STM32 103是32位的单片机2.F103 系列为标准型,运行频率为72MHZ3.STM32103的GPIO端口具有多种配置状态,输入有3种状态,它们分别是_模拟输入_、_浮空输入__和上拉/下拉输入;输出有4种状态,它们分别是_通用推挽输出_、_通用开漏输出_、_复用推挽输出_和_复用开漏输出_。

嵌入式笔试题目

嵌入式笔试题目

1、在嵌入式系统中,以下哪个组件负责执行程序指令?
A. 内存
B. 中央处理器(CPU)
C. 输入/输出设备
D. 存储设备(答案:B)
2、以下哪种类型的存储器在掉电后会丢失数据?
A. SRAM
B. DRAM
C. Flash ROM
D. EEPROM(答案:B)
3、在嵌入式系统设计中,I2C总线主要用于什么类型的通信?
A. 高速数据传输
B. 低速串行通信
C. 并行数据传输
D. 高频信号处理(答案:B)
4、下列哪个协议是用于网络通信,特别是嵌入式设备与互联网之间的通信?
A. SPI
B. I2C
C. TCP/IP
D. UART(答案:C)
5、在嵌入式Linux系统中,Bootloader的主要作用是?
A. 加载并启动操作系统内核
B. 提供图形用户界面
C. 管理系统文件
D. 执行应用程序(答案:A)
6、以下哪种编程语言常用于嵌入式系统的底层开发?
A. Python
B. Java
C. C/C++
D. JavaScript(答案:C)
7、在嵌入式系统中,中断的作用是什么?
A. 提高系统处理速度
B. 使系统进入低功耗模式
C. 允许CPU在处理其他任务时响应外部事件
D. 增加系统内存(答案:C)
8、下列哪项技术不是用于降低嵌入式系统功耗的?
A. 睡眠模式
B. 动态电压和频率调整(DVFS)
C. 增加处理器核心数量
D. 定时唤醒机制(答案:C)。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

1、S3C44B0X内部有_26_个中断源;6_个16位定时器,其中定时器__5_是一个内部定时器不具有对外输出口,常作为UCLINUX的内部定时器。

2、S3C44B0X的PLL的作用是将输入时钟频率倍频器。

3、RS-232C的帧格式由四部分组成,包括:起始位、数据位、奇偶校验位和停止位__。

采用RS-232C实现最简单双机互联,至少需要如下信号线:TXD、RXD 和GND。

4、Bootloader主要功能是系统初始化和加载和运行内核程序。

5、简述嵌入式系统设计过程。

(1)需求分析;(2)规格说明;(3)体系结构设计;
(4)设计硬件构件和软件构件;(5)系统集成(6)系统测试。

6、简述linux和uClinux在进程管理方面的区别。

uClinux 和Linux之间最大的区别在于平面存储器模型。

LINUX提供fork、vfork 系统调用;而UCLINUX系统提供系统调用vfork。

在vfork调用完成后父子进程事实上共享同一块存储器(在子进程调用exec或是exit之前),因此子进程可以更改父进程的数据及堆栈信息,因此vfork系统调用完成后,父进程进入睡眠,直到子进程执行exec或exit。

当子进程正确开始执行后,将唤醒父进程,使得父进程继续往后执行。

所以,在uClinux中,想让父子进程同时运行同一个程序是不可以的。

7、简述编写uClinux驱动程序的步骤。

首先,要根据设备功能的需要,编写file_operations结构中的操作函数。

其次,要向系统注册该设备,包括字符设备的注册,devfs节点的注册与中断响应函数的注册。

然后,设备驱动程序编译和安装。

如果没有应用设备文件系统,则需要手工为设备添加文件节点。

最后,就可以利用对应的文件进行设备操控。

8、简述uClinux源程序的目录结构及其含义。

(1)kernel目录下文件实现了大多数Linux系统的核心函数,其中最重要、最主要的文件当属sched.c。

(2)mm/nommu目录,Linux中独立于CPU体系结构特征的内存管理文件几乎都集中在此目录下。

如页式存储管理、内存的分配和释放等等。

在nommu目录下是没有mmu的内存管理。

(3)fs目录源程序涵盖各种类型的文件系统和文件操作。

(4)arch目录包括与CPU类型相关的子目录和文件。

(5)include目录容纳Linux源程序的所有头文件(header file)。

(6)net目录存放的是和Linux网络相关的C文件。

(7)drivers目录存放各种设备的驱动程序。

9、简述uClinux内核的配置剪裁和编译命令。

(1)Linux移植准备,下载UCLinux2.X.0内核及其关于ARM平台的补丁。

(2)准备交叉编译环境。

交叉编译环境工具链一般包括binutils(含AS汇编器,LD 链接器等),arm-gcc,glibc等。

(3)修改uClinux内核源码。

uClinux的移植主要包含启动代码的修改,内核的链接及装入,参数传递,内核引导几个部分。

(4)uCLinux内核裁减。

利用“make config”/“make menuconfig”/“make xconfig”对内核配置。

(5)内核的编译。

执行以下几条命令就行:
a.make clean c.make zImage
b.make dep d.make install
10、请指出USB总线的四种传输类型,并指出每一种传输类型的基本特点。

四种传输类型:控制传输、批量传输、中断传输和等时传输
控制传输:双向,纠错,查询、配置设备信息;
批量传输:单向,纠错,大块无结构数据,延迟不定;
中断传输:单向,纠错,小块无结构数据,延迟确定;
等时传输:单向,无纠错,大块无结构数据,延迟确
11、为下列Bootloader部分代码添加注释。

①End of ROM code;②Base of RAM to initialise;
③The Main entry of mon program;④0x00000000,Reset Handler;
⑤watch dog disable;⑥all interrupt disable;⑦Fin,Fout
⑧all unit block CLK enable;⑨Set Memory Control Registers
⑩Initialize Stacks; 13、写出为uclinux添加字符设备驱动的关键步骤。

(1)把原文件放在 linux-2.4.x/driver/char/
(2)设备驱动原文件必须包括这样的一个函数:
void iof_init(void){
register(254, 'xyz', &xyz_fops);
//驱动程序里必须包含这句注册语句
}
(3)修改 linux-2.4.x/driver/char/Makefile 在适当位置添加
一行:
obj_$(CONFIG_IOF) += iof.o
(4)修改linux-2.4.x/driver/char/Config.in, 添加一行:
bool 'iof-driever by xxx' CONFIG_IOF
(5)修改linux-2.4.x/driver/char/mem.c
在文件头部的声明部分,添加:
#ifdef CONFIG_IOF
extern int iof_init(void);
#endif
然后,在chr_dev_init()函数里添加:
{
#ifdef CONFIG_IOF
iof_init();
#endif
}
(6)修改目标板文件夹里相应的Makefile
(7)make menuconfig 提示:iof-driver by xxx 时输入 x ,回车;
make dep
make
15、编写程序实现代码从加载域到执行域的拷贝过程。

LDR r0, =|Image$$RO$$Limit| ;得到ROM加载域中RW数据段的起始地址
LDR r1, =|Image$$RW$$Base| ;得到RAM执行域中RW数据段的起始地址
LDR r3, =|Image$$ZI$$Base| ;得到RAM中ZI段的起始地址
CMP r0, r1
BEQ %F1
CMP r1, r3 ;复制加载域的RW段到执行域
LDRCC r2, [r0], #4
STRCC r2, [r1], #4
BCC %B0
1
LDR r1, =|Image$$ZI$$Limit| ;对ZI段(未初始化的数据段)初始化为0
MOV r2, #0
2
CMP r3, r1
STRCC r2, [r3], #4
BCC %B2
16、实现UPNET-ARM3000开发板串口(采用UART0)读写字符的核心程序。

static int s3c44b0_serial0_init(void){
int i;
s3c44b0_serial0_flush_output();
rULCON0 = crULCON0; //0x03;//Normal,No parity,1 stop,8 bit rUCON0 = crUCON0; //0x5;
rUFCON0 = crUFCON0; //FIFO disable
rUBRDIV0 = crUBRDIV0; //( (int)(MCLK/16./baud + 0.5) -1 );
for(i=0; i<100; i++);
return 0;
}static int s3c44b0_serial0_flush_input(void){
volatile U32 tmp;
while(rUTRSTAT0&0x01) {
//keep on reading as long as the receiver is not empty tmp = rURXH0;
}
return 0;。

相关文档
最新文档