ucos环境搭建简介
- 格式:doc
- 大小:26.50 KB
- 文档页数:1
--ucos嵌入式仿真开发环境的建立课件 (二)- UCOS嵌入式仿真开发环境的概述- UCOS嵌入式仿真开发环境的建立步骤- UCOS嵌入式仿真开发环境的使用方法- UCOS嵌入式仿真开发环境的优点UCOS嵌入式仿真开发环境的概述UCOS是一款基于C语言的实时操作系统,常用于嵌入式系统开发。
UCOS嵌入式仿真开发环境是一款集成开发环境,可以帮助开发人员在PC上进行嵌入式系统的开发和仿真。
该开发环境可以支持多种处理器架构,包括ARM、MIPS、PowerPC等。
UCOS嵌入式仿真开发环境的建立步骤1. 下载并安装UCOS嵌入式仿真开发环境软件;2. 配置开发环境,包括设置编译器、调试器等;3. 创建工程,包括选择处理器架构、选择UCOS版本等;4. 编写代码,包括UCOS的初始化、任务创建、任务调度等;5. 编译代码,生成可执行文件;6. 调试代码,包括断点调试、单步调试等。
UCOS嵌入式仿真开发环境的使用方法1. 打开UCOS嵌入式仿真开发环境软件;2. 创建工程,选择处理器架构、选择UCOS版本等;3. 编写代码,包括UCOS的初始化、任务创建、任务调度等;4. 编译代码,生成可执行文件;5. 调试代码,包括断点调试、单步调试等。
UCOS嵌入式仿真开发环境的优点1. 提高开发效率:UCOS嵌入式仿真开发环境可以在PC上进行嵌入式系统的开发和仿真,避免了频繁地下载代码到目标板上进行调试的过程,提高了开发效率;2. 方便调试:UCOS嵌入式仿真开发环境可以进行断点调试、单步调试等操作,方便开发人员进行调试;3. 跨平台支持:UCOS嵌入式仿真开发环境可以支持多种处理器架构,包括ARM、MIPS、PowerPC等,具有很好的跨平台支持性;4. 易于学习:UCOS嵌入式仿真开发环境使用C语言进行开发,对于熟悉C语言的开发人员来说,学习起来相对容易。
Uc/os-II软件开发环境介绍何树生针对即将使用的uc/os操作系统的LPC2478芯片,周立功公司给的软件样例都是基于ADS12的开发环境,由于其J-TAG仿真器使用的是并口,且ADS12这个环境使用相对麻烦,因此,不是很适合我们的开发工作,我们前期尝试并成功将开发环境切换到realview 中,realview这个IDE的集成度较高,且与配套的ulink2调试器配合开发比较稳定,更适合我们的开发工作,以下针对LPC2478这个芯片,介绍使用realview进行软件开发的环境配置。
可参考附件的样板,为我们从ADS12到realview的移植版本。
LPC2478片内带有512K的flash及64K的SRAM,开发板外部带2M的NOR FLASH 和32M的SDRAM;由于flash具有擦除寿命的限制,因此,我们的调试主要在SDRAM中进行。
一.创建工程:1)新建工程,打开realview,选择project new uvision projects,如图:2)输入自己定义的工程名称,确定后,选择芯片的类型(LPC2478):周立功提供的启动代码:这样我们就建立了一个空的工程;3)添加工程文件,点击图示按纽,弹出对话框可配置我们的工程文件,在图示的对话框中,第一项为,不同的工程目标,如:我们可区分为在片内FLASH调试或者片外SDRAM调试等不同的配置;第二项为组,即该项目下一个比较大的目录,第三个为具体的文件;它是指定组的具体的文件;可见,从左到右是主到从的依附关系;通过点击右下方的Add Files,来添加每个组指定的文件(可编译文件,C,汇编);下图为我们配置好了的文件的一个样例:在按“确定”后,可以在左边的工作区中看到我们的文件树:这样就完成了工程的文件树创建;二.主要功能及操作:下面是我们比较经常使用到的realview的一些基本的功能:如图所示:图1图2三.选项配置:对于每一个创建目标,(在片内FLASH上调试或者片外SDRAM调试)如何实现他们的区分呢?这就是每一个创建目标的选项的功能;1) 点击图示按键或者在工作区中右键工程目标,选择“options for target…”:2)显示如下的对话框,通过对这些配置选项进行配置,可实现各个目标的区别;以下介绍几种调试方式的具体配置:片外SDRAM调试配置:realview运行一段我们指定的SDRAM初始化脚本,并将调试代码拷贝到片外SDRAM中,进行调试,这将是我们在调试系统时的主要调试方式;1)配置输出文件的选项,如图,选择选项的output页,选择“select folder for object”弹出选择输出路径的对话框,一般情况下,我们对于每一个不同的目标都会选择一个独立的输出目录,以区别不同的目标;选择“create executable…”用以生成的目标是可执行文件,并勾上生成HEX文件的选项;2) 选择用户程序配置,它能完成在指定编译连接完成后,再执行用户指定的程序,由于realview编译出来的是axf文件,而我们在以后的生产过程中用的是bin文件,因此有必要进行一次转化:将生成的axf文件转化为(注意路径的选择):D:\Keil\ARM\BIN31\fromelf.exe --bin --output D:\keilwnl\RTCmbox_Data\DebugInExDRAM\DebugInExDRAM11.binD:\keilwnl\RTCmbox_Data\DebugInExDRAM\DebugInExDRAM.axf将bin文件添加信息头,生成发行版本文件(build.exe是我们自己写的程序,请自己拷贝到keil目录下),主要是考虑到发行版本的特殊性:D:\Keil\ARM\BIN31\build.exe -I D:\keilwnl\RTCmbox_Data\DebugInExDRAM\DebugInExDRAM11.bin -O D:\keilwnl\RTCmbox_Data\DebugInExDRAM\DebugInExDRAM2.bin3)编译器选项配置。
实验1《任务的创建、删除、挂起、恢复》实验学时: 2 实验地点:二综x203 实验日期:2013/12/13一、实验目的1.实验环境的建立2.任务的接口函数的应用二、实验内容1.设计一个只有一个任务Task1,当程序运行后任务的工作就是每秒在显示器上显示一个字符“M”。
2.在任务Task1中在创建一个任务Task2 。
当程序运行后,任务Task1的工作在显示器上显示一个字符“M”;Task2 则是在显示器上显示字符“Y”。
3. 要求任务Task2运行20次后,挂起任务Task1;任务Task2运行40次后,恢复任务Task1。
4. 当任务Task1运行5次时,用函数OSSchedLock()对调度器进行加锁;而当任务Task1运行到第10次时,再用函数OSSchedUnlock()对调度器进行解锁,并运行该程序。
5. 使任务Task1能删除任务Task2。
三、实验方法包括实验方法、原理、技术、方案等。
四、实验步骤1.将BC45文件夹拷贝到C分区根目录下。
2.将software文件夹拷贝到任意分区根目录下。
3. 分别完成实验1、2、3、4、5五、实验结果1. DOS窗口每秒显示一个字符“M”。
每行显示10个“M”字符,行与行的间隔是一行。
按ESC键程序退出2. DOS窗口交替显示字符"M"和“Y”,每隔一秒显示一次。
每行显示10个字符,行与行之间的间隔是一行。
按ESC键程序退出3.DOS窗口开始交替显示字符"M"和“Y”,显示20次以后,Task1挂起,只显示“Y”,当Task2运行40次以后,Task1恢复,然后开始Task1,Task2交替运行。
4.DOS窗口开始交题显示字符"M"和“Y”,显示5次以后,Task1将任务调度器上锁,此时只有“M”打印,当Task1运行10次后,Task1,Task2开始交替运行。
5.DOS窗口开始交替显示字符“M”和“Y”,显示10次后,只显示“Y”六、实验结论对实验数据和结果进行分析描述,给出实验取得的成果和结论。
UCOSII操作系统课程设计一、课程目标知识目标:1. 理解UCOSII操作系统的基本原理和核心概念,包括任务管理、时间管理、通信与同步机制;2. 掌握UCOSII的移植方法和配置过程,学会在不同硬件平台上搭建UCOSII 操作系统环境;3. 学会使用UCOSII提供的API进行多任务编程,了解实时操作系统的任务调度和资源管理策略。
技能目标:1. 能够运用C语言在UCOSII环境下编写多任务应用程序,实现任务间的同步与通信;2. 能够分析并解决实际嵌入式系统开发中与操作系统相关的问题,提高系统稳定性和可靠性;3. 掌握UCOSII调试技巧,能够运用调试工具对操作系统运行状态进行跟踪和分析。
情感态度价值观目标:1. 培养学生对操作系统知识的好奇心和探索精神,激发学习兴趣和热情;2. 培养学生具备良好的团队合作精神和沟通能力,提高解决实际问题的能力;3. 增强学生的创新意识,鼓励他们在实际项目中积极尝试和应用所学知识。
课程性质:本课程为高年级专业课,以实际应用为导向,注重理论与实践相结合。
学生特点:学生已具备一定的C语言编程基础和嵌入式系统知识,具有较强的学习能力和实践能力。
教学要求:教师需采用项目驱动教学法,引导学生通过实际案例掌握UCOSII 操作系统的应用与开发。
在教学过程中,关注学生的个体差异,提供个性化指导,确保课程目标的实现。
同时,注重培养学生的自主学习能力和创新能力,为将来的职业发展打下坚实基础。
二、教学内容1. UCOSII操作系统概述:介绍实时操作系统的基本概念、特点及应用场景,引出UCOSII的背景、架构和优势。
教材章节:第一章 实时操作系统概述2. UCOSII内核原理:讲解UCOSII的核心组件,包括任务管理、时间管理、通信与同步机制等。
教材章节:第二章 UCOSII内核原理3. UCOSII移植与配置:介绍在不同硬件平台上移植和配置UCOSII的方法,以实际案例为例进行讲解。
如何搭建PC机+ucos ii的IDE开发环境?PC机+ucos ii的IDE开发环境,将此应用平台搭建完成后可以配合《嵌入式实时操作系统uCOS-II》邵贝贝(第二版)来练习.硬件开发平台:intel x86 实时操作系统版本:ucos ii V2.52编译环境: Borland C++ 4.5 和 Borland Tasm 5.0第一步:安装Borland C++ 4.5和Borland Tasm 5.01. 安装BORLAND C++4.5 到 C:\BC45 (运行INSTALL.EXE安装。
安装路径最好为C:\BC45。
由于BC45中不包含TASM因此需要另外安装TASM)2. 安装BORLAND TASM5.0 到 C:\TASM (运行INSTALL.EXE安装,首先会让你输入安装分区;而后是安装路径,最好为C:\TASM;而后是些安装选项,使用默认的可以了,安装完后一定要将Tasm.exe copy到BC4.5的bin目录下,这是汇编的编译器。
)3. 右键单击我的电脑--->属性--->高级--->环境变量--->弹出“环境变量”对话框4. 在“用户变量”列表中找到path,在变量值末尾添加“;C:\TASM\BIN;”第二步: BORLAND C++4.5编译UCOS/II1. 在任意一个盘建立文件夹MyTest (以D:\MyTest为例)2. 在MyTest文件夹下建立如下子文件夹SRC:为应用程序及ucos ii的源码Test01:为项目工程文件夹 SRC的子文件夹如下:APP:应用程序INCLUDE:所有头文件Ix86L:与PC的CPU相关的代码PC:PC机上的应用程序SOURCE:ucos ii的源码可以将我的SRC中的各个文件拷贝到你的对应的文件夹中3. 将INCLUDE文件夹拷贝到C:盘的根目录下,并修改INCLUDES.H中部分源码为:#include "c:\include\os_cpu.h"#include "c:\include\os_cfg.h"#include "c:\include\ucos_ii.h"#include "c:\include\pc.h"然后将INCLUDES.H拷贝到C:\BC45\INCLUDE (因为BORLAND C++4.5的头文件包含默认路径为此路径)4. 打开建立一个新的工程如下:点击 OK.5. MyTest\SRC\SOURCE\uCOS_II.C;;MyTest\SRC\PC\PC.C;;PMyTest\SRC\Ix86L\OS_CPU_A.ASM;; MyTest\SRC\Ix86L\OS_CPU_C.C ;MyTest\SRC\APP\TEST.C添加到工程中如下图所示:6. 编译并运行。
两种开源嵌入式操作系统介绍uc/os和uclinux操作系统,是当前得到广泛应用的两种免费且公开源码的嵌入式操作系统。
uc/os适合小型控制系统,具有执行效率高、占用空间小、实时性能优良和可扩展性强等特点,最小内核可编译至2k。
uclinux则是继承标准linux 的优良特性,针对嵌入式处理器的特点设计的一种操作系统,具有内嵌网络协议、支持多种文件系统,开发者可利用标准linux先验知识等优势。
其编译后目标文件可控制在几百k量级。
uc/os是一种免费公开源代码、结构小巧、具有可剥夺实时内核的实时操作系统。
其内核提供任务调度与管理、时间管理、任务间同步与通信、内存管理和中断服务等功能。
uclinux是一种优秀的嵌入式linux版本。
uclinux是micro-conrol-linux的缩写。
同标准linux相比,它集成了标准linux操作系统的稳定性、强大网络功能和出色的文件系统等主要优点。
但是由于没有mmu(内存管理单元),其多任务的实现需要一定技巧。
两种嵌入式操作系统主要性能比较嵌入式操作系统是嵌入式系统软硬件资源的控制中心,它以尽量合理的有效方法组织多个用户共享嵌入式系统的各种资源。
其中用户指的是系统程序之上的所有软件。
所谓合理有效的方法,指的就是操作系统如何协调并充分利用硬件资源来实现多任务。
复杂的操作系统都支持文件系统,方便组织文件并易于对其规范化操作。
嵌入式操作系统还有一个特点就是针对不同的平台,系统不是直接可用的,一般需要经过针对专门平台的移植操作系统才能正常工作。
进程调度、文件系统支持和系统移植是在嵌入式操作系统实际应用中最常见的问题,下文就从这几个角度入手对uc/os和uclinux进行分析比较。
进程调度任务调度主要是协调任务对计算机系统内资源(如内存、i/o设备、cpu)的争夺使用。
进程调度又称为cpu调度,其根本任务是按照某种原则为处于就绪状态的进程分配cpu。
由于嵌入式系统中内存和i/o设备一般都和cpu同时归属于某进程,所以任务调度和进程调度概念相近,很多场合不加区分,下文中提到的任务其实就是进程的概念。
实验一实验环境搭建一:实验目的:1.安装Borland c++。
2.完成实验环境搭建。
3.学会建立工程。
二:实验内容:1.安装Borland C++:注意:安装到c盘中2.安装TASM 5.0注意:安装到C盘根目录下。
3.配置环境变量。
找到变量名为“path”的项,在“变量值”中,填写“C:\TASM\BIN”。
4.搭建开发环境。
(1).新建一个工程在新建工程界面中进行设置。
在 Project Path and Name 中设置为“C:\software\uCOS-II\EX1_x86L\BC45\source\test.ide”。
在Target Type 中选择“Application[.exe]”。
在 Platform 中选择“DOS(Standard)”。
在 Target Model 中选择“Large”。
其他选择都为默认。
(默认是将uC/OS 放在 C 盘根目录下的,放在别的盘符下自己进行修改。
)设置完成后,点击“OK”(2)新建的工程会包含一个默认的“.cpp”文件。
(3)删除默认的test.cpp。
(4)添加新文件:依次添加以下文件:(1)“C:\software\uCOS-II\EX1_x86L\BC45\SOURCE”里的“test.c”文件。
(2)在“C:\software\uCOS-II\Ix86L\BC45”中,在 List Files of Type中选择“All file(*.*)”。
然后在选“os_cpu_a.asm”和“os_cpu_c.c”(3)在“C:\software\uCOS-II\SOURCE”中,选择“ucos_ii.c”文件(4)在“C:\software\BLOCKS\PC\BC45”中,选择“pc.c”文件(5).在project->build all,如果出现如下情况:就这个!这个文件在“C:\BC45\BIN”文件夹中(也就是开发环境的目录下),把它拷贝到“C:\software\uCOS-II\EX1_x86L\BC45\SOURCE”目录下(也就是我们工程目录下) 然后重新点击:project->build all。
一、环境搭建
1、点击OS252.exe,就会在C盘下出现C:\SOFTWARE目录,里面包含了os-ii源码和例程源码。
OS252.exe这里所做的工作就是把光盘中的SOFTWARE拷贝到C盘根目录下。
2、安装BC45:需要下载Borland C/C++ 4.5,解压后有一个文件夹,文件名为BC45。
把文件夹复制到
C盘根目录下。
二、测试环境
上面的工作准备好以后,我们就可以修改一下例程看看效果了,总共分为三步:
1、用记事本打开C:\SOFTWARE\OS-II\EX1_x86L\BC45\SOURCE下的TEST.C文件,把函数
TaskStartDispInit()中Example#1改为Hoole#1(第126行),然后保存。
2、运行批处理MAKETEST.BAT。
即双击C:\SOFTWARE\ OS-II\EX1_x86L\BC45\TEST\下的
MAKETEST.BAT即可将我们修改的程序编译成可执行的新的TEST.EXE文件;
3、运行TEST.EXE。
这里有两种运行方法,一种是直接双击C:\SOFTWARE\
OS-II\EX1_x86L\BC45\TEST下的TESTEXE文件;另一种是在DOS环境下进入到C:\SOFTWARE\ OS-II\EX1_x86L\BC45\TEST目录下运行TEST.EXE。
你会在显示窗口看到所做的修改。
3、就是这么简单,到此为止,我们学习OS-ii的编译调试环境就建立好了。