嵌入式系统平台构建.ppt

上传人:hs****ma 文档编号:568590885 上传时间:2024-07-25 格式:PPT 页数:38 大小:2.05MB
返回 下载 相关 举报
嵌入式系统平台构建.ppt_第1页
第1页 / 共38页
嵌入式系统平台构建.ppt_第2页
第2页 / 共38页
嵌入式系统平台构建.ppt_第3页
第3页 / 共38页
嵌入式系统平台构建.ppt_第4页
第4页 / 共38页
嵌入式系统平台构建.ppt_第5页
第5页 / 共38页
点击查看更多>>
资源描述

《嵌入式系统平台构建.ppt》由会员分享,可在线阅读,更多相关《嵌入式系统平台构建.ppt(38页珍藏版)》请在金锄头文库上搜索。

1、嵌入式系统主讲教师:田茂E-MAIL:第二章开发平台构建Linux简介FriendlyARM6410开发平台简介宿主机和目标机虚拟机VMware及操作系统Ubuntu的安装建立交叉开发环境 开发板安装Linux系统在Windows下进行FTP下载简单的Hello wordLinux 简介简介Linux特点特点p稳定的系统p免费p多任务、多用户p良好的用户界面p可靠的系统安全p适合需要小内核程序的嵌入式系统pp稳定的系统Linux 本来就是基于 Unix 概念而发展出来的操作系统,因此, Linux 具有与 Unix 系统相似的的程序接口跟操作方式,当然也继承了 Unix 稳定并且有效率的特点。

2、常听到安装 Linux 的主机连续运做一年以上而不曾当机、不必关机是稀松平常的事;p免费由于 Linux 是基于 GPL 的基础下的产物,因此任何人皆可以自由取得 Linux , 至于一些安装套件的发行者, 他们发行的安装光盘也仅需要些许费用即可获得!不同于 Unix 需要负担庞大的版权费用,当然也不同于微软需要一而再、 再而三的更新你的系统,并且缴纳大量费用p多任务、多用户与 Windows 系统不同的, Linux 主机上可以同时允许多人上线来工作, 并且资源的分配较为公平。你可以在一部 Linux 主机上面规划出不同等级的使用者,而且每个使用者登入系统时的工作环境都可以不相同, 此外,还

3、可以允许不同的使用者在同一个时间登入主机,以同时使用主机的资源p可靠的系统安全【没有绝对安全的主机】但是 Linux 由于支持者,有相当多的热心团体、个人参与其中的开发, 因此可以随时获得最新的安全信息,并给予随时的更新,亦即是具有相对的较安全p适合需要小内核程序的嵌入式系统由于 Linux 只要几百 KB 不到的程序代码就可以完整驱动整个计算机并成为一个完整的操作系统, 因此相当适合于目前家电或者是小电子用品的操作系统,即嵌入式系统。Linux 适合例如手机、数字相机、PDA、家电用品等等的微电脑操作系统!此外,有不少硬件式的网络防火墙及路由器,其内部都是使用Linux,并采用了操作系统提供

4、的防火墙及路由功能。Linux 与uC/OS-II的区别功能性pLinux 包含一整套的编译、调试等开发工具、内核源代码、各种文件系统、图形接口、各种协议、驱动程序以及丰富的应用程序。p而Uc/OS-II确切的来说只是一个微内核,仅仅包含多任务调度、简单内存管理等基本的多任务操作系统元素,且多任务调度算法和内存管理等都比较简单。对于想实现GUI、FS、协议等都必须另外购买或者移植,对于设备驱动程序没有提供专门统一的接口。Linux 与uC/OS-II的区别开发工具pLinux 发布中包含了编译器和调试器等工具,他们都采用GCC编译器,汇编语法一致。p uC/OS-II没有指定编译器,在不同的平

5、台下使用该平台的编译器,而各个编译器其汇编语法不同,因此,在不同类型平台下,汇编程序不一致。Linux 与uC/OS-II的区别移植性pLinux 发布中包含了多种平台下的移植,可以通过配置内核选择体系结构和裁剪内核。p uC/OS-II的不同平台下的移植通过不同的移植代码独立发布,没有一个统一的界面,通过宏定义进行内核裁剪。Linux 与uC/OS-II的区别开发资源p在开发上,Linux采用统一的API调用,接口文档齐全,书籍、网上资料也比较多puC/OS-II虽然没有标准的API接口,但是其内核非常简单、简洁,且书籍、网上资料也非常丰富。Linux 与uC/OS-II的区别实时性pLin

6、ux 内核不关心实时性问题,可以通过和RTLinux配合来实现实时。RTLinux 处理实时任务,非实时任务任务由linux完成RTLinux是为Linux 提供实时性的方法,同样也使用与Linux。通过RTLinux 的patch,可以满足Linux实时性的需求puC/OS-II采用占先式内核,实时性好Linux 与与uClinuxuclinux表示micro-control linux.即“微控制器领域中的Linux系统”,是Lineo公司的主打产品,同时也是开放源码的嵌入式Linux的典范之作 。uCLinux是针对控制领域的嵌入式linux操作系统,它从Linux 2.0/2.4内核派

7、生而来,沿袭了主流Linux的绝大部分特性。适合不具备内存管理单元(MMU)的微处理器/微控制器。没有MMU支持是uClinux与主流Linux的基本差异。 Linux 与与uClinuxp标准Linux是针对有MMU的处理器设计的。在这种处理器上,虚拟地址被送到MMU,把虚拟地址映射为物理地址。通过赋予每个任务不同的虚拟物理地址转换映射,支持不同任务之间的保护。 puCLinux系统对于内存的访问是直接的,所有程序中访问的地址都是实际的物理地址。操作系统对内存空间没有保护,各个进程实际上共享一个运行空间。一个进程在执行前,系统必须为进程分配足够的连续地址空间,然后全部载入主存储器的连续空间中

8、。 p有些内核系统调用也有差异 高效稳定开源用户级的可裁减支持多种网络协议IBM宣布其四个系列的服务器全面支持Linux用J2EE及Oracle开发的应用程序也可以移植到Linux上面来运行Borland公司也开发了在Linux下面运行的DelphiKylixSUN公司表示开放Sorlaris9的源代码银行政府军队嵌入式领域手持消费类设备Linux 应用应用InternetInternetInternetInternet网络服务器的应用网络服务器的应用网络服务器的应用网络服务器的应用 网站、域名解析、FTP、邮件系统 中小企业内部服务器的应用中小企业内部服务器的应用中小企业内部服务器的应用中小

9、企业内部服务器的应用代理上网、网络防火墙、企业网关DHCP动态地址分配、Samba文件共享 软件开发环境的应用软件开发环境的应用软件开发环境的应用软件开发环境的应用 支持C/C+、Perl、PHP、Java、Python 语言桌面环境的应用桌面环境的应用桌面环境的应用桌面环境的应用 OpenOffice办公软件、Firefox浏览器QQ/MSN即时通讯、RealPlayer、Mplayer播放器Linux 在企业中应用在企业中应用Linux赢得了大型数据库软件公司支持IBM HP Dell Haier等厂商全面预装Linux操作系统,HP、SUN公司也将推出自己的桌面发行版本,SGI在开发大型

10、Linux图形工作站 全球十大巨型机中,有四台在使用Linux操作系统2005年11月的top500超级电脑表列的操作系统里,采用Linux为操作系统的,占了371组(即74.2%),其中的前十位者,有7组是使用Linux的。 当前, Linux赢得大量手机厂商的大力支持,比如Motorola等 虽然Linux具有如此多的好处,但是它先天上有一个足以致命的地方,使它的普及率受到很大的限制,就是Linux需要使用“命令行”的终端机模式进行系统的管理。虽然近年来有很多的图形界面在开发使用在Linux上面,但毕竟要熟悉Linux 还是以命令行来使用使比较好的,因此要接受Linux必须要熟悉对计算机下

11、命令的行为,而不是只点鼠标。 目前已有大量各种各样基于 GNU/Linux 的操作系统,例如:Debian, SuSE, Gentoo, RedHat 和 Mandriva 。 Ubuntu首个版本发布于2004年9月,相对大多数Linux发行版来说,它的起步较晚,但是在朝着“易用”和“免费”方面不断发展的路途中,Ubuntu赢得了大家的喜爱,并成为数一数二的Linux发行版本。 Ubuntu 是基于 Debian 之上,旨在创建一个可以为桌面和服务器提供一个最新且一贯的 Linux 系统。Ubuntu 囊括了大量精挑细选自 Debian 发行版的软件包,同时保留了 Debian 强大的软件包

12、管理系统,以便简易的安装或彻底的删除程序。与大多数发行版附带数量巨大的可用可不用的软件不同,Ubuntu 的软件包清单只包含那些高质量的重要应用程序。 固定的发布周期(6个月);易于初学者学习;丰富的文档(包括官方和用户贡献的 )无论基于无论基于 GNU/Linux 的操作系统有多少,一的操作系统有多少,一个典型的个典型的Linux发行版应包括发行版应包括:uLinux 内核,一些GNU程序库和工具,命令行 shell,图形界面的X Window系统和相应的桌面环境,如KDE或GNOME,并包含数千种从办公套件,编译器,文本编辑器到科学工具的应用软件。FriendlyARM6410开发平台硬件

13、配置开发平台硬件配置u主板核心配置为CPUSamsungS3C6410A,主频533MHZ,256MRAM,2GBNandFlashu底板资源包括调试口 COM0 + JTAG + USB Slave USB Slave 1 x mini USB(底板没有设计 OTG功能) USB Host 通过 USB HUB 芯片,实现 4 个 USB Host 接口 网络接口 10/100M MB以太网, RJ-45 接口 底板资源音频输入输出 3.5mm 标准双声道音频输入输出口 SD卡 普通 SD卡座 串口 4 x RS232 DB9 串口,4 x TTL 电平串口座 TV-OUT 1 x RCA输

14、出口 SDIO2 接口座 主要用于接 SD WiFi 模块(还包括 SPI, I2C 接口) LCD接口 3 种 LCD接口引出座蜂鸣器 1 x PWM 控制蜂鸣器输出 红外 1 路红外接收头 温度传感器 1 路 DS18B02 温度传感器 ADC 转换 1 个可调电阻,连接 CPU的 AD0 通道 FriendlyARM6410开发平台底板宿主机和目标机宿主机和目标机由于嵌入式Linux的开发资源有限,不可能在开发板上运行开发和调试工具。通常需要交叉编译调试的方式进行-即“宿主机(可以运行Linux的PC机)+目标机(开发板)”的形式。目标机和宿主机一般采用串口连接,亦可同时通过网口连接,如

15、下图所示。宿主机是运行Linux的PC。可以是安装了Linux操作系统的本地机,亦可以是Linux服务器(模型假定其IP为192.168.0.10)。宿主机和目标机的处理器通常情况下都不会相同。宿主机需要建立适合于目标机的交叉编译环境。程序在宿主机上编译连接定位,得到的可执行文件则在目标机运行。在开发调试过程中,通常的操作界面如下图所示。在宿主机上一般需要运行2个窗口:宿主机本机操作窗口和串口终端窗口。宿主机操作窗口可以是本机的操作终端(安装Linux的本地机),亦可以Windows下通过远程登录软件如Telnet登录到Linux服务器的操作界面。宿主机只能编译连接程序,不能运行程序)。串口终

16、端,可以是Linux的minicom。亦可以是Windows的超级终端。目标机可以看成一台计算机,串口终端就相当于这台计算机的显示器,作为人机交互界面。在宿主机编译链接后得到的可执行文件,下载到目标机上运行。虚拟机虚拟机VMware及操作系统及操作系统Ubuntu的安装的安装 虚拟机(Virtual Machine)指通过软件模拟的具有完整硬件系统功能的、运行在一个完全隔离环境中的完整计算机系统VMware 可以使你在一台机器上同时运行二个或更多Windows、DOS、LINUX系统。与“多启动”系统相比,VMWare采用了完全不同的概念。多启动系统在一个时刻只能运行一个系统,在系统切换时需要

17、重新启动机器。 VMWare是真正“同时”运行,多个操作系统在主系统的平台上,就像标准Windows应用程序那样切换。而且每个操作系统你都可以进行虚拟的分区、配置而不影响真实硬盘的数据,你甚至可以通过网卡将几台虚拟机用网卡连接为一个局域网,极其方便。课程中演示所安装的VMware 版本VMware-workstation-full-7.1.3-324285.exeUbuntu版本是ubuntu-12.04-desktop_cp.iso(也可使用光盘安装)安装后界面安装后界面Linux 启动后有可以看到很多目录文件,这些目录存放文件、作用如下/bin存放常用命令/boot 存放启动程序/dev存

18、放设备文件/etc存放启动、关闭、配置程序文件/home用户工作根目录/lib存放共享链接库/root 超级用户的工作目录/sbin 系统管理员的常用管理程序/tmp存放临时文件/lost+found系统出现异常时,用于保存部分资料建立交叉开发环境建立交叉开发环境宿主机是运行Linux的PC或者服务器。由于Linux版本众多,各版本之间存在差异,我们这里使用的是Ubuntu12.04,安装在windows系统下的虚拟机(VMware-workstation-full-7.1.3)中。由于目标板平台处理器是ARM,因而需要安装针对ARM的GCC编译器。适用于ARMLinux的编译器为arm-li

19、nux-gcc。arm-linux-gcc安装步骤安装步骤l将arm-linux-gcc-4.5.1.tgz文件复制到/opt目录下l解压文件。运行命令:#tarzxvfarm-linux-gcc-4.5.1.tgz-C/,解压之后就产生了目录/opt/FriendlyARM(tarzxvf将目录或文件解压缩并解包)l修改环境变量。执行命令:#vi/.bashrc(或者#gedit/etc/bash.bashrc)打开.bashrc文件,在文件末尾添加exportPATH=$PATH:/opt/FriendlyARM/toolschain/4.5.1/binl运行命令:arm-linux-gc

20、cv查看是否安装成功开发板安装开发板安装Linux系统系统安装Linux系统主要有以下步骤:u准备好硬件连接,在PC机上配置超级终端把开发板设置为SD启动u对NandFlash进行格式化,对应命令fu安装Bootloader,对应命令vu安装内核文件,对应命令ku安装目标文件系统(yaffs2或ubifs格式),对应命令y或u在在Windows下进行下进行FTP下载下载l设置目标板的IP为192.168.1.1,保证与宿主机在同一IP段(ifconfigeth0192.168.1.1netmask255.255.255.0)l设置TFTPSERVER软件(设置input目录和output目录为

21、PC机桌面)l在Windows的超级终端中执行文件传输命令(tftp-g-ra.out192.168.1.10)将文件发送到目标板l在Windows的超级终端中执行文件传输命令(tftp-p-la.out192.168.1.10)将文件发送到PC机Tftp 指令指令utftp-dignv主机名称或IP地址u-gGetfile(从宿主机获得文件)u-r文件名remotefile(远程文件)u-pPutfile(发送文件到宿主机)u-l文件名localfile(本地文件)简单的简单的hello wordn创建一个名位hello.c的文件,代码如下#includeintmain(void)printf(Helloworld!n);return0;u将文件复制到ubuntu进行编译,执行命令:arm-linux-gcchello.c执行后会产生一个名为a.out的二进制文件u将a.out文件复制到widows系统桌面u将文件传入到目标板u在windows系统的超级终端执行a.out文件

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 高等教育 > 研究生课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号