当前位置:文档之家› 嵌入式系统概论

嵌入式系统概论

嵌入式系统概论
嵌入式系统概论

实验报告

课程名称:嵌入式系统概论

姓名:

系:信息与机电工程系

专业:电子信息工程

年级:

学号:

指导教师:

职称:

2011~2012学年第一学期

实验项目列表

序号实验项目名称成绩指导教师

1 实验一搭建实验环境

2 实验二HelloWorld

3 实验三编译Bootloader

4 实验四编译Linux内核

实验五制作文件系统、烧写各部分到目

5

程丽标板

实验一搭建实验环境

1.实验目的和要求

1)正确连接宿主PC机与PXA270-EP目标板。

2)建立宿主 PC机端的开发环境。

3)配置宿主 PC机端的minicom,使宿主PC机与PXA270-EP目标板可以通过串口通讯。

4)配置宿主 PC机端的TFTP服务,并开通此服务。

5)配置宿主P机端的NFS 服务,并开通此服务。

2.实验原理

绝大多数的Linux 软件开发都是以native 方式进行的,即本机(HOST)开发、调试,本机运行的方式。这种方式通常不适合于嵌入式系统的软件开发,因为对于嵌入式系统的开发,没有足够的资源在本机(即板上系统)运行开发工具和调试工具。通常嵌入式系统软件的开发采用交叉编译调试的方式。交叉编译调试环境建立在宿主机(即一台PC 机)上,对应的开发板叫做目标板,如图1-1。

图1-1

开发时使用宿主机上的交叉编译、汇编及连接工具形成可执行的二进制代码,(这种可执行代码并不能在宿主机上执行,而只能在目标板上执行。)然后把可执行文件下载到目标机上运行。调试时的方法很多,可以使用串口,以太网口等,具体使用哪种调试方法可以根据目标机处理器所提供的支持做出选择。宿主机和目标板的处理器一般都不相同,宿主机为Intel或AMD 处理器,而目标板可以为SAMSUNG S3C2410或其它处理器,本系统是

PXA270。GNU 编译器提供这样的功能,在编译编译器时,可以选择开发所需的宿主机和目标机从而建立开发环境。所以在进行嵌入式开发前第一步的工作就是要安装一台装有指定操作系统的PC机作宿主开发机,对于嵌入式Linux,宿主机上的操作系统一般要求为Redhat Linux,在此,我们推荐使用Redhat 9.0作为宿主机(开发主机)的操作系统。需要宿主机器

在硬件上具有标准串口,并口,网口;软件上具有目标板的Linux内核、ramdisk文件系统映像以及bootloader。软件的更新通常使用串口或网口,最初的bootloader 烧写是通过并口进行的。

3.主要仪器设备

1)一套PXA270EP嵌入式实验箱。

2)安装Redhat9的宿主PC机,并且配置好ARM Linux的开发环境。

4.操作方法与实验步骤

一、连接宿主PC机与PXA270-EP目标板

1.将电源线分别连接PXA270-EP目标板与电源插座。

2.用一根串口线将宿主PC 机的串口与PX270 目标板的串口0(UART0)相连,如图1-2。

3.用一根交叉对接网线将宿主PC 机的网口与PX270 目标板的网口(NET)相连,如图1-3,

图1-4。

4.用JTAG-XSCALE 分别连接并口线和JTAG 下载线,然后将它们分别插到宿主PC机的并口

LPT1 口和PXA270-EP目标板的CPU JTAG 插槽中(在音频接口的左侧)。在连接JTAG 下载线时,PXA270-EP目标板必须是断电状态。

图1-2

图1-3

图1-4

二、配置宿主PC机端的minicom

配置宿主PC机端的minicom,使宿主PC机与PXA270-EP目标板可以通过串口通讯。

1.硬件连接:

按照实验一的步骤,连接宿主PC机和一台PXA270-EP目标板。

2.minicom很像Windows 下面的超级终端,我们利用minicom作为PXA270 目标板的终端

显示窗口,所以在我们开始实验前,先需要正确的配置minicom,打开宿主机端一个终端窗口(Terminal),点击【Red Hat Linux →System Tools →Terminal】启动终端窗口,输入下列1 条命令:

①minicom –s

对于minicom进行设置,如图1-5,图1-6:

输入上述1条命令后,进入configuration中,通过移动键盘上下键选择Serial port setup选项,回车后,单击键盘A键,输入/dev/ttyS0,回车,单击键盘E 键后,单击键盘I键和Q 键设置传输波特率为:115200 和8-N-1,单击回车后,单击键盘F 键,将硬件控制流设为:NO选项,单击回车后,通过移动键盘上下键选择Save setup as df1 选项,单击回车,完成设置,通过移动键盘上下键选择Exit 退回到minicom界面,如图1-7,而图1-8 则表示已经进入了minicom的终端窗口。

图1-8为minicom启动后的状态。注意,如果要退出minicom,可以先按CTRL+A键,再按X 键(注意并不是连续按这三个键),选择Yes 退出minicom。按CTRL+A再按Z为进入帮助。三、配置宿主PC机端的TFTP服务,并开通此服务

TFTP的全称是Trivial File Transfer Protocol,即简单文件传输协议。使用此服务传送文件时没有数据校验、密码验证,非常适合小型文件的传输。在通过TFTP 传送文件时,需要服务端和客户端,对于我们嵌入式系统来讲,服务端就是我们的宿主机,下面我们来对它进行配置:

1.在宿主PC 机端,打开一个终端窗口(Terminal),点击【Red Hat Linux →System Tools

→Terminal】启动终端窗口,输入下列1 条命令执行,如图1-9:

①setup

进入设置界面后,通过键盘上下键选择System services,如图1-10,回车后,使用空格键将tftp一项选中(出现[*]表示选中),并使用空格键去掉ipchains 和iptables 两项服务(即去掉它们前面的*号),如图1-11。然后单击键盘Tab键选中Ok退出到设置主界面。

然后通过键盘上下键选择Firewall configuration,使用键盘Tab键移到No firewall,并用空格键将其选中,如图1-12。然后单击键盘Tab 键选中Ok 退出到设置主界面。最后,再次单击键盘Tab键选中Quit退出整个设置界面。退出setup。

2.在上面同一个终端窗口中输入下列1条命令以启动TFTP 服务:

①service xinetd restart

上述1条命令执行完之后,会出现如下信息,如图1-13:

Stopping xinetd :[ OK ]

Starting xinetd :[ OK ]

配置完成后,建议简单测试一下TFTP 服务器是否可用,即自己tftp 自己,在上面同一个终端窗口中,请输入下列5 条命令,如图1-14:

①ifconfig eth0 192.168.0.100 up /*设置宿主PC机的IP地址*/

②cp /pxa270_linux/IMAGE/zImage /tftpboot -arf /*在本地准备一个文件*/

③tftp 192.168.0.100 /*用tftp服务登陆本机*/

④tftp> get zImage /*使用tftp服务得到文件zImage*/

⑤tftp> q /*退出tftp服务*/

四、配置宿主PC机端的NFS 服务,并开通此服务

NFS(Network File System)指网络文件系统,是Linux系统中经常使用的一种服务,NFS 是一个RPC service,很像windows 中的文件共享服务。它的设计是为了在不同的系统间使用, 所以它的通讯协议设计与主机及作业系统无关。当使用者想用远端档案时只要用"mount"就可把remote 档案系统挂接在自己的档案系统之下,使得远端的档案在使用上和local 的档案没两样。

1.在NFS服务中,宿主机(Servers)是被挂载(mount)端,为了远端客户机(Clients)

(如:PXA270 目标板)可以访问宿主PC 机的文件,需要配置宿主机两方面内容:①打开NFS服务,②允许“指定用户”访问宿主PC机。在宿主PC 机端,打开一个终端窗口(Terminal),点击【Red Hat Linux →System Tools →Terminal】启动终端窗口,输入下列1条命令打开宿主机的NFS服务,如图1-13,1-14:

①setup

进入设置界面后,通过键盘上下键选择System services,回车后,使用空格键将nfs 一项选中(出现[*]表示选中),并使用空格键去掉ipchains 和iptables 两项服务(即去掉它们前面的*号),如图1-15。然后单击键盘Tab 键选中Ok 退出, 再次单击键盘Tab 键选中Quit 退出整个设置界面。

2.在上面打开的同一个终端窗口(Terminal)中,修改根目录下etc目录中的exports文件,

“指定用户”是通过编辑文件“exports”:请输入下列2条命令允许“指定用户”访问宿主PC机:

①ifconfig eth0 192.168.0.100 up

②vi /etc/exports

这时,将进入vi编辑器所显示的exports文件中。单击键盘A键,进入vi编辑器的输入状态(Insert), 通常这是一个空文件。通过键盘上下键移动光标到文件顶端,输入下列1 条语句,当然若不是空文件,则另起一行,请您输入下列语句,如图1-16:

/ 192.168.0.50(rw,insecure,no_root_squash,no_all_squash)

上述1条语句输入完成后,单击冒号、Esc键进入vi编辑器的命令状态,然后单击键盘输入:wq,

保存已编辑的exports文件并退出vi 编辑器。

3.在上面打开的同一个终端窗口(Terminal)中,重新启动nfs服务,请您输入下列2条相

同的命令:

①/etc/rc.d/init.d/nfs restart

若出现下列打印信息,则表示宿主PC机重新启动了nfs 服务,如图1-17。

Shutting down NFS mountd: [ OK ]

Shutting down NFS daemon: [ OK ]

Shutting down NFS quotas: [ OK ]

Shutting down NFS services: [ OK ]

Starting NFS services: [ OK ]

Starting NFS quotas: [ OK ]

Starting NFS daemon: [ OK ]

Starting NFS mountd: [ OK ]

当设置生效后,即表示:允许IP 地址为192.168.0.50 的机器访问您的IP 地址为192.168.0.100 的宿主PC 机的根目录(/)。当然可以更改这个IP 地址,以让不同的计算机访问宿主机的内容。现在NFS就可以使用了。

5.实验内容及实验数据记录

图1-5

图1-6

图1-7

图1-8

图1-9

图1-10

图1-11

图1-12

图1-13

图1-14

图1-15

图1-16

图1-17

6.实验数据处理与分析

一、连接宿主PC机与PXA270-EP目标板

1.当不用JTAG 烧写BLOB 即BOOTLOADER 到PXA270-EP 目标板上时,就不需要做第

4 步的连接步骤。前面的1、2、3步操作是在每次做实验之前必须连接好的。注意串口

不要连错,是(UART 0)。请看清目标板上的标注信息。

2.不要热拔插JTAG 接口。一定在PXA270-EP目标板断电状态进行拔插JTAG。配置宿主

PC机端的minicom

二、配置宿主PC机端的minicom

1.务必按照本实验指导书提供给的参数来设置minicom,否则即便正确连接了宿主PC机和

PXA270-EP目标板,并给目标板通电后,在minicom中也无法看到目标板的启动信息。

2.在宿主PC 机的终端窗口中,进入了minicom之后,再给PXA270-EP 目标板上电

3.每次只能打开一个minicom终端窗口。

三、配置宿主PC机端的TFTP服务,并开通此服务

1.当每次重新启动宿主PC 机的Linux 操作系统时,务必通过ifconfig命令查看该机的IP

地址,若其已经复位,请将其重新通过命令ifconfig eth0 192.168.0.100 up重置宿主PC机的IP地址。且请您务必将宿主PC机的IP地址设置为192.168.0.100。

2.当按照本实验指导书设置完tftp服务后,通过实际的传输文件来验证该服务能够正常工

作。

3.在用tftp 服务完成宿主PC 机与PXA270-EP 目标机之间的文件的传输时,必须先将要

下载传输的文件拷贝到宿主PC机的/tftpboot目录中,否则将无法完成文件传输操作。

四、配置宿主PC机端的NFS 服务,并开通此服务

1.当每次重新启动宿主PC 机的Linux 操作系统时,务必请通过ifconfig 命令查看该机的

IP地址,若其已经复位,请将其重新通过命令ifconfig eth0 192.168.0.100 up重置宿主PC机的IP地址。否则挂载宿主PC机到PXA270-EP目标板的操作会不成功(即命令mount –o nolock 192.168.0.100:/ /mnt 将操作不成功)。

2.在minicom中用命令ifconfig eth0 192.168.0.50 给PXA270 目标板设置IP 地址。宿主

机和PXA270目标板的IP地址要设置在同一网段内的。否则将无法通信。

7.质疑、建议、问题讨论

通过搭建实验环境这个实验,初步了解了实验的大体步骤,并且对实验箱有一定的了解。然后在linux系统下通过输入一些指令,配置FTP,TFTP,NFS等服务。完成了实验环境的搭建。通过自己动手做实验,掌握了实验中的很多注意事项,提高了动手实践能力。加深了对书本知识的印象。

实验二HelloWorld

1.实验目的和要求

第一次正面接触嵌入式Linux 的开发,第一次编写嵌入式系统的应用程序,亲身实践一下开发的步骤。

2.实验原理

C语言编程知识

3.主要仪器设备

3)一套PXA270EP嵌入式实验箱。

4)安装Redhat9的宿主PC机,并且配置好ARM Linux的开发环境。

4.操作方法与实验步骤

1.硬件连接:

按照实验一的步骤,连接宿主PC机和一台PXA270-EP目标板。

2.打开宿主PC机电源,进入Linux 操作系统。

3.启动RedHat 9.0的图形界面,如图2-1,若您是以root 身份登陆在文本模式下,则输入命

令startx启动图形界面。进入RedHat 9.0图形界面后,打开一个终端窗口(Terminal),点击【Red Hat Linux →System Tools →Terminal】启动终端窗口。

4.打开终端窗口如图2-2:

5.输入minicom然后回车,如图2-3,图2-4。minicom程序应该在以前的步骤中已经设置过

了,设置应为115200 8N1 无流控。若您当前的minicom并不是我们所要求的参数,请您按照实验一重新设置minicom,否则宿主PC机与PXA270-EP目标板将无法通信。

6.打开PXA270-EP目标板电源,按目标板上的RESET键,在minicom中应该会出现如下画

面,如图2-5:

7.在minicom终端窗口中,如图2-6,输入下列4条命令:

①root /* 输入root用户进入目标板的文件系统中*/

②ifconfig eth0 192.168.0.50 up /*设置PXA270-EP目标板的IP地址*/

③mount –o nolock 192.168.0.100: //mnt

/*挂载宿主机根目录到目标板的/mnt 目录下*/

④cd /mnt /*进入目标板的/mnt目录下*/

此时,先将该窗口最小化,在后面的第10操作步骤中还将会回到该窗口中进行操作。

8.宿主机上打开一个终端窗口(Terminal),点击【Red Hat Linux →System Tools

→Terminal】启动终端窗口,输入下列4条命令:

①cd /home

②mkdir HW

③cd HW

④vi HelloWorld.c /*请您输入程序2.1程序清单*/

此时会显示一个空白的屏幕,这条命令的含义是,使用Vi 编辑器,对一个名叫HelloWorld.c 的文件进行编辑,我们看到的空白窗口是对文件进行编辑的窗口,如图2-7。就像在Windows 系统下面使用写字板等一样道理。(关于Vi 编辑器的使用方法可以参阅附录或其他资料)在vi 里面先单击键盘A 键,然后左下角会变成—INSERT—模式,表示进入了vi 的输入模式。输入程序的时候和其他编辑器是一样的,如图2-8。

当输入程序完毕后,单击键盘Esc 键,然后按“:”(冒号)此时左下角会出现冒号然后输入“wq”最后按“Enter”确认存盘退出vi 编辑器,如图2-9。

9.在上面同一个终端窗口中,输入下列2条命令交叉编译HelloWorld.c源程序,并查看生成

的.o目标文件,如图2-10,图2-11:

①arm-linux-gcc –o HelloWorld HelloWorld.c

②ls

等到再次出现提示符,代表程序已经正确编译。如果此步出现错误信息,请查看错误信息,并且重新编辑原来的C文件,修改错误。直到正确编译。

此条命令的含义是,调用交叉编译器arm-linux-gcc编译HelloWorld.c文件。因为我们已经在实验一中加入了该命令的路径,所以在任何路径下,可以直接输入命令arm-linux-gcc编译源程序文件,参数-o 后边为目标文件,编译后生成HelloWorld,如果编译出错,将不产生此文件。此编译器arm-linux-gcc 生成的可执行文件HelloWorld 文件是不能在宿主PC 机上运行的,只能在PXA270-EP 目标板上运行,所以下面我们将转到minicom的终端窗口中运行该目标程序。

10.重新打开第7步最小化的开有minicom的终端窗口,即到PXA270-EP目标板的mnt目录

下,请您输入下列3条命令,运行HelloWorld编译成功的HelloWorld目标程序:

①cd home/HW /*回到minicom 中目标板的/mnt/home/HW 目录下*/

②ls

③./ HelloWorld /*此时会看到如图2-12*/

程序清单2.1

*************************************************************************** //HelloWorld.c

#include

int main()

{

printf(“HelloWorld!\n”);

return 0;

}

*************************************************************************** 5.实验内容及实验数据记录

图2-1

图2-2

图2-3

图2-4

图 2-5

图 2-6

图 2-7

图2-8

图 2-9

图2-10

图2-11

图 2-12

6.实验数据处理与分析

7.质疑、建议、问题讨论

对于helloword这个实验,是第一次正面接触嵌入式Linux 的开发,第一次编写嵌入式系统的应用程序,刚开始有点无从下手。应该是对于嵌入式linux开发的陌生。通过与同学交流,讨论。首先看同学操作,然后再自己动手实践,这样,对实验有了感性的认识,并且在实验中对于linux操作的一些命令更加熟练。

嵌入式系统概论_第七章

四系统行为描述(计算)模型

计算模型(Computation Model) 概述 时序程序模型 有限状态机(FSM) 并发进程模型 数据流模型 流程图 小结

计算模型-概述(1) 计算模型(computation Model)描述系统的处理行为(过程)的方法 模型作用 帮助设计者理解和描述系统行为 减少系统缺陷(bug) Most system bugs come from mistakes made describing the desired behavior rather than from mistakes in implementing that behavior.

计算模型-概述(2) 描述嵌入式系统的模型 时序程序模型(sequential program model) 提供一组语句、语句排列的规则 说明语句如何以一次一条的方式执行 表现为程序伪码 状态机模型(State machine model) 提供系统状态及状态之间转换的条件和方式 常用于以控制为主的系统 主要行为包括监视控制输入、设置控制输出来相 应

计算模型-概述(3) 描述嵌入式系统的模型(续) 并发进程模型(parallel process model) 描述多个进程执行的时序,以及进程之间的通讯过程。 适用于多进程系统 数据流(dataflow model) 描述过程中数据流动的路径 常用于以数据为主的系统 主要行为将输入数据流转换为输出数据流 面向对象模型(Object-oriented model) 将复杂的软件分为简单而确定的片断

嵌入式系统软件嵌入式系统软件

嵌入式系统软件 杨剑锋 1. 嵌入式操作系统 嵌入式操作系统是个集合,而且是个无限集合 –监控程序?常规操作系统 (红外线?紫外线) –一维和多维 嵌入式操作系统常常有实时要求–早期:嵌入式操作系统= 实时操作系统 –近期: ?1)手持计算机和掌上计算机的出现; ?2)CPU速度的提高; ?3)常规操作系统增加实时进程调度的支持,如 POSIX.4 ?嵌入式操作系统<>实时操作系统 许多嵌入式操作系统的内核是微内核结构 许多嵌入式操作系统都不带磁盘 –根本不支持文件系统 –结构上为了设备驱动而支持文件系统,但不 支持文件系统的文件存储功能 许多嵌入式操作系统不采用存储管理技术,即不支持虚拟存储技术 许多嵌入式操作系统不划分“系统空间”和“用户空间” –操作系统的“内核”与外围应用程序之间不再 有物理的边界; –系统中所谓“进程”实际上全都是内核线程?静态连接、系统调用、进程调度/切换–对任何一个应用程序做细微的修改,都得重新生成整个系统,并且“下载”之; –系统调用的界面太庞大; –共享变量的访问,需要谨慎对待; –把通用操作系统上的应用移植过来需考虑“可重入”的问题;

不分系统空间和用户空间<>必须静态连接–如DOS、CP/M的INT21 不分系统空间和用户空间<>不能用页面映射技术 –但只用于不同进程之间,而非不同空间之间 即使采用了存储管理,基本上都不采用页面交换技术 重启动技术(watch dog) 2. RTOS 是否实时 –一方面是多大程度上充分发挥硬件潜力,即综合速度快慢的问题; –另一方面同时也是反映的速度在多大的程度上得到保证的问题 中断延迟(Interrupt Latency)–中断不可嵌套 –LINUX的Bottom Half –中断可嵌套:优先级中断 ?大多微处理器不支持; ?LINUX不支持; ?UNIX支持 –与指令集有关 –DMA操作有关 –保证系统调用的原子性有关 调度延迟(Scheduling Latency)–中断处理程序进程处理 –一般调度算法(Round Robin)不能及时选 中 –基于优先级调度算法,一般能及时选中?如果目标进程优先级低呢? –可剥夺调度和不可剥夺调度 ?LINUX是属于什么调度? ????????????→ 事件或软中断 Linux 既不是完全的可剥夺,也不是完全的不可剥夺 上下文切换延迟(Context Switch Latency)–大小取决于CPU和操作系统 –采用MMU > 不采用MMU 只要发生调度,就能选中目标进程吗? –根据时间片的耗用调整优先级 –拉开距离,分等级 对实时进程而言,“应该没有问题”不够。 是否可以不用中断、也不用调度,回到 最简单的“监控程序”?

嵌入式系统概论讲解

第一章嵌入式系统概论 参考习题 1、嵌入式系统本质上是什么系统? 答:从本质上讲,嵌入式系统中的计算机总是处于一种实时计算模式,也可以认为嵌入式计算机应具有某种实时性。也就是说,从嵌入式系统的广义概念考虑,嵌入式系统都可以看成是实时系统。 2、嵌入式系统开发与PC机软件开发的区别是什么? 答:嵌入式开发就是设计特定功能的计算机系统,形象的说就是开发一种嵌入在一个机器上实现特定功能的一个系统。PC的开发往往是上层应用程序,会更多的和业务流程,数据库,UI打交道。嵌入式的开发主要是和底层打交道,例如内存,NAND, 各种控制器,中断调度等等。当然现在也有很多需要在嵌入式设备上开发上层应用程序的需求了。 3、嵌入式系统基本概念? 答:嵌入式系统是以应用为中心,以计算机技术为基础,软硬件可配置,对功能、可靠性、成本、体积、功耗有严格约束的专用系统。这类系统一般由嵌入式微处理器、外围硬件设备、嵌入式操作系统(可选择)以及应用程序等四个部分组成的。 4、嵌入式系统分类?

答:(1)按微处理器位数划分 按所采用的处理器位数,可以分为4位、8位、16位、32位和64位系统。 (2)按应用类别划分 可以简单地划分为信息家电、通信、汽车电子、航空航天、移动设备、军用电子、工业控制、环境监控等各种类型。 (3)按系统的实时性划分 硬实时系统、软实时系统和自适应实时。 (4)按工业界应用的复杂程度划分 简单单处理器系统 可扩展单处理器系统 复杂嵌入式系统 制造或过程控制中使用的计算机系统 第二章ARM嵌入式微处理器技术基础 参考习题 1、ARM32位指令、16位指令的特点。 答:ARM微处理器支持32位的ARM指令集和16位Thumb指令集,每种指令集各有自己的优点和缺点:ARM指令集效率高,但代码密度低;Thumb指令集具有较高的代码密度,却仍保持ARM的大多数性能上的优势,可看做ARM指令集的子集。

嵌入式软件系统设计方案案例

待定颜色 修改颜色 疑问颜色 采集器软件系统设计方案 版本历史

目录 1.引言 (5) 1.1 目的 (5) 1.2 背景和范围 (5) 1.3 定义 (5) 1.4 参考资料 (5) 2.系统结构 (5) 2.1 系统功能 (5) 2.2硬件系统框架 (6) 2.2 软件系统框架 (7) 3.上行规约解析模块设计说明 (9) 3.1描述 (9) 3.2功能 (9) 3.3设计思路(算法、流程) (9) 3.4接口 (10) 3.5资源分配、性能 (12) 3.6测试方法 (12) 4.读写参数模块设计说明 (12) 4.1描述 (12) 4.2功能 (12) 4.3设计思路(算法、流程) (13) 4.4接口 (13) 4.5资源分配、性能 (14) 4.6测试方法 (14) 5.周期抄表任务管理 (14) 5.1描述 (14) 5.2功能 (14) 5.3设计思路(算法、流程) (14) 5.4接口 (14) 5.5资源分配、性能 (14) 5.6测试方法 (15) 6.读历史电量数据模块设计说明 (15) 6.1描述 (15) 6.2功能 (15) 6.3设计思路(算法、流程) (15) 6.4接口 (15)

6.5资源分配、性能 (15) 6.6测试方法 (15) 7.数据存储和电表信息存储管理 (15) 7.1描述 (15) 7.2功能 (16) 7.3设计思路(算法、流程) (16) 7.4接口 (20) 7.5资源分配、性能 (20) 7.6测试方法 (20) 8.数据交换模块设计说明 (21) 8.1描述 (21) 8.2功能 (21) 8.3设计思路(算法、流程) (21) 8.4接口 (21) 8.5资源分配、性能 (21) 8.6测试方法 (21) 9.广播校时任务模块设计说明 (21) 9.1描述 (21) 9.2功能 (22) 9.3设计思路(算法、流程) (22) 9.4接口 (22) 9.5资源分配、性能 (22) 9.6测试方法 (22) 10.更改RS485通讯速率设计说明 (23) 10.1描述 (23) 10.2功能 (23) 10.3设计思路(算法、流程) (23) 10.4接口 (23) 10.5资源分配、性能 (23) 10.6测试方法 (23) 11.抄表记录周期任务设计说明 (23) 11.1描述 (23) 11.2功能 (23) 11.3设计思路(算法、流程) (23) 11.4接口 (23) 11.5资源分配、性能 (24)

归纳嵌入式系统概论习题

第一题单项选择题 1、ADDS R0,R1,R2执行完成后,不会对CPSR中的哪一位产生影响( B)? A、N B、C C、V D、F 2、FD表示( B )。 A、满递增堆栈 B、满递减堆栈 C、空递增堆栈 D、空递减堆栈 3、已知R0=0xFFFFFC0F,则执行MVN R1,R0后,R1的值为(C )。 A、0xFFFFFFFF B、0xFFFFFFF0 C、0x3F0 D、0x3F 4、在Linux中使用ls命令显示当前目录的所有内容应使用(A)参数? A、-l B、-a C、-d D、-i 5、在EMBEST IDE开发环境中,程序的默认入口地址为( C )。 A、0x C000 B、0x 1C00 C、0x 8000 D、0x 0 6、已知R0=0x1000,R1=0x2000则执行CMP R0,R1后,R0的值为(B) A、0x2000 B、0x1000 C、0xFFFFF000 D、0xFFFFEFFF 7、已知R1=0x2F,则执行mov R0,R1,ASL #2后,R0的值为(D )。 A、0xBC B、0xBF C、0x2F0 D、0x2F 8、在Linux中查看文件前10行内容的命令是( D)。 A、less B、cat C、tail D、head 9、已知R0=0xFC,则执行BIC R0,#0x3C后,R0的值为( D )。 A、0x18 B、0x24 C、0xC0 D、0x30 10、已知R0*R1=0x1C2F3E4D5C6B,则执行SMULL R2,R3,R0,R1后,R2和R3的值分别为(D)。 A、R2=0x1C2F3E4D R3=0x5C6B B、R2=0x5C6B R3=0x1C2F3E4D C、R2=0x1C2F R3=0x3E4D5C6B D、R2=0x3E4D5C6B R3=0x1C2F 11、EMPU是( B )。 A、嵌入式微控制器 B、嵌入式微处理器 C、片上系统 D、嵌入式数字信号处理器 12、以下不属于CPSR的条件码标志位的是(A)。 A、F B、N C、Z D、C 13、S3C44B0X的内核工作电压是( B )。 A、3.0V B、2.5V C、3.5V D、 1.5V 14、Linux中删除目录的命令是(B)。 A、rm B、 rmdir C、mkdir D、del 15、能实现ARM处理器在两种工作状态之间进行切换的命令是( D )。 A、B B、 BL C、 BLX D、BX 16、若CPSR寄存器的低5位(4-0)的值为10010,则ARM处理器工作于(B) 模式。 A、FIQ B、IRQ C、USER D、SVC

嵌入式软件开发流程

嵌入式软件开发流程 一、嵌入式软件开发流程 1.1 嵌入式系统开发概述 由嵌入式系统本身的特性所影响,嵌入式系统开发与通用系统的开发有很大的区别。嵌入式系统的开发主要分为系统总体开发、嵌入式硬件开发和嵌入式软件开发3大部分,其总体流程图如图1.1所示。 图1.1 嵌入式系统开发流程图 在系统总体开发中,由于嵌入式系统与硬件依赖非常紧密,往往某些需求只能通过特定的硬件才能实现,因此需要进行处理器选型,以更好地满足产品的需求。另外,对于有些硬件和软件都可以实现的功能,就需要在成本和性能上做出抉择。往往通过硬件实现会增加产品的成本,但能大大提高产品的性能和可靠性。 再次,开发环境的选择对于嵌入式系统的开发也有很大的影响。这里的开发环境包括嵌入式操作系统的选择以及开发工具的选择等。比如,对开发成本和进度限制较大的产品可以选择嵌入式Linux,对实时性要求非常高的产品可以选择Vxworks等。

1.2 嵌入式软件开发概述 嵌入式软件开发总体流程为图4.15中“软件设计实现”部分所示,它同通用计算机软件开发一样,分为需求分析、软件概要设计、软件详细设计、软件实现和软件测试。其中嵌入式软件需求分析与硬件的需求分析合二为一,故没有分开画出。 由于在嵌入式软件开发的工具非常多,为了更好地帮助读者选择开发工具,下面首先对嵌入式软件开发过程中所使用的工具做一简单归纳。 嵌入式软件的开发工具根据不同的开发过程而划分,比如在需求分析阶段,可以选择IBM的Rational Rose等软件,而在程序开发阶段可以采用CodeWarrior(下面要介绍的ADS 的一个工具)等,在调试阶段所用的Multi-ICE等。同时,不同的嵌入式操作系统往往会有配套的开发工具,比如Vxworks有集成开发环境Tornado,WindowsCE的集成开发环境WindowsCE Platform等。此外,不同的处理器可能还有对应的开发工具,比如ARM的常用集成开发工具ADS、IAR和RealView等。在这里,大多数软件都有比较高的使用费用,但也可以大大加快产品的开发进度,用户可以根据需求自行选择。图4.16是嵌入式开发的不同阶段的常用软件。 图1.2 嵌入式开发不同阶段的常用软件 嵌入式系统的软件开发与通常软件开发的区别主要在于软件实现部分,其中又可以分为编译和调试两部分,下面分别对这两部分进行讲解。 1.交叉编译 嵌入式软件开发所采用的编译为交叉编译。所谓交叉编译就是在一个平台上生成可以在另一个平台上执行的代码。在第3章中已经提到,编译的最主要的工作就在将程序转化成运行该程序的CPU所能识别的机器代码,由于不同的体系结构有不同的指令系统。因此,不同的CPU需要有相应的编译器,而交叉编译就如同翻译一样,把相同的程序代码翻译成不同CPU的对应可执行二进制文件。要注意的是,编译器本身也是程序,也要在与之对应的某一个CPU平台上运行。嵌入式系统交叉编译环境如图4.17所示。

嵌入式操作系统软件平台

嵌入式操作系统软件平台 1、嵌入式系统 嵌入式系统的定义是以应用为中心,以计算机技术为基础,软硬件可裁剪、适应应用系统对功能、可靠性、成本、体积、功耗严格要求的专用计算机系统。其在工业制造、过程控制、通讯、仪器、仪表、汽车、船舶、航空、航天、军事装备、消费类电子产品等方面具有广泛的应用。其组成结构如下图所示: 图1-1 嵌入式系统 2、嵌入式软件的分类 嵌入式操作系统:嵌入式操作系统EOS(Embedded Operating System)是一种用途广泛的系统软件,过去它主要用于工业控制和国防系统领域。 EOS负责嵌入式系统的全部软、硬件资源的分配、调度工作,控制协调 并发活动,它必须体现其所在系统的特征,能够通过装卸某些模来达到 系统所要求的功能。目前国际上著名的嵌入式操作系统有Windows CE、 Palm OS、Linux、VxWorks、pSOS、QNX、OS-9、LynxxOS等。我国嵌入 式操作系统起步较晚,国内类似产品主要是基于自主版权的Linux操作 系统,其中以中软Linux、红旗Linux、东方Linux为代表。 嵌入式支撑软件:支撑软件是帮助和支持软件开发的软件,通常包括数据库和开发工具,期中以数据库最为重要。嵌入式移动数据库(简称移 动数据库EMDBS)是支持移动计算或某种特定计算模式的数据库管理系 统,数据库系统与操作系统、具体应用集成在一起,运行在各种智能性 嵌入设备或移动设备上。国际上主要的嵌入式移动数据库系统有Sybase、

Oracle等。我国嵌入式移动数据库系统以东软集团研究开发出的嵌入式 数据库系统OpenBASE Mini为代表。 嵌入式应用软件:嵌入式应用软件是针对特定应用领域,基于某一固定的硬件平台,用来达到用户预期目标的计算机软件。由于用户任务可能 有时间和精度上的要求,因此有些嵌入式应用软件需要特定的嵌入式操 作系统的支持。嵌入式应用软件和普通应用软件有一定的区别,它不仅 要求其准确性、安全性和稳定性等方面能够满足实际应用需要,而且要 尽可能的进行优化,以减少对系统资源的消耗,降低硬件成本。目前我 国市场上出现了格式各样的嵌入式应用软件,包括浏览器、Email软件、 文字处理软件、通讯软件、多媒体软件、个人信息处理软件、智能人机 交互软件、各种行业应用软件等。 本文中主要针对嵌入式操作系统。 3、嵌入式操作系统的特征 嵌入式操作系统复杂嵌入式系统的全部软、硬件资源的分配、调度工作,控制协调并发,因此它必须体现所在系统的特征,能够通过装卸某些模块来达到系统所要求的功能。嵌入式操作系统具有如下一些特征: 小巧:嵌入式系统所能提供的资源有限,所以嵌入式操作系统必须做到小巧以满足嵌入式系统硬件的限制。 实时性:大多数嵌入式系统工作在实时性要求较高的环境中,因此嵌入式操作系统必须将实时性作为一个重要指标来考虑。 可装卸:由于嵌入式系统需要根据应用的要求进行装卸,所以iqianrushi 操作系统也必须能够跟用应用的要求进行装卸,去掉多余的部分或简化 相应模块。 固话代码:在嵌入式系统中,嵌入式操作系统和应用软件被固化在嵌入式系统计算机的ROM中。 弱交互性:大多数嵌入式系统的工作过程不需要人的干预。嵌入式操作系统的用户接口一般不提供操作命令,它通过系统调用命令向用户程序 提供服务。 强稳定性:嵌入式系统一旦开始运行,就不需要过多的干预。在这种条

三级嵌入式系统

三级嵌入式系统学习总结 一第一章 1.嵌入式系统概论 嵌入式系统中的软件一般都固化在只读存储器中,用户不能随意更改其中的程序功能。 嵌入式系统的逻辑组成:1)处理器2)存储器3)I/O设备与I/O接口4)数据总线5)软件 嵌入式处理芯片有四种类型:1)微处理器2)数字信号处理器3)微控制器(单片机)4)片上系统 微控制器MCU的低端产品并不会因为高端产品的出现而衰落 在32位MCU中,绝大多数使用RAM内核 EDA:电子设计自动化 IP核可以分为三种:软核、硬核、固核 2.嵌入式系统与数字媒体 计算机中常用的最广泛的西文字符及其编码是ASCII字符集和ASCII码,即美国标准信息交换码,共有128个字符,一个字符占一个字节。 我国目前广泛使用的汉字编码国家标准有GB2312和GB18030 GB2312只有6763个汉字,不够用 GB18030字符集与国际标准UCS/Unicode字符集基本兼容。GB18030采用不等长的编码方法,单字节编码表示ASCII码,双字节编码表示汉字,与GB2312保持向下兼容,四字节编码表示其他字符 Unicode最新版本是6.3。UCS/Unicode在计算机中具体实现时采用不同的编码方案,最常用的是UTF-8和UTF-16,UTF-8采用的是单字节可变长编码;UTF-16采用的是双字节可变长编码 文本的类型可以分为简单文本、丰富格式文本、超文本 图像的数据量=图像水平分辨率*图像垂直分辨率*像素深度/8(像素深度指的是每个像素用多少个二进制数来表示) 数字视频的数据量非常大,在进行传输时必须进行压缩,压缩编码标准是国际标准化组织(ISO)制定的,其名称为MPEG。 无线局域网采用的协议主要是IEEE 802.11(俗称WIFI) 3.数字通信与计算机网络 微波是一种300MHz-300GHz的电磁波 计算机网络的组成:1)计算机等智能电子设备2)数据通信链路3)通信协议4)网络软件 以太局域网: 1)发送数据设备必须把要传输的数据分成小块(帧)进行传输,一次只能传输1帧; 2)局域网中的每一个终端都有自己唯一的标识,称为物理地址或MAC地址,在发送的每一帧数据中,必须包含自己的MAC地址和接收终端的MAC地址 3)IP协议定义了主机的概念,所有主机及使用一种统一格式的地址标识,称为IP地址。4)以太局域网大多是由集线器或者交换机组网 计算机网络的类型:1)局域网2)城域网2)广域网 IP地址分为A、B、C三类。 IP是由四段数字组成,共32位,8位一段。 A类IP段0.0.0.0 到127.255.255.255 (0段和127段不使用)

嵌入式系统应用的例子始之系统应用终之嵌入式软件

嵌入式系统应用的例子始之系统应用终之嵌入式软件 上世纪九十年代国家产业政策开始向集成电路倾斜后,簇生了今天欣欣向荣的IC产业,但遗憾的是人们还没有真正理解IC和嵌入式软件的关系,包括政府、投资人和企业都没有最大化地重视嵌入式软件,研究IC设计价值链的构成,强调和推进应有的产业分工和合作,从而造成系统应用、嵌入式软件和芯片设计各自为战、定位不明晰、商业模式模糊,因此最优化的系统产业链难以实现,特别是嵌入式软件的商业价值难以实现,导致真正有竞争力的系统产品难以建立和脱颖而出,产品同质化现象严重。 大家知道苹果公司没有芯片技术,但是iPhone手机无疑是优秀的创意和设计,除了ID/MD(界面设计/机械设计)的创意外,更重要的于其嵌入式软件设计。国内历来重硬轻软,芯片产业的投资模式和商业价值已经形成,但是嵌入式软件企业还在狭缝中生存,高成本的软件劳动的价值很难附加在芯片或系统上。同时,因为没有成熟的系统规划和软件支撑,不以应用为导向以嵌入式软件为支撑的系统芯片厂商,正在遭遇投资流失和企业倒闭的风险。 以深圳爱国者移动数字电视和移动数字多媒体终端开发过程为例,这是一个典型的嵌入式软件为核心的产品。产品是ARM11和ARM+DSP的多媒体应用处理器和嵌入式Linux OS兼容的多媒体平台,配合多媒体IP、CMMB移动数字电视、GPS、Wi-Fi等模块和各种应用

软件,以实现多种移动多媒体应用业务。嵌入式操作系统在移动数字电视终端这样的嵌入式系统地位和作用就像开发商建筑楼房一样,标准化建筑设计和施工已经非常完善,多数开发商是在这些组件基础上再创新和发挥,在嵌入式操作系统基础上开发应用软件和嵌入式系统是目前和未来嵌入式系统开发的 __。 以移动数字电视和多媒体终端为代表的数码产品的组成是硬件 +软件+外观,价值是功能+性能+外观,数码产品的核心价值是芯片+ 嵌入式软件+应用和外观创意。但是今天的问题是芯片有价、硬件有价,但是软件无价!国内的山寨机就是没有计入嵌入式软件技术成本 的典型,最终,也必然受到没有考虑技术成本的惩罚,造成了今天大家看到的iPhone等为代表的高端品牌机和山寨机这样冰火两重天的 现象。 针对移动数字电视和多媒体终端的嵌入式软件核心技术主要体 现在下面三个方面:第一,嵌入式多媒体操作系统移植、构建和优化;第二,支持多种协议和标准的多媒体IP技术的实现和优化;第三, 多媒体应用软件的开发和集成,包括人机界面(UI)、整个系统软件和应用软件的容错、可靠性和稳定性的实现。 国内手机产业的现状再次验证了我们忽视了嵌入式软件的后果。世界六大手机制造商占领了世界70%的市场份额,中国虽然是世界

单片机和嵌入式系统概述

第一章单片机(和嵌入式系统)概述 1.1 单片机(和嵌入式系统)的发展 1.1.1 计算机发展的三个浪潮 1第一个浪潮(1946~1975), 大型机硬件导向:计算机只能由专家操作,把处理后的信息交用户使用,信息处理与使用分离。─集中处理时代2第二个浪潮(1976~1993)台式计算机导向:PC机普及,信息由处理者个人享有不能互发信息,难以共享。信息处理与使用者结合。─分散处理时代 3第三个浪潮(1994~?),网络导向:计算机通过网络互连进行全球通信,引入网络就是计算机的新概念。软件可以象数据一样驻留在网络上,软件程序可以实时执行,用户可随时到达存放所需程序的地址,而不受计算机类型和操作系统的限制。信息收集、处理、分析和存储都商业化。─网络处理时代 1.1.2 计算机发展简史 第一代到第四代计算机都是以电子器件的发展更新来划分的,而第五代以后的计算机则是以设计思想的更新来划分。 1第一代电子管计算机(1946~1958) (1)硬件 逻辑器件:电子管和继电器 内存:汞延迟线,静电存储管,53年出现磁芯(统治20年) 外存:磁带机、穿孔纸带机和卡片机,56年IBM生产磁盘机

(2)软件:54年以前几乎没有软件,主要用机器语言--二进制代码指令后期发展了汇编语言 (3)性能 运算速度:几千次到几万次 平均稳定运行时间:几小时 (4)特点 体积大、功耗大、价格大,速度慢、容量小、可靠性差(5)典型机器 1942年美籍保加利亚人,爱荷华州立学院数学系文森特.阿培纳索夫(Vincent Atanasoff)与其助手克里夫德.贝利(Clifford Berry)研制成功世界上第一台数字电子计算机ABC。采用300个电子管,用电容器做存储器,穿孔卡片作为辅助存储器,运算速度为1次/s。用于解线性代数方程。1973年美国法院把发明权归属于阿培纳索夫。 由美国宾夕法尼亚大学的工程师埃克特(J.Presper Eckert)和物理学家毛希利(,于1946年2月正式公开表演数字式电子计算机ENIAC(Electronic Numerical Integrator And Computer)。1947年运到马里兰州陆军阿伯丁试炮场的弹道研究实验室正式使用。 用了18800只电子管、12bit字长、内存17kB,300次乘法/s, 5000次加法/s,占地165 m2,重量30T,耗电150kW。 1953年4月IBM-701

嵌入式系统概述

1 嵌入式系统概述 嵌入式系统(Embedded System )也称嵌入式计算机系统。顾名思义,嵌入式系统是计算机的一种特殊形式,是计算机技术、通信技术、半导体技术、微电子技术、语音图像数据传输技术,甚至传感器等先进技术和具体应用对象相结合后的更新换代产品。嵌入式系统不仅和一般的PC 机上的应用系统不同,而且针对不同的具体应用而设计的嵌入式系统之间的差别也很大。嵌入式系统强调硬件和软件的协同性与整合性,软件和硬件可剪裁的,适用于应用系统对功能、可靠性、成本、体积、功耗和应用环境等有严格要求的专用计算机系统。 嵌入式系统特别强调“量身定做”的原则,开发人员往往需要针对某一种特殊用途开发出一个截然不同的嵌入式系统,其特点如下。 (1)嵌入式系统具有应用针对性 应用针对性是嵌入式系统的一个基本特征,体现这种应用针对性的首先是软件,软件实现特定应用所需要的功能,所以嵌入式系统应用中必定配置了专用的应用程序;其次是硬件,大多数嵌入式系统的硬件是针对应用专门设计的,但也有一些标准化的嵌入式硬件模块,采用标准模块可降低开发的技术难度和风险,缩短开发时间,但灵活性不足。 (2)嵌入式系统硬件扩展能力要求不高 硬件上,嵌入式系统作为一种专用的计算机系统,其功能、机械结构、安装要求比较固定,所以一般没有或仅有较少的扩展能力;软件上,嵌入式系统往往是一个设备固定组成部分,其软件功能由设备的需求决定,在相对较长的生命周期里,一般不需要对软件进行改动。但也有一些特例,比如现在的手机,尤其是安装有嵌入式操作系统的智能手机,软件安装、升级比较灵活,但相对于桌面计算机,其软件扩展能力还是相当弱。 (3)嵌入式系统操作系统精简 在现代的通用计算机中,没有操作系统是无法想象的,而在嵌入式计算机中情况则大第 章

单片机和嵌入式系统概述

单片机和嵌入式系统概述

第一章单片机(和嵌入式系统)概述 1.1 单片机(和嵌入式系统)的发展 1.1.1计算机发展的三个浪潮 1第一个浪潮(1946?1975 ),大型机硬件导向:计算机只能由专家操作, 把处理后的信息交用户使用,信息处理与使用分离。一集中处理时代2第二个浪潮(1976?1993 )台式计算机导向:PC机普及,信息由处理 者个人享有不能互发信息,难以共享。信息处理与使用者结合。一分散处理时代3第三个浪潮(1994??),网络导向:计算机通过网络互连进行全球通信,引入网络就是计算机的新概念。软件可以象数据一样驻留在网络上,软件程序可以实时执行,用户可随时到达存放所需程序的地址,而不受计算机类型和操作系 统的限制。信息收集、处理、分析和存储都商业化。T网络处理时代 1.1.2计算机发展简史 第一代到第四代计算机都是以电子器件的发展更新来划分的,而第五代以后的计算机则是以设计思想的更新来划分。 1 第一代电子管计算机(1946?1958 ) (1)硬件 逻辑器件:电子管和继电器 内存:汞延迟线,静电存储管,53年出现磁芯(统治20年) 外存:磁带机、穿孔纸带机和卡片机,56年IEM生产磁盘机 (2)软件:54年以前几乎没有软件,主要用机器语言--二进制代码指令

后期发展了汇编语言 (3)性能 运算速度:几千次到几万次 平均稳定运行时间:几小时 (4)特点 体积大、功耗大、价格大,速度慢、容量小、可靠性差 (5)典型机器 佃42年美籍保加利亚人,爱荷华州立学院数学系文森特■阿培纳索夫(Vincent Atanasoff)与其助手克里夫德贝利(Clifford Berry)研制成功世界上第一台数字电子计算机ABC。采用300个电子管,用电容器做存储器,穿孔卡片作为辅助存储器,运算速度为1次/s。用于解线性代数方程。1973年美国法院把发明权归属于阿培纳索夫。 由美国宾夕法尼亚大学的工程师埃克特(J.Presper Eckert)和物理学家毛希利(John.W.Mauchly)于1945年12月研制成功,于1946年2月正式公开表演数字式电子计算机ENIAC (Electronic Numerical Integrator And Computer)。佃47年运到马里兰州陆军阿伯丁试炮场的弹道研究实验室正式使用。 用了 1 8 8 0 0只电子管、12 bit字长、内存17 kB, 300次乘法/s, 5000次加法/s,占地165 m2,重量3 0 T,耗电15 0 kW。 1953年4月IEM—701 1954年11月IEM—650

嵌入式系统应用教程习题答案

参考答案 第1章嵌入式系统概论 1.嵌入式系统具有什么特点?举出3个嵌入式系统的实例。 答:嵌入式系统具有特点是以应用为中心、以计算机技术为基础、软件硬件可裁剪、适应应用系统对功能、可靠性、成本、体积、功耗严格要求的专用计算机系统。 智能仪器仪表、导弹、汽车控制系统、机器人、ATM(Automatic Teller Machine)、信息家电、智能手机等内部都有嵌入式系统。 2.嵌入式系统的发展经历了哪些阶段? 答:嵌入式系统的发展经历了以下四个阶段:无操作系统阶段、简单操作系统阶段、实时操作系统阶段、面向Internet阶段。 3.画出嵌入式系统的开发流程图。 答:

图1-1 嵌入式系统开发流程 4.嵌入式操作系统有哪些?举出4个实例,并说明特点。 答:嵌入式操作系统主要有嵌入式Linux、Windows CE、VxWorks、Palm OS以及μC/OS-Ⅱ等。 (1)嵌入式Linux在嵌入式领域的特点: ①.Linux是开放源代码的,不存在黑箱技术,遍布全球的Linux爱好者为Linux 提供强大的技术支持; ②.Linux属于微内核操作系统,内核小、效率高、运行稳定、可裁剪性好,并且更 新速度很快; ③.Linux适应于多种CPU和多种硬件平台,是一个跨平台的系统; ④.Linux具有与生俱来的强大的网络功能,支持各种网络连接方式,很适合作为面 向Internet的新一代嵌入式产品的操作系统;

⑤.Linux具有丰富的软件开发工具,能够满足嵌入式系统中软件部分的开发要求。 (2)Windows CE在嵌入式领域的特点: Windows CE具有模块化、结构化和基于Win32应用程序接口和与处理器无关等特点。不仅继承了Windows优秀的图形界面,而且可以直接使用Windows 95/98上的编程工具(如Visual Basic、Visual C++等)进行应用程序开发,使绝大多数的应用软件只需简单的修改和移植就可以在Windows CE平台上继续使用。 (3)VxWorks VxWorks具有高性能的内核、友好的用户开发环境,是实时操作系统,广泛应用在通信、军事、航空、航天等高精尖技术及实时性要求极高的领域, (4)μC/OS-Ⅱ μC/OS-Ⅱ是一个源代码开放、可剪裁、结构小巧、抢先式的实时操作系统,主要用于中小型嵌入式系统中,执行效率高、占用空间小、可移植性强,具有良好的实时性能和可扩展性,最多支持64个任务,可运行在大部分嵌入式微处理器上。 第2章Linux系统介绍 1.要让1台PC机既能运行Windows XP系统,又能运行Linux系统,应如何给该PC机安装操作系统? 答:根据Linux系统在计算机中的存在方式,将Linux的安装分为单系统、多系统和虚拟机。 1.单系统安装。指在计算机中仅安装Linux系统,无其它操作系统,因此,安装简单,只需要将光驱设为第一启动设备,依次放入Linux安装光盘,按照提示就可以完成安装。

嵌入式系统概论B卷(答案)

11-12学年上学期嵌入式系统概论期末试卷(B卷)答案及评分细则 一、填空题:(本大题共20空,每空2分,共40分) 1.设计、实现 2.嵌入式处理器、嵌入式系统软件 3.数据和指令、分开存储 4.工作、睡眠 5.大端格式、小端格式 6.Thumb 、 T 7. R15 、 SP 8.0x0 、Supervisor 9.RISC、定长的 10.交叉编译、PC 二、名词解释:(本大题共4题,每题5分,共20分) 1、ISR:中断服务程序 2、MMU:内存管理单元 3、CPSR:程序状态寄存器,包含条件码标志、中断禁止位、当前处理器模式以及其它状态和控制信息。所有处理器模式下都可以访问当前的程序状态寄存器CPSR。 4、SPSR:在每种异常模式下都有一个对应的物理寄存器——程序状态保存寄存器SPSR。当异常出现时,SPSR用于保存CPSR的状态,以便异常返回后恢复异常发生时的工作状态。 5、Boot Loader :Boot Loader是在嵌入式系统复位启动时,操作系统内核运行前,执行的一段程序。通过Boot Loader,初始化硬件设备,建立内存和I/O空间映射图,为最终加载操作系统内核调整好适当的系统软硬件环境。 三、简答题(本大题共5题,每题6分,共30分) 1.什么是嵌入式系统?其特点有些什么? 答:嵌入式系统是“以应用为中心、以计算机技术为基础、软件硬件可裁剪、功能、可靠性、成本、体积、功耗严格要求的专用计算机系统。” 特点:1)是专用的计算机系统,用于特定的任务; 2)资源较少,可以裁减; 3) 功耗低,体积小,集成度高,成本低; 4)使用实时操作系统; 5) 可靠性要求更高,具有系统测试和可靠性评估体系; 6)运行环境差异大 7)大部分程序固化在 ROM中; 8) 较长的生命周期; 9)嵌入式微处理器通常包含专用调试电路 2.CISC和RISC的特点和区别

嵌入式软件开发的几点个人理解

嵌入式软件开发的几点个人理解 一、软件的概念 软件,是一系列按照特定顺序组织的计算机数据和指令的集合。我们日常生活中接触最多的软件大概要算应用软件了。在21世纪的今天,电脑、手机等智能设备进入千家万户,基本上每个现代化的家庭中或多或少拥有一台电脑或一部手机,我们每天都用着电脑或者手机中的应用软件享受着科技带给这个世界的便利。然而软件的概念却并不只是在这些应用软件中,一般来讲,软件被划分为编程语言、系统软件、应用软件,其中系统软件包括操作系统和支撑软件。另外,软件并仅包括可以在广义计算机上运行的电脑程序,还包括与这些电脑程序相关的文档。学术界将软件定义为程序加文档的集合体,确实非常贴切。 对于软件和硬件,这两者之间从来是相互依存,相得益彰的。硬件是实在的,有模有样的。软件是程序性的,是一系列的指令。个人认为,我们其实可以将人的身体与灵魂分别比作硬件和软件,软件的存在必须依附于硬件才能体现软件的价值;而硬件因为有了软件的存在,才具备了更加丰富的功能。 二、软件开发中的编程语言 软件的编程语言有多种、常见的编程语言有Pascal、Python、Ruby、Java、C、C++、C#、Basic、PHP等。这些编程语言各有特点,其中进行嵌入式系统开发常用的语言有C、C++、Java 等语言。 2.1、C语言 C语言是介于汇编语言和高级语言之间的语言,属于高级语言,也称为中级语言,是集汇编和高级语言优点于一身的程序设计语言。于1972年在美国贝尔实验室里问世,早期的C语言主要用于UNIX系统。由于C语言的强大功能和各方面的优点逐渐为人们认识,到了九十年代,C语言开始进入其他操作系统,并很快在各类大、中、小和微型计算机上得到广泛的应用,成为当代最优秀的程序设计语言之一。 C语言的特点: 1)是一种结构化语言,层次清晰,便于按模块化方式组织程序,易于调试和维护。 2)C语言的表现能力和处理能力极强,不仅具有丰富的运算符和数据类型,便于实现各类复杂的数据结构,它还可以直接访问内存的物理地址,进行位级别的操作。

嵌入式系统概述

第1章嵌入式系统概述 1.1 嵌入式系统简介 根据IEEE(国际电气和电子工程师协会)的定义,嵌入式系统是“控制、监视或者辅助设备、机器和车间运行的装置”(全称为devices used to control,monitor,or assist the operation of equipment,machinery)。这主要是从应用上加以定义的,由此可以看出嵌入式系统是软件和硬件的综合体,可以涵盖机械等附属装置。 目前国内一个普遍的定义:以应用为中心、以计算机技术为基础,软硬件可裁减,适于应用系统对功能、可靠性、成本、体积、功耗等严格要求的专用计算机系统。还有另一种定义:嵌入式系统是设计完成复杂功能的硬件和软件,并使其紧密耦合在一起的计算机系统。术语“嵌入式”反映了这些系统通常是更大系统中的一个完整部分,称为嵌入的系统。两种定义的出发角度不同,前者是从技术角度来定义的,后者是从系统角度来定义的。由于嵌入式系统本身是一个外延很广的名词,凡是与产品结合在一起的具有嵌入式特点的控制系统都可以叫嵌入式系统,很难给它下一个准确的定义。因此,目前通常把嵌入式系统概念的重心放在“系统”(即操作系统)上,指能够运行操作系统的软硬件综合体。总体上嵌入式系统可以划分成硬件和软件两部分,硬件一般由高性能的微处理器和外围接口电路组成,软件一般由实时操作系统和其上运行的应用软件构成,软件和硬件之间由所谓的中间层(BSP层,板级支持包)连接。 一般而言,嵌入式系统的架构可以分成4个部分:处理器、存储器、输入/输出(I/O)和软件,如图1.1所示。 图1.1 嵌入式系统的架构

1.2 嵌入式处理器 1.2.1 嵌入式处理器简介 从硬件方面讲,嵌入式系统的核心是嵌入式处理器,据不完全统计,全世界嵌入式处理器的品种数量已经超过1000多种,流行体系结构有30多个,其中8051体系占大多数。生产8051单片机的半导体厂家有20多个,共350多种衍生产品,仅Philips就有近100种。近年来,嵌入式微处理器的主要发展方向是小体积、高性能、低功耗,专业分工也越来越明显,出现了专业的IP(Intellectual Property Core,知识产权核)供应商,如ARM、MIPS 等,它们提供优质、高性能的嵌入式微处理器内核,由各半导体厂商生产面向各个应用领域的芯片。 嵌入式微处理器有许多种流行的处理器核,芯片制造商一般都基于这些处理器核生产不同型号的芯片。一般可以将嵌入式处理器分成4类,即嵌入式微处理器(MicroProcessor Unit,MPU)、嵌入式微控制器(MocroController Unit,MCU)、嵌入式DSP处理器(Digital Signal Processor,DSP)和嵌入式片上系统(System on Chip,SoC)。 ?嵌入式微处理器 嵌入式微处理器的基础是通用计算机中的CPU,它的特征是32位以上的处理器,具有较高的性能,当然其价格也相当高。为了满足嵌入式应用的特殊要求,虽然嵌入式微处理器在功能上和标准微处理器基本上是一样的,但一般在工作温度、抗电磁干扰及可靠性等方面都做了各种增强。 与工业控制计算机相比,嵌入式微处理器具有体积小、重量轻、成本低、可靠性高等优点。嵌入式微处理器目前主要有Am186/88、386EX、SC-400、Power PC、68000、MIPS 和ARM/StrongARM系列等。 ?嵌入式微控制器 嵌入式微控制器最典型的代表是单片机,单片机芯片内部集成了ROM/EPROM、RAM、总线、总线逻辑、定时/计数器、看门狗、I/O、串行口、脉宽调制输出、A/D、D/A、Flash、EEPROM等各种必要功能和外设。与嵌入式微处理器相比,微控制器的最大特点是单片机,体积大大减小,从而使功耗和成本下降、可靠性提高。微控制器是目前嵌入式系统工业的主流。微控制器的片上外设资源一般比较丰富,适合于控制,因此称为微控制器。 嵌入式微控制器目前的品种和数量最多,比较有代表性的包括8051、P51XA、MCS-251、MCS96/196/296、C166/167、MC68HC05/11/12/16、68300和数目众多的ARM 芯片。目前,MCU占嵌入式系统约70%的市场份额。 ?嵌入式DSP处理器 DSP处理器是专门用于信号处理方面的处理器,其在系统结构和指令上进行了特殊设计,具有很高的编译效率和指令执行速度。在数字滤波、FFT、频谱分析等仪器上,DSP 获得了大规模的应用。 嵌入式DSP处理器比较有代表性的产品是TI的TMS320系列和Motorola的DSP56000

三级嵌入式系统

精心整理 三级嵌入式系统学习总结 一第一章 IP地址分为A、B、C三类。 IP是由四段数字组成,共32位,8位一段。 A类IP段到段和127段不使用) B类IP段到 C类IP段到 XP默认分配的子网掩码每段只有255或0 A类的默认子网掩码一个子网最多可以容纳1677万多台电脑

B类的默认子网掩码一个子网最多可以容纳6万台电脑 C类的默认子网掩码一个子网最多可以容纳254台电脑 二第二章 1.嵌入式处理器 嵌入式处理器按照指令集可以分为复杂指令集结构和精简指令集结构,按存储机制可以分为冯诺依曼结构及哈佛结构,按字长可以分为8位、16位、32位等 精简指令集结构采用加载和存储两种指令对存储器进行读写操作。 ARM内核采用多层次的存储结构,在处理器与主存储器之间加入CACHE,综合了哈佛结构和冯诺依曼结构的优点。 ARM处理器的主流为32位,其主要特征如下:1)单周期操作2)只是用加载/存储指令访问内存3) LS:无符号数小于或等于 GE:带符号数大于或等于 LT:带符号数小于 GT:带符号数小于或等于 LE:带符号数小于或等于 PL:正数或0 块拷贝寻址举例: LDMIAR0,{R1,R2,R5,R9}R1?[R0],R2?[R0+4],R3?[R0+8],R4?[R0+12] STMIAR0,{R1-R7}[R0]?R1,[R0+4]?R2,[R0+8]?R3,[R0+12]?R4,[R0+16]?R5…… 程序状态寄存器访问指令举例: MRSR0,CPSR传送CPSR中的值到R0 MSRCPSR,R0传送R0的值到CPSRs

5.ARM汇编语言程序设计 意会 三第三章 1.嵌入式系统硬件组成概述 最小系统的构成:嵌入式处理器、存储器、复位电路、电源电路、时钟电路、调试测试接口 典型嵌入式应用系统的硬件组成:最小硬件系统、前向通道、后向通道、人机交互通道以及相互互联通信通道。前向通道即输入接口,由模拟量输入接口和数字量输入接口组成;后巷通道即输出接口,由模拟输出接口和数字输出接口组成;人机交互通道即输入输出接口; 2.嵌入式处理芯片 从主机中从左向右发送给从机(主机数据左对齐),从机数据从右向左发送给主机(从机数据右对齐),发送数据时,高位在前,低位在后 UART:常用于全双工串行异步通信,发数据时,低位在前,高位在后 USB:最多可以连接127个设备。USB系统由USB硬件和USB软件组成。硬件中的主控制器包括一个根集线器,传输时采样翻转不归零。采用半双工差分方式传输数据。 触摸屏分为电阻式和电容式 5.ARM内核典型处理器芯片 S3C2410是韩国三星公司制造的微处理器,以下都是S3C2410的有关介绍 电源管理模块有正常模式、慢速模式、休眠模式、掉电模式。任何情况下复位操作均进入正常模式,在掉电模式和休眠模式下,只要有任何一个外部中断EINT或者RTC时钟中断发生,均将返回到正常模式。 总共由5个16位定时器timer,4个具备PWM的功能。

相关主题
文本预览
相关文档 最新文档