荔园在线

荔园之美,在春之萌芽,在夏之绽放,在秋之收获,在冬之沉淀

[回到开始] [上一篇][下一篇]


发信人: bso (报告类别:六级;状态:等待扣费), 信区: CMCE
标  题: uCOS-II安装调试指南[zz]
发信站: 荔园晨风BBS站 (Wed Mar 28 21:45:07 2007), 站内

uC/OS是一种体积小巧而实用的实时操作系统,由于其代码的开放性,近年来普遍受到人们
的关注,许多人开始从事这一操作系统的学习及应用工作,但由于其文档较少,特别是关于
安装和使用方面的指导性文章不够充足,使很多初学者,特别是刚刚接触嵌入式操作系统的
朋友们不知道如何进行系统的安装及调试,为此我结合自己使用的切身体会,谈一谈它的安
装及调试问题,希望对大家能起到一定的帮助作用。

文中的开发工具及开发包如下:

开发包:uC/OS2.51 点击此处下载
文中开发工具:Borland C 3.1 点击此处下载
其中开发工具是经过本人剪裁过的,只适用于此项目开发。

1 安装

1.1 下载软件包Software.rar(文件大小848KB)
1.2 解压缩,建议解压到C盘根目录,这样文件将安装在C:\SOFTWARE,需要空间2.12MB
1.3 安装完毕
1.4 以默认安装路径为例,目录结构为:
C: \SOFTWARE
这是根目录,是所有软件相关的文件都放在这个目录下。
C:\SOFTWARE\BLOCKS
子程序模块目录。笔者将例子中μC/OS-II用到的与PC相关的函数模块编译以后放在这个目
录下。
C:\SOFTWARE\HPLISTC
这个目录中存放的是与范例HPLIST相关的文件(请看附录D,HPLISTC和TO)。HPLIST.C存放
在C:\SOFTWARE\HPLISTC\SOURCE目录下。DOS下的可执行文件(HPLIST.EXE)存放在
C:\SOFTWARE\TO\EXE中。
C:\SOFTWARE\TO
这个目录中存放的是和范例TO相关的文件(请看附录D,HPLISTC和TO)。源文件TO.C存放在
C:\SOFTWARE\TO\SOURCE中,DOS下的可执行文件(TO.EXE)存放在C:\SOFTWARE\TO\EXE中。
注意TO需要一个TO.TBL文件,它必须放在根目录下。用户可以在C:\SOFTWARE\TO\EXE目录下
找到TO.TBL文件。如果要运行TO.EXE,必须将TO.TBL复制到根目录下。
C: \SOFTWARE\uCOS-II
与μC/OS-II 相关的文件都放在这个目录下。
C:\SOFTWARE\uCOS-II\EX1_x86L
这个目录里包括例1的源代码(参见 1.07, 例1),可以在DOS(或Windows 95下的DOS窗口)
下运行。
C:\SOFTWARE\uCOS-II\EX2_x86L
这个目录里包括例2的源代码(参见 1.08, 例2),可以在DOS(或Windows 95下的DOS窗口)
下运行。
C: \SOFTWARE\uCOS-II\EX3_x86L
这个目录里包括例3的源代码(参见 1.09, 例3),可以在DOS(或Windows 95下的DOS窗口)
下运行。
C: \SOFTWARE\uCOS-II\Ix86L
这个目录下包括依赖于处理器类型的代码。此时是为在80x86处理器上运行uC/OS-II而必须
的一些代码,实模式,在大模式下编译。
C: \SOFTWARE\uCOS-II\SOURCE
这个目录里包括与处理器类型无关的源代码。这些代码完全可移植到其它架构的处理器上。

2 开发工具Borland C 3.1的安装

2.1 先下载Borland C 3.1 (文件大小1.65MB)
2.2 解压缩,建议解压到C盘根目录,这样全部的文件将安装在C:\BC31,我们强烈建议采用
这个路径安装,这样您将可以直接进行项目的编译及调试,而不需要更改他们的配置,需要
空间5.10MB
2.3 如果您一定要将它安装到其他目录,请修改相应的配置文件,注意蓝色部分:
2.3.1 打开<安装路径>\BIN\TURBOC.CFG,显示如下:
-IC:\BC31\INCLUDE
-LC:\BC31\LIB
将C:\BC31该为安装的目录,例如安装目录为E:\BorlandC31,则改后应为
-IE:\BorlandC31\INCLUDE
-LE:\BorlandC31\LIB
2.3.2 打开<安装路径>\BIN\TLINK.CFG,显示如下:
-LC:\BC31\LIB
将C:\BC31该为安装的目录,例如安装目录为E:\BorlandC31,则改后应为
-LE:\BorlandC31\LIB
2.4 至此安装完成
2.5 以默认安装路径为例,目录结构为:
C:\BC31
这是根目录,是所有工具相关的文件都放在这个目录下。
C:\BC31\BIN
全部编译链接的开发工具都放在这个目录下
C:\BC31\LIB
全部链接库文件存放在这个目录下
C:\BC31\INCLUDE
全部头文件都存放在这个目录
还有需要说明的是这个Borland C是经过本人裁减的,目的是减少需要的空间(原版需要
19.6MB),如果您使用的是原版的软件,可以进行安装,则不需要进行2.3这一步骤的配置
工作,如果您却是需要这个原版的软件,请与我联系 留言 写信

3 项目开发

随开发包附带了4个例子,都具有一定的代表性,下面我们结合例1介绍项目开发的全过程,
需要说明的是:安装路径均为默认值。

3.1 进入C:\SOFTWARE\uCOS-II\EX1_x86L\BC45目录,会看到两个目录,他们功能如下:
C:\SOFTWARE\uCOS-II\EX1_x86L\BC45\SOURCE
源文件目录
C:\SOFTWARE\uCOS-II\EX1_x86L\BC45\SOURCE\INCLUDES.H
总的项目头文件,每个源文件都应包含
C:\SOFTWARE\uCOS-II\EX1_x86L\BC45\SOURCE\OS_CFG.H
配置文件,用于操作系统配置和剪裁
C:\SOFTWARE\uCOS-II\EX1_x86L\BC45\SOURCE\TEST.C
应用程序文件,在开发新项目时可以参考这个文件的格式
C:\SOFTWARE\uCOS-II\EX1_x86L\BC45\SOURCE\TEST.LNK
链接文件,包含了链接的库和链接参数
C:\SOFTWARE\uCOS-II\EX1_x86L\BC45\TEST
项目文件目录
C:\SOFTWARE\uCOS-II\EX1_x86L\BC45\TEST\TEST.MAK
项目的MAKE文件,熟悉C编译器的人一定知道,通过Make文件可以智能的对整个项目进行自
动的编译链接,非常方便,我们在后面会详细介绍这个文件。
C:\SOFTWARE\uCOS-II\EX1_x86L\BC45\TEST\TEST.MAP
项目映像文件主要完成库文件地址的映射,是项目的产物
C:\SOFTWARE\uCOS-II\EX1_x86L\BC45\TEST\MAKETEST.BAT
项目Make操作的批处理文件,它将自动完成整个编译链接的全过程
C:\SOFTWARE\uCOS-II\EX1_x86L\BC45\TEST\TEST.EXE
项目生成的可执行文件,使项目的产物
下面正式开始项目的开发

3.2 第一步,按上面的目录结构,建立项目目录,在例中建立了一个目录
C:\SOFTWARE\uCOS-II\EX1_x86L\BC45\,并在下面新建了两个子目录TEST和SOURCE,并将相
关文件复制到这两个目录中,注意应该尽量按这种路径和目录结构建立项目,否则可能需要
更改文件中的路径信息,这是很麻烦的事情。
值得推荐的最快捷的方法就是复制一个例子的目录,如果你的新项目名称为NewProject,可
以在C:\SOFTWARE\uCOS-II下新建一个目录C:\SOFTWARE\uCOS-II\NewProject,再将
C:\SOFTWARE\uCOS-II\EX1_x86L中的两个子目录直接复制到新建的目录下,最后只需更改内
部的文件的一些配置,在TEST.C中重新写入新项目的代码即可。

3.3 第二步,更改INCLUDES.H文件,文件内容为:
#include <stdio.h>
#include <string.h>
#include <ctype.h>
#include <stdlib.h>
#include <conio.h>
#include <dos.h>
#include <setjmp.h>

#include "\software\ucos-ii\ix86l\bc45\os_cpu.h"
#include "os_cfg.h"
#include "\software\ucos-ii\source\ucos_ii.h"
#include "\software\blocks\pc\bc45\pc.h"

如果你的软件包的安装路径和项目建立路径是按推荐方式设定的,则不需要更改此文件,但
你可以增加一些你想在项目中追加的头文件,如一些驱动程序或应用模块的头文件,但一定
要注意路径是否正确。如果你为按标准路径建立项目,必须逐行更改兰颜色部分的代码,使
路径正确。

3.4 第三步,配置OS_CFG.H文件,因这与软件包和开发工具的安装无关,只用于项目中操作
系统的配置,具体的请根据你的项目来自主决定,相关的介绍很多,可以参考uC/OS-II的电
子书。

3.5 第四步,修改TEST.LNK配置,这里进行开发工具链接时一些参数和链接模块的设置,可
以用编辑器打开:
/v /s /c /P- +
C:\BC31\LIB\C0L.OBJ +
..\OBJ\TEST.OBJ +
..\OBJ\OS_CPU_A.OBJ +
..\OBJ\OS_CPU_C.OBJ +
..\OBJ\PC.OBJ +
..\OBJ\uCOS_II.OBJ
..\OBJ\TEST,..\OBJ\TEST
C:\BC31\LIB\EMU.LIB +
C:\BC31\LIB\MATHL.LIB +
C:\BC31\LIB\CL.LIB

3.5.1 /v /s /c /P- 是链接的参数,建议不要更改;

3.5.2 C:\BC31\LIB\C0L.OBJ 是 Turbo C 的Large模式编译库模块,如果开发工具路径不是
默认设置,请改为实际的安装路径,例如将C:\BC31改为E:\BorlandC31

3.5.3 ..\OBJ\TEST.OBJ 是应用程序的目标文件,它是由TEST.C编译后生成的,并保存在临
时生成的C:\SOFTWARE\uCOS-II\EX1_x86L\BC45\OBJ目录中,这个目录使用与保存编译时产
生的目标文件的。

3.5.4 ..\OBJ\OS_CPU_A.OBJ ..\OBJ\OS_CPU_C.OBJ ..\OBJ\PC.OBJ ..\OBJ\uCOS_II.OBJ
同上,都是编译时产生的目标文件,并保存在OBJ目录下,作为项目链接的组成模块,如果
在OBJ目录中缺少上述文件,链接将不会成功。

3.5.5 ..\OBJ\TEST,..\OBJ\TEST是指定的项目产生的EXE文件和MAP文件的路径和名称,它
们分别是TEST.EXE和TEST.MAP,并保存在OBJ目录下。

3.5.6 C:\BC31\LIB\EMU.LIB C:\BC31\LIB\MATHL.LIB C:\BC31\LIB\CL.LIB是链接时需要的
库文件,必须令路径符合Borland C的安装路径,如果安装在非推荐目录,必须更改蓝色的
路径部分。其中EMU为8087仿真库,MATHL为数学函数库,CL为TurboC在Large模式下的运行
库。

3.6 第五步,修改TEST.MAK文件,这是Borland C的Make文件,关于Make文件的格式及编写
方法请参考相关书籍,这里仅介绍一些配置有关的内容,打开文件可以看到:
#############################################################################
# TOOLS
#############################################################################

BORLAND=C:\BC31

CC=$(BORLAND)\BIN\BCC
ASM=$(BORLAND)\BIN\TASM
LINK=$(BORLAND)\BIN\TLINK
TOUCH=$(BORLAND)\BIN\TOUCH

#############################################################################
# DIRECTORIES
#############################################################################

TARGET=..\TEST
SOURCE=..\SOURCE
WORK=..\WORK
OBJ=..\OBJ
LST=..\LST

OS=\SOFTWARE\uCOS-II\SOURCE
PC=\SOFTWARE\BLOCKS\PC\BC45
PORT=\SOFTWARE\uCOS-II\Ix86L\BC45

如果你得Borland C没有安装在推荐安装的目录,需要更改BORLAND=C:\BC31这一句,例如如
果安装在E:\BorlandC31 ,则将BORLAND=C:\BC31改为BORLAND=E:\BorlandC31。

CC=$(BORLAND)\BIN\BCC:这是编译器的名称及路径,一般不更改
ASM=$(BORLAND)\BIN\TASM:这是汇编器的名称及路径,一般不更改
LINK=$(BORLAND)\BIN\TLINK:这是链接器的名称及路径,一般不更改

TARGET=..\TEST:项目文件目录,如果路径不是按推荐方式,必需要更改路径
SOURCE=..\SOURCE:源文件目录,如果路径不是按推荐方式,必需要更改路径
WORK=..\WORK:项目工作目录,MAKETEST.BAT自动编译时全部源文件都复制到这个目录,这
个设定必须必须和MAKETEST.BAT中设定相一致
OBJ=..\OBJ:目标代码目录,这个设定必须和MAKETEST.BAT中设定相一致
LST=..\LST:列表文件目录,这个设定必须和MAKETEST.BAT中设定相一致

OS=\SOFTWARE\uCOS-II\SOURCE:操作系统源文件目录,必须保证路径的正确,如果你的开
发包没按推荐方式安装,必须更改这个设定为实际安装的目录。
PC=\SOFTWARE\BLOCKS\PC\BC45:与PC有关的源文件目录,必须保证路径的正确,如果你的
开发包没按推荐方式安装,必须更改这个设定为实际安装的目录。
PORT=\SOFTWARE\uCOS-II\Ix86L\BC45:与处理器有关源文件目录,必须保证路径的正确,
如果你的开发包没按推荐方式安装,必须更改这个设定为实际安装的目录。开发包中还有一
个浮点的处理器文件目录Ix86L-FP。这2个目录是跟移植密切相关的,相当于BSP(板极开发
包)。

3.7 第六步,配置MAKETEST.BAT,打开可以看见
MD ..\WORK
MD ..\OBJ
MD ..\LST
CD ..\WORK
COPY ..\TEST\TEST.MAK TEST.MAK
C:\BC31\BIN\MAKE -f TEST.MAK
CD ..\TEST

首先是建立 ..\WORK ..\OBJ ..\LST 三个目录,这个目录的名称和路径必须同TEST.MAK 一
致,然后进入..\WORK目录,并将..\TEST目录中的TEST.MAK复制到这里,最后执行Borland
C的Make程序,自动进行编译和链接,这里面还是要注意C:\BC31的路径问题。

3.9 第八步,进行相关应用程序的开发就可以了,具体的可以参见Test.c这个文件,如果你
的项目包括多个源文件,最好是在Test.c中用#include语句把他们都包含进来,否则就要更
改Make文件TEST.MAK和其他几个设置文件,如果你确需如此,可以自己尝试一下,这里不再
列出。
3.10 最后,运行MAKETEST.BAT就可以在TEST目录下生成TEST.EXE文件。
4 其它

有幸还有许多网友都在PC下用Borland C实现了激动人心的调试开发,网友Hcompute把它的
心得写了出来,大家也可以参考一下这篇文章PC环境下用BC3.1编译连接uC/OS-II源文件。

还有更多关于操作系统本身的应用问题,大家尽可以参考它的电子书 中文版 英文版

另外这篇文章写作很匆忙,基本是一气呵成的,难免存在很多错误,其中的一些观点由于本
人水平有限,可能存在一些错误,在此,我欢迎看到这篇文章并发现问题或错误的朋友及时
指正,以免误导别人,同时也欢迎读罢有所感悟的朋友积极来信,提出你的观点和看法,让
我们共同努力,找到uC/OS开发的最好途径。


--
努尔哈赤骑着汗血宝马越过塔里木盆地游过黑海来到瑞士买了一瓶法国香水送给了
普罗旺斯卖火柴的小女孩,又乘着哥伦布的帆船闯过大西洋跟比尔盖次讨了数百亿美金
开着萨达姆的飞毛腿穿梭于地球与火星间捕捉太阳黑子证明了宇宙是一个球体获得了
2999年宇宙诺贝尔奖雅典娜授予了神杖教皇亲自颁发黄金圣斗士称号,最后与卖火柴的
小女孩在罗马斗兽场举行盛大婚礼-----敬伟大的成吉思汗


※ 来源:·荔园晨风BBS站 bbs.szu.edu.cn·[FROM: 192.168.55.208]


[回到开始] [上一篇][下一篇]

荔园在线首页 友情链接:深圳大学 深大招生 荔园晨风BBS S-Term软件 网络书店