在niosii上使用操作系统资料

上传人:今*** 文档编号:114957830 上传时间:2019-11-12 格式:PPT 页数:55 大小:1.82MB
返回 下载 相关 举报
在niosii上使用操作系统资料_第1页
第1页 / 共55页
在niosii上使用操作系统资料_第2页
第2页 / 共55页
在niosii上使用操作系统资料_第3页
第3页 / 共55页
在niosii上使用操作系统资料_第4页
第4页 / 共55页
在niosii上使用操作系统资料_第5页
第5页 / 共55页
点击查看更多>>
资源描述

《在niosii上使用操作系统资料》由会员分享,可在线阅读,更多相关《在niosii上使用操作系统资料(55页珍藏版)》请在金锄头文库上搜索。

1、 7.1. Cos简介 7.2. Cos on Nios 7.3. Cos的结构 7.4. Cos的配置 7.5. LwIP 7.6. LwIP on Nios 7.7. LwIP的配置 7.8. LwIP的使用 第七章(上)、在nios上运行Cos 基于软核技术的嵌入式系统设计与实践 7.1. Cos简介 Cos是由Micrium公司开发的一款可移植、可 固化、可裁剪、占先式多任务实时操作系统内 核。 自Cos发布以来,已经得到了40多种结构处理 器的支持和移植。 Altera公司已经在NiosII软核处理器上移植 Cos ,并将Cos整合到Altera的Nios Develop Kits

2、中。 第七章、在nios上运行uCos Cos内核提供的服务包括: 任务管理 (Tasks) 内存块管理(Memory Management) 时间管理 (Time Management) 消息邮箱和队列 (Message Passing) 信号量 (Semaphores) 事件标识 (Event flags) 7.1. uCos简介 7.2. Cos on Nios Altera公司已经在NiosII软核处理器上移植Cos ,并将Cos整合到Altera的Nios Develop Kits 中 。 在Altera的Nios Development Kits中,提供了一组 已经编译测试通过的C

3、os例程,供用户参考,并 可作为基本的Cos程序框架使用。 Altera的Cos on Nios移植以Easy to use为目标, 将Cos的开发整合到Nios IDE中,提供了图形界 面来完成Cos的配置和开发,无需再手工修改 OS_CFG.h文件。 第七章、在nios上运行uCos NiosII软核相关的代码 /components/altera_nios/UCOSII NiosII软核无关的代码 /components/micrium_uc_osii 在Nios IDE中, Cos的使用方法类似Nios处理 器的外设驱动。在IDE中,Project被指定支持 Cos组件,相应的Cos头

4、文件和元代码就会被 包含到Project的路径中,使Cos能够被编译并 链接到Project中。 7.2. uCos on Nios 7.3. Cos的结构 Altera的Cos本质上是Nios HAL的一个超集。 是Cos任务调度器和相关API函数在HAL环境 上的扩展。 在Cos Project中,所有的Nios HAL API都可 以同样使用。 HAL API User Program C Standard Library MicroC/OS-II API Nios II Processor System Hardware Device Driver Device Driver Devi

5、ce Driver 第七章、在nios上运行uCos 7.4. Cos的配置 a. 在Nios IDE 中新建工程,并选择Hello MicroC/OS-II为模板,新建的工程和对应的系 统库对MicroC/OS-II的相应配置都已经选择上 。接着以此Hello MicroC/OS-II工程为基础开发 应用程序。 b. 新建好工程和对应的系统库,在系统库上点 击右键选择Properties进入属性设置界面,在属 性设置页面RTOS选项选择MicroC/OS-II并通 过RTOS Options对MicroC/OS-II的具体属性做 进一步的选择。 第七章、在nios上运行uCos Altera

6、的uCos本质上是Nios HAL的一个超集 。是uCos任务调度器和相关API函数在HAL环 境上的扩展。 在uCos Project中,所有的Nios HAL API都 可以同样使用。 7.4. uCos的配置 通过RTOS Options选项对MicroC/OS-II的属性做进一步选择。 7.4. uCos的配置 7. 5. LwIP LwIP是一个轻量级的TCP/IP协议栈实现,其 实现目的在于用最小的资源提供完整的TCP/IP 协议功能,LwIP适合内存资源紧凑的嵌入式系 统,同样也适合于NiosII系统。 LwIP提供了完成的TCP/IP协议功能,支持IP ,ICMP,UDP,TC

7、P,DHCP,ARP。 实现了标准的sockets API接口。 第七章、在nios上运行uCos 7.6. LwIP on Nios Altera提供了LwIP在Nios上的移植,并将LwIP 整合到了Nios Development Kits中,在Altera的 移植中,同样向上层开发者提供了标准的 Sockets API接口。 实现了标准的sockets API接口。 在Altera的Nios Development Kits中,提供了一 组已经编译测试通过的LwIP例程,供用户参考 ,并可作为基本的LwIP程序框架使用。 第七章、在nios上运行uCos Altera在Nios上的Lw

8、IP移植基于uCos的 多任务环境,在Nios IDE中开发LwIP应 用程序需要工程首先配置为支持 MicroC/OS-II。 目前Nios上的LwIP支持的网络芯片为 SMSC的LAN91C111。 在Altera的Nios Development Kits中,提 供了一组已经编译测试通过的LwIP例程 ,供用户参考,并可作为基本的LwIP程 序框架使用。 7.6. LwIP on Nios 7.7. LwIP的配置 a. 在Nios IDE 中新建工程,并选择Simple Socket Server为模板,新建的工程和对应 的系统库对MicroC/OS-II和LwIP的相应配 置都已经选

9、择上。接着以此工程为基础开 发基于LwIP的应用程序。 b. 新建好工程和对应的系统库,在系统库 上点击右键选择Properties进入属性设置界 面,在属性设置页面RTOS选项选择 MicroC/OS-II。 第七章、在nios上运行uCos Altera的uCos本质上是Nios HAL的一个超集 。是uCos任务调度器和相关API函数在HAL环 境上的扩展。 在uCos Project中,所有的Nios HAL API都 可以同样使用。 7.7. LwIP的配置 通过Software Components页面对LwIP的属性做进一步选择。 7.7. LwIP的配置 7.8. LwIP的使

10、用 LwIP向上层提供了Standard Sockets接口 ,在Nios+MicroC/OSII+LwIP这个环境 下编写Socket程序和在Unix,Windows环 境下调用Socket接口编程是一样的,只是 需要注意如下两点区别。 第三章、在nios上运行uClinux 1. 在MicroC/OS-II启动OSStart()函数进入多任 务状态之前,调用如下两个函数完成网络接口 的初始化。 lwip_stack_init( ) lwip_devices_init( ) 2. 实现下列三个函数,以便LwIP获得正确的信 息启动协议栈。 init_done_func( ) get_mac_

11、addr( ) get_ip_addr( ) 7.8. LwIP的使用 void lwip_stack_init(int thread_prio, void (* init_done_func)(void *), void *arg) thread_prio主TCP/IP线程的优先级。 init_done_funclwip_stack_init函数执行完成 后就转向执行这个指针指向的函数。 arg传递给init_done_func( )的参数指针,视 init_done_fnuc( )而定,通常置为0。 执行TCP/IP协议栈的初始化并转向 init_done_fnuc( ) 7.8. LwI

12、P的使用 void init_done_func(void* arg) 调用lwip_devices_init( ); 初始化网络设备; 调用get_mac_addr( ); 调用get_ip_address( ); 创建一个任务执行用户Socket程序。 用户实现get_mac_addr()和get_ip_address(); 7.8. LwIP的使用 计算机与信息技术学院 7.9. Clinux发行包简介和安装 7.10.内核的实现 7.11.文件系统的实现 7.12.运行Clinux 7.13.用户应用程序实现 7.14.定制Clibc 7.15.定制busybox 第七章(下)、在ni

13、os上运行Clinux 基于软核技术的嵌入式系统设计与实践 7.9. uClinux发行包简介 本课程中使用的是Microtronix公司负责维护和 发行的Nios Clinux版本Microtronix Nios II Linux Distribution V1.4,这个版本中, Clinux是2.6.11的内核,这也是目前在Nios 上运行的最稳定的Clinux内核版本。 Microtronix Nios II Linux Distribution V1.4发 行包可以在 和 上下载,如果要在产品中 使用Microtronix公司的Linux,请详细阅读 上的授权细则。 第七章、在nios

14、上运行uClinux 安装完成后启动Nios IDE开发环境,选择菜单 FileNewProject进入新建项目窗口。如果安装顺 利,这个时候应该在窗口中看到出现了新的选项 Microtronix Nios, 7.9. uClinux 发行包简介 如果没有出现Microtronix Nios II选项,请 关闭Nios IDE,进入Window 命令行窗。 从命令行进入Nios IDE的安装目录 ( altera安装目录)kitsnios2bineclipse,并在 命令行下以参数-clean模式启动Nios IDE ,即键入命令 nios2-ide -clean 这时候,进 入新建工程窗口,

15、就能看到刚安装的 Microtronix选项。退出以后再次进入Nios IDE也不会再有找不到Microtronix选项的问 题。 7.9. uClinux 发行包简介 在Microtronix的发行包把Nios上的uClinux实现分 成了三个部分,Kernel,Filesystem,Application 。利用Microtronix的发行包提供的三种选项,单 独实现并完成这三个部分的配置和开发,并通过 Altera的Flash Programmer将三个部分写入到 flash芯片中,从而实现Clinux操作系统在Nios软 核上的自动启动运行。 和在一个传统的嵌入式系统上开发Clinux/Linux 系统不同的是,在nios上实现Clinux,不再需要 单独的引导装载程序。 7.9. uClinux 发行包简介 7.10.内核的实现 在Microtronix公司的Clinux发行包中, 已经将Clinux整合到了NiosII IDE中, 因此,在Nios II上实现Clinx,无需再单 独安装Cygwin或者Red Hat Linux这样的 开发环境,也无需再配置开发工具链。 内核,文件系统,应用程序的编译下载都 在Nios IDE和Nios SDK Shell下完成。 第七章、在nios上运行uClinux 1.新建一个Mic

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号