|
初學(xué)者在開始的時候往往是先看別人的例程,但是在看例程的時候往往容易被項(xiàng)目中那么多的文件迷住了雙眼,到底哪些文件是最重要的呢?下面我們一起從零開始自己動手建一個簡單的項(xiàng)目,這樣在看別人的項(xiàng)目時至少對一個項(xiàng)目到底包含了哪些文件做到心里有底。 在初學(xué)IAR的時候,如果英文還可以的話,程序自帶的USER GUIDE就是一個不錯的教程。下面的例子就來源于其中的“Tutorials”。首先我們專門建立一個文件夾名字為"test",然后把\Program Files\IAR Systems\Embedded Workbench 4.0 Evaluation version\8051\tutor里的tutor.c, utilities.c, utilities.h三個文件復(fù)制到test文件夾,新建IAR項(xiàng)目,把其中的.c文件添加進(jìn)項(xiàng)目里面(由于本文只針對性說明workspace的文件組織,并不是IAR的教程,有些細(xì)節(jié)就省略了)。我們似乎更習(xí)慣于項(xiàng)目里只有這三個文件,但實(shí)際上不是的,有很多我們不認(rèn)識的文件,他們是何方神圣?先上圖,然后一一道來。。。 項(xiàng)目由兩個.c文件和一個output文件夾組成,其中output文件夾中包括了程序的最終編譯結(jié)果test.d51,點(diǎn)開這個文件,發(fā)現(xiàn)下面又有5個文件,tutor.r51, utilities.r51分別為兩個.c文件編譯出的相對目標(biāo)文件,兩個.xcl均為linker用的參數(shù),另外一個.r51文件我也沒花時間去研究,估計(jì)可能是"startup"一類,IAR為TI的MCU提供的底層驅(qū)動。 每個.c文件下面都包括一個output文件夾與.h文件簇,output文件夾中有兩個文件,一個是.r51一個是.pbi,其中.pbi文件是compiler的參數(shù),r51文件與上述相同。下面重點(diǎn)說明下.h文件的構(gòu)成,因?yàn)樵诰幊讨形覀兏P(guān)注的是.h與.c文件。 我們只手工拷貝了utilities.h一個文件,可是為什么會有這么多我們不認(rèn)識的呢?IAR的workspace有一個智能功能,那就是自己搜索.c文件中需要用到的.h文件并顯示出來。以utilities.c下面的.h為例:打開utilities.c,我們可以看到文件中包含 #include <stdio.h> #include "utilities.h" 所以workspace中有這兩個文件就不足為奇了,我們做個小實(shí)驗(yàn),刪除#include "utilities.h"這一行,保存,看看發(fā)生什么了?"utilities.h"是不是不見了?再把這行加上去呢?~~~~好了,我們知道這兩個.h的來源了,那stdarg.h和sysmac.h是哪來的呢?不急,打開stdio.h看看能不能找到答案呢?對了,在這里--#include "stdarg.h",再打開這個文件,是不是sysmac.h的老家也被我們找到了呢?至此,所有的.h文件原形畢露啦~~~(說明:在項(xiàng)目被編譯過之后,編譯前已經(jīng)添加的.h文件就不會再被刪除了,我也沒明白why...) |
|
|