嵌入式系统原理考试要点

发布 2022-10-21 09:19:28 阅读 1515

第一章。

1. 微型计算机系统硬件有哪几部分组成?

2. 典型的cpu中包含哪些必要部件?

3. 存储器的地址和内容的关系?存储器分类及每一类的特点,sram与dram有何区别? dram为何需要刷新?哪个集成度更高?

4. 按传送信息不同,总线可以分为哪几种?ab,db 分别与什么重要指标相关?

5. bit ,byte,word,字长,kb,mb,gb等的概念。

6. 按微机的应用形态来分,可分为通用型及嵌入式两类。

7. 嵌入式系统按微处理器来分,可分为哪几种?

8. 什么是mcu?

9. 掌握十进制、二进制、十六进制之间的互换。

10. 带符号数的补码表示方法及与真值的互换。

11. 非数值数据在计算机中怎样表示?

12. 什么是bcd码?

13. 掌握c语言中的位运算。

数制方面练习:

14.完成下列数制转换。

1) 10100110bdh

2) 0.11bd

3) 253.25bh

4) 1011011.101bhbcd

15. 写出下列真值对应的原码和补码形式。

1) x = 1110011b

2) x = 71d

3) x = 1001001b

16. 已知x和y的真值,求[x+y]的补码。

1) x=-1110111b y=+1011010b

2) x = 56dy=-21d

17.8位字长的二进制数10101010b,若按无符号整数、带符号原码和带符号补码求真值,结果分别为十进制的和。

18.设字长为16位,真值x=-15,y=110,则有: [xy]补。

第二章。1. arm与freescale, 内核与芯片的关系。

2. arm-cortex属于arm系列的哪个版本(架构)?它有哪几个系列?各有怎样的应用定位?

3. kinetis mcu中的k60系列 mk60n512vmd100的内核是( arm cortex-m4),字长(32位),内部的数据是32位的,寄存器是32位的,存储器接口也是32位的。

4. mk60n512vmd100的flash多大?地址范围?sram 多大?地址范围?

5. arm cm3/4的寄存器是多少位的? 试述r13,r14,r15寄存器分别与cpu运行原理中哪个寄存器相对应,并说出其各自的用途。

6. mcu的硬件最小系统是指什么?一般情况下,mcu的硬件最小系统由哪些电路组成。

7. mcu为什么需要有复位电路?实验板上的复位电路有什么特点?是高电平复位还是低电平复位?

8. 什么是中断?中断源的分类?什么是nmi,intr? 什么是中断服务程序?

9. cortex‐m4包含多少个中断类型?分别是多少个系统中断,多少个外部中断?什么是中断向量表?放在**?占多大空间?

第四章。1.gpio的基本概念。

2.常用简单外设包括哪几种? 对应的接线原理图。

3.k60包含几个gpio模块?共多少个引脚?

4.kinetis的每个外围部件都有对应的时钟控制, porta的时钟在哪个寄存器中打开?试写出相应的语句。

5.portx_pcrn 表示什么? 在gpio初始化中主要设置哪部分? mux ,pe,ps,irqc

6.简述gpioa_pdor,gpioa_psor和gpioa_pcor的用法和特点。

答:gpioa_pdor 为输出寄存器,32位,是字操作。对其赋值,为1的位输出高电平,为0的位输出低电平;

gpioa_psor为输出置1寄存器,32位,是位操作。对其赋值,为1的位输出高电平,为0的位保持原来的电平;

gpioa_pcor为输出置0寄存器,32位,是位操作。对其赋值,为1的位输出低电平,为0的位保持原来的电平;

7. 掌握gpio初始化的编程。

例.要求设置portb的引脚ptb7为一个输出,并在其上输出高电平(或低电平),试写出所有相关的初始化及输出语句,并在每一c语句后面加注释。

sim_scgc5 |=1<<10); 打开portb模块时钟。

portb_pcr7 |=1<<8); ptb7为gpio

portb_pddr |=1<<7ptb7方向为输出。

portb_psor |=1<<7设为高电平

or portb_pcor |=1<<7; /设为低电平)

例.设置portb的引脚ptb9为一个按键输入,并说明怎样读取相应按键的状态?试以c语句说明,并对每一行做注解。

答:初始化语句:

sim_scgc5 |=1<<10);

portb_pcr9 = 1<<8)|(0xa<<16)| gpio, no interrupt,

1<<1)|(1<<0); pull enale,pull up

判断输入:if(portb_pdir & 1<<7)) maskoff all except the bit7

// source line(s) if ptb7 is in the high voltage level

else// source line(s) if ptb7 is in the low voltage level

写一个程序段,利用ptc口输入寄存器中的d6和d5两位的内容,产生4种选择性的执行的示例。

答:(假设初始化都已经完成,不再重复)

switch(portc_pdir & 3<<5)) maskoff all except the bit6 and bit5

case (0<<5): condition0 met,your code here

break;

case (1<<5): condition1 met,your code here

break;

case (2<<5): condition2 met,your code here

break;

case (3<<5): condition3 met,your code here

break;

default: breaknot necessary here

9.掌握将按键作为外部中断的中断编程。

例:porta的pta1的上升沿与porte的pte26的下降沿分别连接两只按钮。如果以中断方式工作,则寄存器porta_pcr1和porte_pcr26分别应该这样设置?

答:prota_ pcr1 = 9<<16) |1<<8) |3 ;

prote_ pcr26 = 10<<16) |1<<8) |3;

说明: 在 d19:16字段irqc,9 = 1001b上升沿中断;10 = 1010b上升沿中断;

在 d10:8 字段 mux,1 = 001b,选择gpio功能;

在 d2:0 字段 sre pe ps ,3 = 001b,dv/dt快,上拉使能,上拉;

以上两个中断引脚,对于kinetis是否属于同一个模块?如果不是,那么他们的中断编号分别是多少?

答:以上两个中断分属于两个模块,即porta和porte; 中断编号:分别为87和91

说明:porta~porte vector 103~107 irq 87~91

如果已知中断号为n,怎样才能中断使能这个中断?

以实参为n调用下面的函数: enable_irq(n) ;

void enable_irq (int irq)

switch (irq/32)

case 0: nvicicpr0 |=1 <

nviciser0 |=1 <

break;

case 1: nvicicpr1 |=1 <

nviciser1 |=1 <

break;

case 2: nvicicpr2 |=1 <

nviciser2 |=1 <

break;

10. 寄存器中标注的isf和w1c分别是什么含义?

答:在模块的中断标识寄存器、或者portx_pcrn中,有isf/w1c位。该位读出为isf,表示有中断挂起;该位写1,就可以清除挂起的模块中断。

第五章时钟系统。

1. kinetis有哪些时钟源可供选择?

飞思卡尔k60时钟有3个时钟源:

内部参考时钟源irc (internal reference clock),包括fast irc(4mhz irc)和slow irc (32khz irc);

外部参考时钟源,可由外部有源晶体振荡器产生时钟直接经extal0引脚输入,或由外部晶体经extal0和xtal0两个引脚输入后通过晶体谐振器产生;

外部32k rtc时钟源,使用extal32和xtl32两个引脚输入。

2. 什么是fll,pll? 分别对什么进行倍频?

内部包含了一个锁频环fll和一个锁相环pll,分别对内部参考时钟信号和外部时钟参考信号进行倍频。

3. 配置时钟时,分为内核时钟、总线时钟、flash时钟,开发试验板上的时钟分别配置成多少?外部参考时钟的频率是多少?

内核时钟96m、总线时钟48m、flash时钟24m

外部参考时钟源50m

4.时钟系统初始化时,复位后工作在哪种模式? 需要配置成哪种模式?配置顺序怎样?fei-> pee的配置顺序为:

fei ->fbe ->pbe ->pee

5.针对开发实验板,在软件初始化时钟之前(pll-init()函数调用之前),kinetis k60的默认时钟是哪个?时钟频率大约是多少?调用后,时钟是哪个?时钟频率是多少?

在时钟初始化之前,复位后默认时钟是32k,时钟频率20.97m,调用pll-init()完成时钟初始化后,内核时钟96m,总线时钟48m,采用的是外部时钟50m输入。

嵌入式嵌入式系统原理与设计

第六章 iic总线。一 iic总线介绍 i2c总线 1.结构。2.工作原理 a b 主机 主设备 负责生成scl时钟,同时负责发出其实信号s和终止信号p 从机 从设备 被主机寻址的器件。1 a检测i2c总线是否 空闲 如果空闲 高 a发出起始信号 scl高,sda 2 寻址选择目标器件b,发送7位地...

嵌入式嵌入式系统原理与设计

课前提问 xscale 内核,intel公司。arm7 内核,第七个版本。armv5te 指令集,v5版本,加入16位thumb指令集,加入dsp指令集。cortex m3 内核,arm公司,arm11之后开始以cortex命名 5.几款arm处理器内核比较 arm11比arm10主频高,能耗低,所...

嵌入式嵌入式系统原理与设计

课前复习 sdram 突发传输同一行起始地址。norflash 读 ce 低 oe 低 we 高 a0 a18 d0 d7 擦出写1 片 6个周期 6s 块 6个周期 0.7s 写写04个周期 ain 9 s 字节编程din nand flash 4096块 32页 512 16 字节。64m 2m...