μC-/OS II(一) PC编译环境的搭建
?
這個系列博文是關于對《嵌入式實時操作系統(tǒng) μC-/OS II》(第二版)的學習筆記
μC-/OS II (一) ?PC編譯器環(huán)境的搭建
1.關于編譯器
采用Borland C++ 4.5作為μC-/OS II源代碼的編譯器。
下載地址
還需要TASM 5.0
TASM是Borland公司推出的匯編編譯器,也是一種使用很廣泛的編譯器,到目前為止,TASM的最后一個版本是5.0版,這個版本支持WIN32編程,并單獨為WIN32編程附帶有一整套32位程序:32位的編譯器TASM32.EXE、連接器TLINK32.EXE和資源編譯器BRC32.EXE。
下載地址
?
2.編譯器安裝
1.將Borland C++ 4.5解壓,運行INSTALL.EXE,盡量選擇默認安裝路徑“C:\BC45”
2.將TASM.EXE復制到Borland C++ 4.5的安裝路徑,即"C:\BC45\BIN"中。
3.編譯器設置
首先在硬盤中新建一個文件夾用來放置整個調試工程文件:
E:\6_OS\TEST1
在TEST1下分別新建了三個文件夾分別用于存放源代碼,目標文件,
E:\6_OS\TEST1\OBJ
E:\6_OS\TEST1\PROJECT
E:\6_OS\TEST1\RELEASE
E:\6_OS\TEST1\SOURCE
?新建Project->New Project
選擇Dos標準平臺
工程文件設置
選擇好路徑后確認保存
?高級設置
生成的工程界面如下:
添加源文件節(jié)點
- 將μc/os II源碼中\(zhòng)SOFTWARE\uCOS-II\EX1_x86L\BC45\SOURCE中的INCLUDES.H,OS_CFG.H和TEST.C三個文件拷貝到你第一步創(chuàng)建的放置源文件的文件夾內,我的是? E:\6_OS\TEST1\SOURCE
- 添加
\SOFTWARE\uCOS-II\Ix86L\BC45\OS_CPU_A.ASM
\SOFTWARE\uCOS-II\Ix86L\BC45\OS_CPU_C.C
\SOFTWARE\uCOS-II\SOURCE\uCOS_II.C
\SOFTWARE\BLOCKS\PC\BC45\PC.C
E:\6_OS\TEST1\SOURCE\TEST.C
?到代碼節(jié)點中
?設置工程參數(shù)
?會有錯誤,找不到頭文件。
主要是因為源文件中的引用路徑不對
雙擊報錯的位置打開源文件,將其中的包含頭文件代碼改為絕對路徑:
/**********************************************************************************************************
* uC/OS-II
* The Real-Time Kernel
*
* (c) Copyright 1992-1999, Jean J. Labrosse, Weston, FL
* All Rights Reserved
*
* MASTER INCLUDE FILE
*********************************************************************************************************
*/
#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"
改為:
INCLUDES.H /**********************************************************************************************************
* uC/OS-II
* The Real-Time Kernel
*
* (c) Copyright 1992-1999, Jean J. Labrosse, Weston, FL
* All Rights Reserved
*
* MASTER INCLUDE FILE
*********************************************************************************************************
*/
#include <stdio.h>
#include <string.h>
#include <ctype.h>
#include <stdlib.h>
#include <conio.h>
#include <dos.h>
#include <setjmp.h>
#include "E:\6_OS\UcOS\software\ucos-ii\ix86l\bc45\os_cpu.h"
#include "os_cfg.h"
#include "E:\6_OS\UcOS\software\ucos-ii\source\ucos_ii.h"
#include "E:\6_OS\UcOS\\software\blocks\pc\bc45\pc.h"
2
/**********************************************************************************************************
* uC/OS-II
* The Real-Time Kernel
*
* (c) Copyright 1992-2002, Jean J. Labrosse, Weston, FL
* All Rights Reserved
*
* File : uCOS_II.C
* By : Jean J. Labrosse
*********************************************************************************************************
*/
#define OS_GLOBALS /* Declare GLOBAL variables */
#include "includes.h"
#define OS_MASTER_FILE /* Prevent the following files from including includes.h */
#include "\software\ucos-ii\source\os_core.c"
#include "\software\ucos-ii\source\os_flag.c"
#include "\software\ucos-ii\source\os_mbox.c"
#include "\software\ucos-ii\source\os_mem.c"
#include "\software\ucos-ii\source\os_mutex.c"
#include "\software\ucos-ii\source\os_q.c"
#include "\software\ucos-ii\source\os_sem.c"
#include "\software\ucos-ii\source\os_task.c"
#include "\software\ucos-ii\source\os_time.c"
改為:
/**********************************************************************************************************
* uC/OS-II
* The Real-Time Kernel
*
* (c) Copyright 1992-2002, Jean J. Labrosse, Weston, FL
* All Rights Reserved
*
* File : uCOS_II.C
* By : Jean J. Labrosse
*********************************************************************************************************
*/
#define OS_GLOBALS /* Declare GLOBAL variables */
#include "includes.h"
#define OS_MASTER_FILE /* Prevent the following files from including includes.h */
#include "E:\6_OS\UcOS\software\ucos-ii\source\os_core.c"
#include "E:\6_OS\UcOS\software\ucos-ii\source\os_flag.c"
#include "E:\6_OS\UcOS\software\ucos-ii\source\os_mbox.c"
#include "E:\6_OS\UcOS\software\ucos-ii\source\os_mem.c"
#include "E:\6_OS\UcOS\software\ucos-ii\source\os_mutex.c"
#include "E:\6_OS\UcOS\software\ucos-ii\source\os_q.c"
#include "E:\6_OS\UcOS\software\ucos-ii\source\os_sem.c"
#include "E:\6_OS\UcOS\software\ucos-ii\source\os_task.c"
#include "E:\6_OS\UcOS\software\ucos-ii\source\os_time.c"
接著編譯一次:
此時沒有編譯錯誤了,只有警告,不用理他,直接運行:
終于成功了
BC工程文件
?
?
?
?
?
?
?
?
參考了http://www.cnblogs.com/lazygunner/archive/2011/07/02/2096318.html
和http://www.cnblogs.com/lazygunner/articles/2096250.html
上的內容,感謝上兩個博文的作者
轉載于:https://www.cnblogs.com/because/archive/2012/01/01/2309262.html
總結
以上是生活随笔為你收集整理的μC-/OS II(一) PC编译环境的搭建的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: [转载] 杜拉拉升职记——15 1001
- 下一篇: Winsock编程宝典(转帖)