第4篇 嵌入式开发环境.ppt

  1. 1、本文档共53页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第4章 嵌入式开发环境 本章主要内容: 1.嵌入式系统软件开发环境的建立 2.嵌入式程序调试烧写工具 3.Linux操作系统移植 4.ARM开发工具ADS等 4.1建立嵌入式系统的软件开发环境 本节主要介绍Linux操作系统。Linux操作系统和引导程序的编译,根文件系统的制作等都要在Linux环境下进行。因此,需要一台安装有Linux操作系统的PC作为软件开发的机器。如果现在使用的是安装了Windows的计算机,那么最好的办法就是在Windows里安装一个虚拟机,然后再在虚拟机里安装Linux操作系统,这样既不影响原来的工作环境,又可建立新的开发环境。 4.1.1 在虚拟机上运行Linux操作系统 PC上常用的虚拟机软件有VMWare和Virtual PC两种。根据实际需求,选择分配给虚拟机的硬盘空间。Redhat Linux典型的安装一般是2GB左右,因此选择8GB的空间就足够用了。通过共享文件夹的方式,在虚拟机中还可以访问到Windows下的文件。 在虚拟机中可以通过挂起系统的方式,保存当前的工作环境,当重新启动虚拟机时,再恢复到前一次的工作环境,继续没有完成的工作。这样启动的速度比重新启动系统要快得多。在虚拟机上运行Linux如图4-1所示。 图4-1 在虚拟机上云新Linux 4.1.2常用辅助工具 嵌入式Linux一般使用ARM处理器的第一个串口做为默认的控制台设备,启动过程中,Linux利用printk向串口输出启动信息。在进行引导程序或操作系统移植等工作时,经常利用串口输出的信息进行调试。 常用的串口工具有secureCRT、Windows自带的超级终端和网上可以下载的免费串口工具(如串口助手和丁丁串口工具等)。 图4-2嵌入式系统调试用的串口工具secureCRT的窗口 4.2程序调试烧写工具 学习嵌入式开发的第一个问题通常是想了解程序是怎么烧写到闪存的。烧写的方式有两种,一种方法是用编程器进行烧写,这通常是在生产中进行的;另一种方法是用通常芯片的JTAG口进行烧写,在研发调试过程中一般采用这种方法。 4.2.1 JTAG烧写线的制作 JTAG下载线非常简单,就是利用PC并行端口的输出带锁存的特点,使用软件通过并口引脚产生JTAG时序。 计算机并行口引脚的定义如表4-1所列。 表4-1 并行口引脚 使用D0~D3作为JTAG接口的TCK、TDI和TMS,用PIN11(BUSY)作为TDO。JTAG接口的另一个信号线TRST(复位信号线)并没有使用。电路图如图4-3所示。 图4-3 JTAG下载线电路图 4.2.2烧写程序Jflash简介 有了前面的下载线,再使用Jflash软件,就可以把程序烧写到闪存中。Jflash是使用JTAG口直接写闪存的流行工具。Jflash在Linux和Windows操作系统中都可以使用,现在主要还是介绍在Linux中的使用。Jflash在S3C2410的嵌入式系统中进行烧写时在屏幕上的输出如图4-4所示。 图4-4 闪存烧写程序Jflash Jflash命令格式:./jf2410 /f:test,test是要烧写到闪存的文件。 从图4-4中输出的信息可以看出Jflash的版本是v0.3,嵌入式系统中S3C2410处理器的ID是0x0032409d,这个程序当前支持的闪存有K9S1208(Samsung公司的Nand Flash)和28F128J3A(Intel公司的Nor Flash)。此外,还支持内存的读/写操作,包括硬件寄存器的读/写,在开发调试中,这个功能比较有用。 4.3 Linux操作系统移植 Linux操作系统是一个完全开放源代码的操作系统,用户可以自己下载、阅读、修改并重新编译内核,从而使开发人员能够完全自己定制相关的操作系统功能,以适合自己的需要。在Linux操作系统应用到一个新的系统平台时,需要进行代码修改,也就是操作系统的移植。嵌入式系统和PC不同之处在于嵌入式系统的硬件设备多种多样,同时由于资源的限制,操作系统又不能太庞大,因此需要针对具体系统进行裁剪。 4.3.1 Bootloader概述 基于Intel X86体系结构的PC也一样需要使用Bootloader。计算机上电后从地址0xFFFF0取第一条指令,这个地址存放的就是计算机主板的BIOS。BIOS完成开机时的硬件启动检测,然后读取硬盘的引导扇区。对于使用Linux操作系统的计算机,引导扇区上的程序先读入引导程序LILO或是GRUB,再由引导程序把Linux装入到内存中,然后把控制权交给Linux。 1.Bootloader主要功能包括启动和下载。 启动功能:所谓启动功能就是Bootloader从嵌入式系统的固态存储器(通常都是Flash)上将操作系统加载到RAM中运行,

文档评论(0)

xiaofei2001128 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档