下载  >  开发技术  >  其它  > 论文研究-RT Thread在OMAPL138上的应用 .pdf

论文研究-RT Thread在OMAPL138上的应用 .pdf 评分:

RT Thread在OMAPL138上的应用,孙溥,李绍胜,在TI给出的解决方案中,OMAPL138中的ARM核上运行的是嵌入式Linux操作系统,在DSP核上运行的是DSPBIOS实时操作系统。但是由于嵌入式Linux的实
山国武技记文在 应用程序 设备操作接口 设备管理 设备对象容器 串口驱动SD卡驱动网络驱动 硬件外设:串口,SD卡,以太网设备 图 的设备管理框架 应用程序通过 的设备操作接口获得正确的设备驱动,然后通过这个改备驱动 与底层硬件设备走行数据(或控制)交互 提供给上层应用的是一个抽象的 设备接∏,给卜层设备提供的是底层驱动框架。从系统整体位置来说设备模块相当于设 备驱动程序和上层应用之间的一个中间层。 设备模块实现了对设备驱动程序的封装。应用程序通过设各模块提供的标准接 口访问底层设备,设备驱动程序的升级、更替不会对上层应用产生影响。这种方式使得设备 的硬件操作相关的代码能够独立于应用程序而存在,双方只需关注各自的功能实现,从而降 低了代码的耦合性、复杂性,提高了系统的可靠性。 的设备模型是建立在内核对象模型基础之上的。在 中,设各也被 认为是一类对象,被纳入对象管理器的范畴。每个设备对象都是由基对象派生而来,每个具 体设备都可以继承其父类对象的属性,并派生出其私有属性。设备继承关系图是设备对象的 继承和派生关系示意图,如图所示。 基类 rt object 设备基类 rt device 字符设备类块设备类网络设备类音频设备类 串口驱动 SD卡驱动 网卡驱动 音频驱动 图 的设备模型 在 上的移植 中的 处理器是 ,在最新的 版本中己 经有了对此芯片的文持,但是并没有对 的开发板的相关支持。所以这里的工作就 不需要进行处理器的相关移植,仅实现硬件外设驱动和启动的设计即可,减少了许多的开发 量。相关的源码文件放在 源码目录中的了目录下,源码目录如图所示 山国武技记文在 卫卫 componerts examples oo5 attributes grigore travIs AUTHORS README.md 图 的源码目录 这个日录存放的是板级支持包,将 移植到本文设计的硬件上时,需要在 该目求下创建相应的子目录,例如 。在此目录下有几个文件比较重要: 为 开发板相关的初始化文件 是系统启动相关文件 为系统启动后执行的 应用线程文件,其他如 是驱动文件,包含了木系统中 处理器应该控制的所有外设。 和 是编译相关文件,用来控制编译。在 这里使用 的环境编译,编译工具为构建于 的 脚本。 中 用于系统时钟和外设工作频率的设置; 用于处理器中各模块电源管理,可以设置为唤隰或睡眠 用于管脚 复用的设置 用于外置存储器比如 和 的初始化; 用于串口的初始化: 用于以太网的初始化 用于灯的初始化。 中,主要创建并两个启动了 个是 个是 其中 初始化了文件系统和协议,并在系统中的文 件目录加载了上面提到的各种外设,使这些外设能以文件的形式被用户访问。这类似于 中的设备文件。而 则控制开发板上的两个灯轮流闪烁。 中 启用的缓存设置 设 置中断管理 完成上面提到的开发板上各项初始化 负责内核对象初始化; 用于内存管理初始化 用于调度管理初始化; 用于实时时钟初始化 用于 的初始化 负责上面提到的启动应用线程初始化 用 于空闲线程初始化: 开始调度任务,系统开始运行。 上述文件编写完成后编详出的 就是系统镜像,通过 仿真器在 下的 程序烧写进开发板上的 相应区域。这就完成了 在 上的移植工作,而且可以实现对网冂,串∏以及外存的调用。测试时观察丌发 板上的两个灯是否轮流闪烁,如果是则表明系统移植成功。 山国武技记文在 与 的通信 的通信考虑参考 的实现方式 提供了一套 通用的,从应用层抽象出与的物理连接特性。在处理器端, 是一个驱动,用户只需要通过调用 就可以实现和的通信。而在端, 是 中驱动的一部分,该部分驱动只负责基于物理连接之上与 之间的交互。端没有 的,通信是基于 模块上的 模块来实现的,如图所示 DSP/BIOS LINK API PROCESSOR MANAGER DSP/BIOS GPP OS LINK LINK OTHER OS ADAPTATION DRIVER DRIVER DRIVERS LAYER GPP DSP 图 的组成框图 由图可以看出,两个处理器上的 驱动层是实现双核通信的基础 调用此驱动是通过上层应用,调用此驱动是通过 中的模块。由于原 中端的 主要功能是实现单核()对多核() 的控制与管理,而在我们的系统中只有一个核和一个核,所以这个层并没有存 在的必要,将此舍弃。因此这里的主要工作就是编写 上的 驱动层 和层,以及上的 层 这里主要实现双核间的简单通信,修改后的双核通信协议栈如图所示 GPP DSP GPP Application LINK API LINK Driver(RT Thread LINK Driver(IOM Driver) Driver) Communication hardware 图双核通信协议栈 其中端的 运行在 上的设备驱动层,而运行在设备 操作接口层。双核通信的数据流迸图如图所示。 山国武技记文在 GPP Output ox80000000 Input from gpp from gPp Shared ram 0x80001000 Input output from gPP from dsp 图双核简单通信模型 如上图所示,端(即处理器端)首先通过应用层调用 驱动 将处理好的数据传输到双核共享的 上的指定地址(起始 大 ),然后发起一个中新。通过收到中断后,得知有新数据的到来,再通过 上的模块调用 驱动将数据复制到本地缓存,处理后再发送到共享 上的指定地址(起始 大小),并发送中断通知端。这样就实现了双核 间的简单通信。 端 的设计中主要包含」以下几个组件: 。其中 组件对整个 所用资源进行了主要的初始化 提供了最底层的访问和控制的方式,也 可以掌握的运行状态。是 中最主要的个组件。通用的对的控制 函数有(重置),(启动),(停止), (读写), (发 送中断) (清除中断)等。这个组件提供由控制的向存储空间读 写的,还可以实现向加载可执行程序的功能。 组件在物理连接层上封 装了底层驱动,以实现和之间通信的同步。这个组件为 层提供了驱 动初始化和同步服务。它定义了握手动作的种类,包括 (握手建立) (握于开始), 握于结束)。还定义了一些 输出的接口函数以及 初始化和同步需要的对象 组件提供了直接控 制和与通信的接口。它直接作用于使件,并且实现对的访问。把这个组件从其他 组件独立出来,目的是可以将它视为对处理器的抽象。 ( ),即硬件抽象层,它提供了 层对底层硬件的访问和控制 组件提供 的服务由组件使用。( ),即处理器间信号,这个组件实现 了与之间硬件中断的封装。 )端的设计中,为了实现上面的数据流通模型,设计了以下几个 用于配置必要的数据结构,使底层的 模块可以正确使用 可以向加载可执行稈序,确保调用者拥有的使用权和控制权 启动 加载到的可执行程序 使上的应用程序可以读取存储空间 山国武技记文在 使上的应用程序可以写入存储空间; 停止的运行 释放所有 步骤中分配的资源; 给指定的事件设 置一个响应函数; 向发送一个事件通知 注销响应函 数 端的和 层各组件的关系如图所示 LINK API PROC NOTIFY LINK DRV LDRV PROC LDRV IPS LDRV DRV LDRV DSP DSP1 图 端 和结构模型 的设计主要包含以下几个组件:,以及 由 于端依然使用 ,所以这部分的改动比较小。其巾组件主要包括以下 个部分:用于驱动初始化和组件间同步;是通用函数和工具集;是硬件抽象函数 和工具集;负责处理期间信号传递。组件是 驱动的一种应用,包括 以下几个组件:通用功能提供了驱动的常用功能,基于实际的物理连接:物理连 接层提供∫对的物理连接。 组件负责控制与间的事件通知和响应。它 们之间的关系如图所示。 LINK DRV BASE DATA NOTIFY 图端 结构模型 结论 本文给出了 在 上的移植和与 之间的通信方法,这样双 核上面都运行轻量级的操作系统,并且能够满足实时性的高要求,有利于 在通 信系统中的应用。 山国武技记文在 參考文献 鸟哥鸟哥的私房菜基础学习篇北京:人民邮电出版社, 开发组 编程指南 朱志 操作系统在 中移植的研究计算机光盘软件与应用

...展开详情
2019-08-17 上传 大小:431KB
举报 收藏
分享
Linux个人防火墙JAVA版实现(Netfilter+Netlink+Multi-Thre) in 2009

当时自己搜集的资料 博文链接:https://c-j.iteye.com/blog/364552

立即下载
thre.js学习

html中webGL里面three.js结合physic物理引擎的例子

立即下载
学习数据结构算法必备

数据结构算法演示 1. 顺序表 (1)在顺序表中插入一个数据元素(ins_sqlist) (2)删除顺序表中一个数据元素(del_sqlist) (3)合并两个有序顺序表(merge_sqlist) 2. 链表 (1)创建一个单链表(Crt_LinkList) (2)在单链表中插入一个结点(Ins_LinkList) (3)删除单链表中的一个结点(Del_LinkList) (4)两个有序链表求并(Union) (5)归并两个有序链表(MergeList_L) (6)两个有序链表求交(ListIntersection_L)

立即下载
严蔚敏 数据结构算法演示(Windows版)软件

本课件是一个动态演示数据结构算法执行过程的辅助教学软件, 它可适应读者对算法的输入数据和过程执行的控制方式的不同需求, 在计算机的屏幕上显示算法执行过程中数据的逻辑结构或存储结构的变化状况或递归算法执行过程中栈的变化状况。整个系统使用菜单驱动方式, 每个菜单包括若干菜单项。每个菜单项对应一个动作或一个子菜单。系统一直处于选择菜单项或执行动作状态, 直到选择了退出动作为止。 本系统内含84个算法,分属13部分内容,由主菜单显示,与《数据结构》教科书中自第2章至第11章中相对应。各部分演示算法如下: 1. 顺序表 (1)在顺序表中插入一个数据元素(ins_sqlist) (2)删除顺序表中

立即下载
数据结构算法演示(Windows版)

一、 功能简介 本课件是一个动态演示数据结构算法执行过程的辅助教学软件, 它可适应读者对算法的输入数据和过程执行的控制方式的不同需求, 在计算机的屏幕上显示算法执行过程中数据的逻辑结构或存储结构的变化状况或递归算法执行过程中栈的变化状况。整个系统使用菜单驱动方式, 每个菜单包括若干菜单项。每个菜单项对应一个动作或一个子菜单。系统一直处于选择菜单项或执行动作状态, 直到选择了退出动作为止。 二、 系统内容 本系统内含84个算法,分属13部分内容,由主菜单显示,与《数据结构》教科书中自第2章至第11章中相对应。各部分演示算法如下: 1. 顺序表 (1)在顺序表中插入一个数据元素(ins_sql

立即下载
c语言数据结构算法演示(Windows版)

一、 功能简介 本课件是一个动态演示数据结构算法执行过程的辅助教学软件, 它可适应读者对算法的输入数据和过程执行的控制方式的不同需求, 在计算机的屏幕上显示算法执行过程中数据的逻辑结构或存储结构的变化状况或递归算法执行过程中栈的变化状况。整个系统使用菜单驱动方式, 每个菜单包括若干菜单项。每个菜单项对应一个动作或一个子菜单。系统一直处于选择菜单项或执行动作状态, 直到选择了退出动作为止。 二、 系统内容 本系统内含84个算法,分属13部分内容,由主菜单显示,与《数据结构》教科书中自第2章至第11章中相对应。各部分演示算法如下: 1. 顺序表 (1)在顺序表中插入一个数据元素(ins_sql

立即下载
用c描述的数据结构演示软件

数据结构算法演示(Windows版) 使 用 手 册 一、 功能简介 本课件是一个动态演示数据结构算法执行过程的辅助教学软件, 它可适应读者对算法的输入数据和过程执行的控制方式的不同需求, 在计算机的屏幕上显示算法执行过程中数据的逻辑结构或存储结构的变化状况或递归算法执行过程中栈的变化状况。整个系统使用菜单驱动方式, 每个菜单包括若干菜单项。每个菜单项对应一个动作或一个子菜单。系统一直处于选择菜单项或执行动作状态, 直到选择了退出动作为止。 二、 系统内容 本系统内含84个算法,分属13部分内容,由主菜单显示,与《数据结构》教科书中自第2章至第11章中相对应。各部分演示算法如下:

立即下载
数据结构演示软件

数据结构算法演示(Windows版) 使 用 手 册 一、 功能简介 本课件是一个动态演示数据结构算法执行过程的辅助教学软件, 它可适应读者对算法的输入数据和过程执行的控制方式的不同需求, 在计算机的屏幕上显示算法执行过程中数据的逻辑结构或存储结构的变化状况或递归算法执行过程中栈的变化状况。整个系统使用菜单驱动方式, 每个菜单包括若干菜单项。每个菜单项对应一个动作或一个子菜单。系统一直处于选择菜单项或执行动作状态, 直到选择了退出动作为止。 二、 系统内容 本系统内含84个算法,分属13部分内容,由主菜单显示,与《数据结构》教科书中自第2章至第11章中相对应。各部分演示算法如下

立即下载
three.js教程

Javascript编程three.js绘制直线视频教程,附有练习材料。

立即下载
Android代码-LTE Cleaner (FOSS)

LTECleanerFOSS An alternative to SD Maid, and one that is completely free and open source! Tired of the abundance of phone cleaners on the play store? Tired of them being extremely shady? Tired of them doing nothing? Tired of ads? Tired of having to pay? Me too. Android API 23 (Marshmallow) n

立即下载
android UI线程和后台交互实例

android UI线程和后台线程交互,包括多线程之AsyncTask等例子展示。。。。。。。。。。。

立即下载
html+css+js制作的一个动态的新年贺卡

该代码是http://blog.csdn.net/qq_29656961/article/details/78155792博客里面的代码,代码里面有要用到的图片资源和音乐资源。

立即下载
Camtasia 9安装及破解方法绝对有效

附件中注册方法亲测有效,加以整理与大家共享。 由于附件大于60m传不上去,另附Camtasia 9百度云下载地址。免费自取 链接:http://pan.baidu.com/s/1kVABnhH 密码:xees

立即下载
电磁场与电磁波第四版谢处方 PDF

电磁场与电磁波第四版谢处方 (清晰版),做天线设计的可以作为参考。

立即下载
压缩包爆破解密工具(7z、rar、zip)

压缩包内包含三个工具,分别可以用来爆破解密7z压缩包、rar压缩包和zip压缩包。

立即下载
算法第四版 高清完整中文版PDF

《算法 第4版 》是Sedgewick之巨著 与高德纳TAOCP一脉相承 是算法领域经典的参考书 涵盖所有程序员必须掌握的50种算法 全面介绍了关于算法和数据结构的必备知识 并特别针对排序 搜索 图处理和字符串处理进行了论述 第4版具体给出了每位程序员应知应会的50个算法 提供了实际代码 而且这些Java代码实现采用了模块化的编程风格 读者可以方便地加以改造

立即下载
等级考试运行环境 VB6 VFP6 VC6 VC2010Express

等级考试运行环境 VB6 VFP6 VC6 VC2010Express(VC2010学习版)。其他环境,可以去等考官网下载。

立即下载
jdk1.8下载

jdk1.8下载

立即下载
DroidCamX 6.5 电脑端和手机端(2018年版本)

DroidCamX 6.5 适配安卓8.0和win10系统。让你的安卓手机变成摄像头。

立即下载
身份证号对应籍贯表大全(共6456条)

身份证号对应籍贯表大全(共6456条),可以很方便查出身份证对应的籍贯,方便工作、项目使用

立即下载