预览加载中,请您耐心等待几秒...
1/4
2/4
3/4
4/4

在线预览结束,喜欢就下载吧,查找使用更方便

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

您的论文得到两院院士关注ARM开发与应用 文章编号:1008-0570(2006)04-2-0087-03 基于ARM9的嵌入式Linux开发流程的研究 ResearchontheDevelopingofEmbeddedLinuxBasedonARM9 (武汉大学)许先斌熊慧君李洲杨芬刘炜 Xu,XianbinXong,HuijunLi,ZhouYang,FenLiu,Wei 摘要:本文通过介绍ARM9与嵌入式Linux的特点,描述了基于ARM9的嵌入式Linux开发一般流程。在介绍开发环境的配置 方法之后,提出了使用NFS与TFTP进行程序下载和使用GDBServer进行远程调试的开发方案,同时演示了一个串口驱动程 序开发的实例。 关键字:ARM9;嵌入式Linux;NFS;TFTP;GDBServer 中图分类号:TP316文献标识码:A Abstract:ThispaperdescribesthegeneralprocessofthedevelopingofembeddedLinuxbasedonARM9throughintroducingthe characteristicsofARM9andembeddedLinux.Afterintroducingtheconfigurationofdevelopingenvironment,thispaperproposesa methodofdevelopingwhichusesNFSandTFTPtodownloadprogramandusesGDBServerforremotedebuggingbyshowinganex- ampleofdevelopinganRS-232Driverprogram.技 KeyWords:ARM9;EmbeddedLinux;NFS;TFTP;GDBServer 术 1引言入Linux内核,下载烧写新的内核就完成了整个开发。 用户程序的开发调试主要有两种方式:创 随着嵌入式技术的不断发展,各种嵌入式平台纷 (1)在主机上编写完用户程序,将其直接编译入新 纷涌现,ARM9作为新一代嵌入式平台凭借其强大的内核,整体下载入目标板,再进行调试。 功能与良好的设备支持受到了普遍的关注。它采用5 (2)在主机上通过交叉编译器编译用户程序生成 级流水线,具有指令和数据Cache,支持协处理器和片 能在目标板上执行的二进制文件,通过串口或网络仅 上调试。在数据通信、多媒体显示和手持计算等领域 将用户程序下载到目标板上,用主机上的仿真终端仿 得到了广泛的应用。 真目标机,进行调试。 Linux是开放源代码的操作系统,同时由于其具 第一种方式在过去的嵌入式开发被大量运用,但 有体积小、执行速度快、较好的可裁减性与移植性等 是由于其灵活性较低,每次更改程序都需要经过编译 特点,在其基础之上发展的嵌入式操作系统层出不 入内核、下载到目标板等繁琐的步骤,浪费了大量的 穷。针对ARMCPU开发的,具有MMU功能的嵌入式 时间。而第二种开发方式每次只用下载用户程序即可 Linux操作系统无疑是ARM平台上操作系统的最佳 调试,非常方便,因此在笔者进行的串口驱动程序开 选择。本文主要研究了在ARM9+Linux下进行开发的 一般流程。发中使用了第二种开发方式。 ARM9嵌入式平台支持使用串口传输命令,使用 2开发平台配置串口和网络传输数据。相对于使用串口传输数据,使 2.1开发方式介绍用网络传输具有速度快,可以在目标机上虚拟主机等 进行嵌入式开发通常采用HOST/TARGET(即“主特点。因此笔者使用串口进行发送命令,网络传输数 机/目标机”的方式)。先利用主机(一般为PC)上强大据(图1)。 便捷的开发环境开发出应用程序;然后利用串口和网 络将程序下载到目标机(即嵌入式平台)上,用目标机 配备的仿真器或主机上的交叉调试器对目标机上的 程序进行调试排错;最后将调试成功的目标程序编译 图1 许先斌:教授 在开发驱动程序的同时,笔者使用NFS与TFTP 基金项目:国家自然科学基金资助基金号:(60273072) 进行网络传输。NFS即网络文件系统,是一种网络上文 获国家863高新技术研究发展计划资助基金 件共享的协议,通过NFS访问另一台计算机的文件就 编号:(2002AA4234502) 《PLC技术应用200例》邮局订阅号:82-946360元/年-87- ARM开发与应用中文核心期刊《微计算机信息》(嵌入式与SOC)2006年第22卷第4-2期 像访问本机硬盘上的文件那么简单。而TFTP是一个如果显示接收到文件,并且根目录下多了那个文 文件传输的简单协议,它是基于UDP协议而实现,此件,则配置成功。如果显示超时,则可以用如下命令查 协议适用于小文件传输