第4章:交叉编译环境1

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

优点:纯软件,价格较低,简单,软件调试能力较强。
缺点:需要事先在目标机上烧写监控程序(往往需多次试验才 能成功),且目标机能正常工作,功能有限,特别是硬件调试 能力较差。
(4)OCD方式
OCD(片上调试器)将ICE提供的实时跟踪和运行控制分开, 使用很少的实时跟踪功能放弃,而大量使用的运行控制放到目 标机的CPU核内,由一个专门的调试控制逻辑模块来实现,并 用一个专用的串行信号接口开放给用户。这样,OCD可以提 供ICE80%的功能,成本还不到ICE的20%。
主要目的是:提供一套与目标机一致的库函数和编译器。
要实现交叉编译需要的软件有: 交叉编译工具(一组编译器、库函库和头文件)
安装步骤: 博创公司提供了一套开发工具光盘。光盘中有一个安
装批处理文件install.sh。运行安装程序后,会自动新建2 个目录。
arm2410s目录主要存放:linux内核源代码、各种实验源程序等。
目标上CPU的设备,可以执行目标机CPU指令,能够将内部 的信号输出到被控的目标机,ICE上的内存也可以被映射到用 户的程序空间。这样,即使目标机不存在,也可以进行代码调 试。
实时在线仿真具有以下优缺点: 优点:功能非常强大,软硬件均可做到完全实时在线调试。 缺点:价格昂贵。
(2)模拟调试
调试工具和待调试的嵌入式软件都在宿主机上运行,由 宿主机提供一个模拟的目标运行环境,可以进行语法和逻辑上 的调试。
4、串口通信软件配置
在进行嵌入式软件开发调试时,需要使用工具充当 目标机的信息输出监视器,这个工具通常是串口通信 软件。 (1)如果宿主机安装的是Windows操作系统,则可以 选择超级终端串口通信软件; (2)缩主机安装的是Linux操作系统,则可以选择 minicom串口通信软件。
选项: (1)选串口。在linux系统中 COM1的设备文件名为 /dev/ttyS0。 (2)速度等参数。 “115200 8N1”
Linux开发软件的目录介绍 /arm2410s/exp 各种实验的源代码 /arm2410s/minigui minigui应用程序和库的源代码 /arm2410s/kernel-2410s 2410-s平台Linux内核源代码 /arm2410s/img/vivi 系统引导程序 /arm2410s/img/zImage ARMLinux-2.4内核压缩映象文件 /arm2410s/img/root.cramfs 根文件系统象文件 /arm2410s/img/yaffs.tar.bz2 demos演示程序的压缩文件 /arm2410s/kernel-2410s/include 交叉编译时头文件目录 /opt/host/armv4l/bin/armv4l-unknown-linux-gcc 主编译器
第4章:交叉编译环境1
使用交叉编译的原因: 由于嵌入式系统的硬件资源有限,不能安装
编译所需要的资源。
开发机与目标机的不同
体系结构不同 处理能力不同 运行的操作系统不同 输入输出方式不同
2、嵌入式常用的调试方法
(1)实时在线仿真 (2)模拟调试 (3)软件调试 (3)OCD调试
(1)实时在线仿真(ICE)方式 实时在线仿真(In-Circuit Emulator,ICE)是一种用于替代
由于历史原因,OCD有许多不同的实现方式,标准并不统一。
比较典型的有: IBM和TI公司提出的连接测试存取组(Joint Test Action Group,JTAG)。 Motorola公司提出的后台调试模式(Background Debugging Method, BDM)
JTAG仿真器的功能有2种. 第一是完成程序仿真调试; 第二,完成对Flash存储器的烧写。
5、Flash程序烧写
在宿主机上编译好引导程序、Linux系统内核、根文 件系统、应用程序。然后,将它们烧写到目标机的 Flash中。
串口线 (终端方式操作)
目标板 (target)
1、在宿主机上,安装好Linux操作系统 Linux操作系统,如果安装了gcc编译。就可以
进行c语言程序编译。
1、在宿主机上,安装好Linux操作系统 Linux操作系统,如果安装了gcc编译。就可以进行c语言程序编
译。
2、安装NFS服务器
3、安装交叉编译软件包
宿主机交叉编译软件配置
方案1: 宿主机上应安装的软件有: Linux操作系统 软件开发工具包 交叉编译工具包
方案2: 宿主机上应安装的软件有: Windows操作系统+虚拟机 (Linux操作系统)+Samba 服务 软件开发工具包 交叉编译工具包
网线 (将硬盘,让实验箱使用)
宿主机(host)
优点:简单方便,不需要目标机,成本低。 缺点:功能非常有限,无法实时调试。
(3)软件调试
宿主机和目标机通过某种接口(通常是串口)连接,宿主 机上提供调试界面,待调试软件下载到目标机上运行。这种方 式的先决条件是在宿主机和目标机之间建立起通信联系(目标 机上需要固化监控程序)
将一段称为ROM Monitor的程序固化在目标机上,负责监 控目标机上被调试程序的运行。
本课程使用的调试方法是:软件调试方式。 其中:ROM Monitor程序是利用JTAG写入Flash存 储器。
3、交叉编译环境构建 嵌入式交叉编译硬件连接图
JTAG
网线 串口线源自文库
交叉编译环境构建包括2个部分:
第一部分是:宿主机(嵌入式交叉编译环境) PC+Linux+交叉编译器+库函数。
第二部分是:目标机(嵌入式软件运行环境) 实验箱+引导程序+嵌入式操作系统。
opt目录主要存放:交叉编译器、资源库、头文件等。
开发环境相关说明:
1、交叉主编译器:armv4l-unknown-linux-gcc 2、主编译器存放的目录:/opt/host/armv4l/bin/ 3、自动搜索主编译器的方法:
在文件/root/.bash_profile中,修改PATH变量,变成 PATH=$PATH:$HOME/bin:/opt/host/armv4l/bin/ 存盘后运行/root/.bash_profile文件使其生效。
相关文档
最新文档