- 1、本文档共53页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 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中运行,
您可能关注的文档
- 第四章80X86指令系统.ppt
- 第四章.立体的投影.ppt
- 第四次课行业及竞争环境分析.ppt
- 第四周逻辑判断及流程控制.ppt
- 第四章excel〔公式与函数〕.ppt
- 第四章PowerPoint操作与应用.ppt
- 第四章MATLAB图形处理功能–新.ppt
- 第四周〔文明礼仪教育之学习习惯〕课件.ppt
- 第四章UMLL系统分析教程教案.ppt
- 第四章SAS输出传送系统〔ODS〕.ppt
- 人教版九年级英语全一册单元速记•巧练Unit13【速记清单】(原卷版+解析).docx
- 人教版九年级英语全一册单元速记•巧练Unit9【速记清单】(原卷版+解析).docx
- 人教版九年级英语全一册单元速记•巧练Unit11【速记清单】(原卷版+解析).docx
- 人教版九年级英语全一册单元速记•巧练Unit14【单元测试·提升卷】(原卷版+解析).docx
- 人教版九年级英语全一册单元速记•巧练Unit8【速记清单】(原卷版+解析).docx
- 人教版九年级英语全一册单元速记•巧练Unit4【单元测试·提升卷】(原卷版+解析).docx
- 人教版九年级英语全一册单元速记•巧练Unit13【单元测试·基础卷】(原卷版+解析).docx
- 人教版九年级英语全一册单元速记•巧练Unit7【速记清单】(原卷版+解析).docx
- 苏教版五年级上册数学分层作业设计 2.2 三角形的面积(附答案).docx
- 人教版九年级英语全一册单元速记•巧练Unit12【单元测试·基础卷】(原卷版+解析).docx
最近下载
- 2024年中国石油秋季招聘通用能力考试笔试备考试题及答案解析.docx
- 第一课 教室盆栽我做主—盆栽养护 课件 浙科版综合实践活动四年级上册.pptx
- 医疗安全(不良)事件根本原因分析法活动指南.pdf VIP
- 2023年中考押题预测卷02(杭州卷)-英语(考试版)A4.docx
- 于品 清华丘班数学分析讲义.pdf VIP
- 金融风险管理(中央财经大学)中国大学MOOC(慕课)章节测验试题(答案).pdf
- 一年一度喜剧大赛江东鸣《先生请出山》完整台词.docx VIP
- 党员立足本职岗位发挥党员先锋引领作用发言稿.doc VIP
- 《机床电气控制》M7130型卧轴矩台平面磨床的电气控制.pdf VIP
- Unit 4 Period 4 Developing Ideas 课件-高一上学期英语课件(外研社2019必修第一册).pptx
文档评论(0)