嵌入式系统的特点:
应用的特定性和广泛性
技术、知识、资金的密集性
高效性
较长的生命周期
高可靠性
软硬一体,软件为主
无自举开发能力(需独立开发系统)
单片机:在一片半导体硅片上集成了中央处理单元(CPU)、存储器(RAM/ROM)和各种I/O接口的微型计算机。这样一块集成电路芯片具有一台微型计算机的功能,因此被称为单片微型计算机,简称单片机。
单片机主要应用:在测试和控制领域,由于单片机在使用时,通常处于核心地位并嵌入其中,因此我们也常把单片机称为嵌入式微控制器(Embedded Microcontroller Unit ),把嵌入某种微处理器或单片机的测试和控制系统称为嵌入式控制系统。
大端格式:字数据的高字节存储在低地址中,而字数据的低字节则存放在高地址中。
小端格式:低地址中存放的是字数据的低字节,高地址存放的是字数据的高字节。
Linux的目录结构
  Linux继承了Unix操作系统结构清晰的特点。在Linux下的文件结构非常有条理,不同目录下存放不同功能的相关文件。
  (1)  /bin。显而易见,bin是二进制(binary)的英文缩写。在一般的系统当中,都可以在这个目录下到Linux常用的命令。在有的版本中还会到一些和根目录下相同的目录。
  (2)  /boot。在这个目录下包含了操作系统的内核和在启动系统过程中所用到的文件。
(3)  /dev。dev是设备(device)的英文缩写。在这个目录中包含了所有Linux系统中使用的外部设备。
(4)  /etc。这个目录是Linux系统中最重要的目录之一。在这个目录下存放了系统管理时要用到的各种配置文件和子目录。用户要用到的网络配置文件、系统配置文件、文件系统、设备配置信息、设置用户信息等都在这个目录下。
 (5)  /sbin。这个目录用来存放系统管理员的系统管理程序。
  (6)  /home。如果用户建立一个用户,用户名是“xx”,那么在/home目录下就有一个对应的/home/xx路径,用来存放用户的主目录。
  (7)  /lib。lib是库(library)的英文缩写。这个目录是用来存放系统动态连接共享库的。几乎
所有的应用程序都会用到这个目录下的共享库。因此,千万不要轻易对这个目录进行操作,一旦发生问题,系统将不能正常工作。
  (8)  /lost+found。这个目录在大多数情况下都是空的。但是如果正在工作时突然停电,或是没有用正常方式关机,在重新启动机器的时候,有些文件就会不到应该存放的地方,对于这些文件,系统将它们放在这个目录下,就像为无家可归的人提供一个临时住所一样。
  (9)  /mnt。这个目录在一般情况下也是空的。用户可以临时将别的文件系统挂在这个目录下。
  (10)  /proc。可以在这个目录下获取系统信息。这些信息是在内存中,由系统自己产生的。
  (11)  /root。如果用户是以超级用户的身份登录的,这个就是超级用户的主目录。
(12)  /tmp。这个目录用来存放不同程序执行时产生的临时文件。
  (13)  /usr。这是Linux系统中占用硬盘空间最大的目录。用户的很多应用程序和文件都存放在这个目录下。
(4)  insmod命令:向内核添加模块,如驱动模块。
  (5)  rmmod命令:向内核添加模块,如rmmod获至宝rtl8139删除名为rtl8139的驱动模块。
  (6)  startx:进入Linux虚拟机图形界面。
  (7)  Ctrl + C:中断Shell命令。
  (8)  adduser:添加用户命令。
  (9)  userdel:删除用户命令。
什么是Makefile?
一个工程中的源文件不计其数,其按类型、功能、模块分别放在若干个目录中,Makefile定义了一系列的规则来指定,哪些文件需要先编译,哪些文件需要后编译,哪些文件需要重新编译,甚至于进行更复杂的功能操作。Makefile就像一个Shell脚本一样,其中也可以
执行操作系统的命令。
  Makefile带来的好处就是自动化编译。一旦写好,只需要一个make命令,整个工程完全自动编译,极大的提高了软件开发的效率。
  什么是make?
  make是一个命令工具,用于解释Makefile中的指令。
Makefile文件内容
  Makefile主要包含了以下五个部分:
  (1) 显式规则。
   (2) 隐晦规则。
  (3) 变量的定义。嵌入式系统开发是什么
   (4) 文件指示。
   (5) 注释。
Makefile规则
  以下用一个示例来说明Makefile的书写规则。一个工程中有a.c、b.c两个文件。
Linux下GNU的Make工作流程如下: 
  ① 查当前目录下的Makefile文件;
  ② 初始化Makefile文件中的变量;
  ③ 分析Makefile中的所有规则;
  ④ 为所有的目标文件创建依赖关系;
  ⑤ 根据依赖关系决定哪些目标文件要重新生成;
  ⑥ 执行生成命令。
  可见,make命令执行时,需要一个Makefile文件,以告诉make命令需要怎样的去编译和连接程序。
  此外,make还有丰富的命令行选项,可以完成各种不同的功能。表3-5列出了常用make命令行选项。
 JTAG口
  JTAG 技术是一种嵌入式调试技术,它在芯片内部封装了专门的测试电路测试接口(TAP,Test Access Port),通过JTAG 测试工具对芯片的核进行测试。它是联合测试行动小组(JTAG,Joint Test Action Group)定义的一种国际标准测试协议,主要用于芯片内部测试及
对系统进行仿真、调试。
1、 Flash指的是闪存,属于非易失性存储器,内存的一种,相对于SDRAM等存储器,断电后,内部的数据仍然可以保存。它的高集成度和低成本使它成为市场主流。 Flash根据技术方式分为Nand 、Nor Flash和AG-AND Flash 。作为一种非易失性存储器,Flash在系统中通常用于存放程序代码、常量表以及一些在系统掉电后需要保存的用户数据等。
2、    Flash 芯片是由内部成千上万个存储单元组成的,每个单元存储一个bit。具有低功耗、大容量、擦写速度快、可整片或分扇区在系统编程(烧写)、擦除等特点,并且可由内部嵌入的算法完成对芯片的操作,因而在各种嵌入式系统中得到了广泛的应用。
3、常用的Flash为8位或16位的数据宽度,编程电压为3.3V。主要的生产厂商为INTEL、ATMEL、AMD、HYUNDAI等。Flash 技术根据不同的应用场合也分为不同的发展方向,有擅长存储代码的NOR Flash和擅长存储数据的NAND Flash。
CISC:复杂指令集(Complex Instruction Set Computer)
具有大量的指令和寻址方式,指令长度可变
8/2原则:80%的程序只使用20%的指令
大多数程序只使用少量的指令就能够运行。
RISC:精简指令集(Reduced Instruction Set Computer)
只包含最有用的指令,指令长度固定
确保数据通道快速执行每一条指令
使CPU硬件结构设计变得更为简单
1、为什么采用高速缓存
      微处理器的时钟频率比内存速度提高快得多,高速缓存可以提高内存的平均性能。
2、高速缓存的工作原理
        高速缓存是一种小型、快速的存储器,它保存部分主存内容的拷贝。   
1、 S3C2410的中断源有哪些?它们占用多少中断向量?
答:S3C2410有56个中断源,有32个中断源提供中断控制器。
    它们占用6个中断向量。
2、 S3C2410的中断模式有哪两种?如何设置中断模式?
答:S3C2410两种中断模式,即FIQ模式(快速模式)和IRQ模式(通用模式)。
设置中断模式是通过中断模式控制寄存器设置。
3、 S3C2410的中断源挂起寄存器和中断挂起寄存器的区别和作用有哪些?
答:区别:中断源挂起寄存器,反映哪个中断源向CPU申请了中断;中断挂起寄存器,反映CPU正在响应的中断是哪个中断源申请的。
作用:中断源向CPU申请了中断如果该中断源没被屏蔽并且没有和它同级或高级的中断源申请中断,才能被响应。系统中可以有多个中断源向CPU申请中断,但同一时刻CPU只能响应一个最高级的中断源中断请求。中断源挂起寄存器和中断挂起寄存器反映了中断系统不同时段的状态。
4、 如何清除中断请求?如何响应某中断源申请的中断?
答:清除中断请求:进入中断服务程序先清中断源挂起寄存器和中断挂起寄存器; 
      响应中断源申请的中断:INTMSK寄存器的相应位(屏蔽位)为1时,对应的中断被禁止;当INTMSK寄存器的屏蔽位为0时,则相应的中断正常实行。
5、 S3C2410有多少个I/O口?其控制寄存器、数据寄存器和上拉电阻允许寄存器的作用是什么?
答:S3C2410芯片上共有117个多功能的输人/输出引脚,它们是:
1个23位的输出端口(端口A);
1个11位的输入/输出端口(端口B);
1个16位输入/输出端口(端口C);
1个16位输入/输出端口(端口D);
1个16位输入/输出端口(端口E);
1个8位输人/输出端口(端口F);
1个16位输入/输出端口(端口G);
1个11位的输入/输出端口(端口H)。
控制寄存器定义了每个引脚的功能;与I/O口进行数据操作,不管是输入还是输出,都是通过该口的数据寄存器进行的,如果该端口定义为输出端口,那么可以向GPnDAT的相应位写
数据。如果该端口定义为输人端端口,那么可以从GPnDAT的相应位读出数据。
上拉寄存器控制每个端口组上拉电阻的使能/禁止。如果上拉寄存器某一位为0,则相应的端口上拉电阻被使能,该位做基本输入/输出使用,即第1功能;如果上拉寄存器某一位是1,则相应的端口上拉电阻被禁止,该位做第2功能使用。
6、 Linux作为嵌入式操作系统的优势有哪些?
答:Linux可应用于多种硬件平台。Linux已经被移植到多种硬件平台,这对于经费,时间受限制的研究与开发项目是很有吸引力的。原型可以在标准平台上开发后移植到具体的硬件上,加快了软件与硬件的开发过程。
Linux采用一个统一的框架对硬件进行管理,从一个硬件平台到另一个硬件平台的改动与上层应用无关。
Linux可以随意地配置,不需要任何的许可证或商家的合作关系,源代码可以免费得到。这使得采用Linux作为操作系统不会遇到任何关于版权的纠纷。毫无疑问,这会节省大量的开发费用。本身内置网络支持,而目前嵌入式系统对网络支持要求越来越高。
Linux的高度模块化使添加部件非常容易。
7、 系统的基本初始化内容包括哪些?
答:系统的基本初始化内容一般包括:
分配中断向量表
初始化存储器系统                 

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。