NucleusPlus在嵌入式系统应用.docVIP

  1. 1、本文档共7页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
NucleusPlus在嵌入式系统应用.doc

Nucleus Plus在嵌入式系统应用 Nucleus Plus内核技术 ATI 公司使用一种叫做软件组件的方法。所谓软件组件,就是具有明确目的或用途的由1个或数个C语言/汇编源文件的一段非独立执行应用程序,且每个组件都提供一 个定义好的外部接口,必须通过外部接口来使用组件。访问组件内的全局数据结构是被禁止的。使用了组件方法, 软件组件既易于更新也易于重用。Nucleus Plus软件组件通常由定义数据类型、常量以及外部接口的INCLUDE 头文件和一个或多个C语言/汇编源文件组成。Nucleus Plus 提供如下组件:任务控制管理、内存管理、定时器管理、中断、系统诊断、I/O驱动管理等共16个组件如下, Nucleus Plus Kernel: Common Service Component(CS) Initialization Component(IN) Tread Control Component(TC) Timer Component(TI) Mailbox Component(MB) Pipe Component(PI) Semaphore Component(SM) Event Flag Component(EV) Partition Component(PM) Queue Component(QM) Dynamic Memory Component(DM) I/O Component(I/O) History Component(HI) Error Component(ER) License Component (LI) Release Component(RL) Nucleus Plus 除了其功能强大的内核外,还提供了面向INTERNET、TCP/IP、WEB浏览器、图形以及文件系统的软件包。 Nucleus Plus 开发 1.Nucleus Plus 定制 Nucleus Plus 也能根据目标板的需要进行裁剪和定制,生成适合目标系统的操作系统,尽量少占系统内存。OS定制完成后,将其链接到目标应用程序,成为目标应用程序的一部 分。在典型的CISC体系结构的目标板上,它占用约20K 左右的空间,而在RISC体系结构的目标板上占用约40K左右的空间。一般地,Nucleus Plus 足以满足绝大多数的嵌入式应用。ATI公司提供了一个名为BUILD_LI.BAT或PLUS.BAT的批处理文件,用户可以删剪其中的模块,更改相关的 选项或开关,执行该文件生成与目标相关的操作系统,也就是根据系统需要生成定制的操作系统。需要注意的是,该批处理文件的内容与开发工具有关。 2.开发方案 Nucleus Plus可以结合Paradigm、SDS以及ATI的多任务调试器组成功能强大的集成开发环境,配合相应的编译器(Borland c/c++ 编译器、Turbo c/c++ 编译器或者Microsoft c/c++编译器)和动态链接库以及各类底层驱动软件就可以满足嵌入式应用的开发。 3.开发流程 用Nucleus Plus 开发嵌入式应用程序,一般遵循如下步骤: * 如果有必要,应对低级系统初始化文件.INT进行修改,使之符合目标板的需要。如中断向量、I/O地址、时钟频率等。 * 定义Application _Initialize()函数。该函数在启动系统之前先执行。注意的是要把NUCLEUS.H头文件包括在目标应用程序中,以便利用Nucleus Plus 的服务。 * 定义应用程序的任务。如果调用Nucleus Plus 的服务,要把NUCLEUS.H包含进去。 * 编译/汇编所有的应用程序软件,并且包含系统低级初始化文件.INT。 * 链接.INT和所有的应用程序目标文件、Nucleus Plus库文件以及相关的开发工具库。 * 把生成的最终目标代码下载或烧到目标板上执行。 4.Nucleus Plus 初始化 Nucleus Plus 分三个层次的初始化,即:系统低级 初始化Int-Initialize()、系统高级初始化Inc-Initialize()和应用程序初始化 Application_Initialize(),初始化之后便进入Nucleus Plus 的任务调度循环。各个初始化函数任务见表1。 表1:Nucleus Plus 初始化表 Int_Initialize() Inc_Initialize() Application_Init

文档评论(0)

aiwendang + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档