導航:首頁 > 源碼編譯 > c51編譯器多c文件管理

c51編譯器多c文件管理

發布時間:2022-08-25 07:58:16

❶ 51單片機一個工程中包含多個C文件怎麼使用

這是標準的C語言寫法。
1. 不管有多少個函數,C總是從main()主函數開始執行。
2. 至於你說的一個工程裡麵包括多個.c的文件,其實每個.c的文件里就是一系列函數而已。如果你要使用這些函數的話你要在頭文件里加入#include。比如我要用「init.c」這個文件,則頭文件中除了#include"reg51.h"你還要加#include"init.c"然後如果在"init.c"中有一個函數"init()"我需要調用。我就要在main()函數之前作聲明。(其實一般我們要調用一個函數,除非這個函數寫在main()之前。否則我都要在main()之前做函數聲明。比如在main()之前加上void init();)那麼如果這個init();在其他文件中,改如何聲明呢?我們一般可以做外部聲明.extern init();就行了。
3. 其實說穿了,你的問題就是函數聲明問題。如果前面加上正確的聲明,你的編譯應該能通過的。單片機也能按照你的要求工作了。順便說一句,如果是外部文件的數據結構,如果要調用的話,也是做extern聲明。如果還有不明白的地方你可以看看標準的c語言方面的書籍就能明白了。

❷ 單片機Keil C51 C語言多文件如何使用全局位變數跪拜!!

extern就可以。在一個文件里定義:
bdata m;
sbit x=m^1;
然後在另一個文件里聲明:
extern bdata m;(如果不使用m可以不聲明。)

extern bit x;
這樣就可以使用了。如果變數較多,建議樓上的方法,用全局頭文件。

❸ 51單片機,如何建立多C文件,

1. 模塊化編程的原則:
模塊化編程通常要遵循以下幾個原則:
 每一個c文件對應一個同名的h頭文件
一個h文件伴隨相應c文件存在,頭文件是為了聲明對外公開的介面。如果一個c文件不需要對外公布任何介面,則其就不應當存在,除非它是程序的入口,如main函數所在的文件,同時main函數所在文件可以沒有對應的頭文件。如有一個led.c,那應該同時製作一個led.h頭文件。
 頭文件中適合放置介面的聲明,不適合放置實現
頭文件是模塊的對外的介面,供外部程序調用。頭文件中應放置對外部的聲明,如對外提供的函數聲明、宏定義、變數類型聲明等。函數的實現、變數的賦值、語句的操作等決不能放在頭文件中。因為頭文件的功能是向外提供介面,譬如函數,變數,具體如何實現是在c文件中進行,頭文件僅是進行了描述聲明。
 任意一個c文件只要使用了其他c文件提供的介面,都要同時包含其對應的頭文件,每個c文件應該頭文件自包含
任意一個c文件只要使用了其他c文件提供的介面,都要將其對應的頭文件包含到該c文件中,沒有使用到其他c文件的介面就不應該將其匹配的頭文件包含,並且每個c文件都應該包含自己的頭文件。
 防止頭文件被重復包含
避免一個頭文件被重復包含,通常使用條件編譯命令#ifndef--#endif,如下示例:
示例1:
#ifndef TIME_H
#define TIME_H
……
#endif
示例2:
#ifndef LED_H
#define LED_H
……
#endif
其中#define FILENAME_H為基本格式,FILENAME_H為頭文件名稱,但要全部使用大寫形式,使用單下劃線後緊跟一個H表明是頭文件。不要在宏名最前面加上「_"或「__」,即使用FILENAME_H代替_FILENAME_H_,因為一般以"_"和」__"開頭的標識符為系統保留或者標准庫使用。

❹ C51裡面怎麼存在多個.c和.h文件

你說的這些都不是固定要這么做的,這與個人的習慣有關。有人習慣把一些寄存器和引腳定義,宏定義等等一些非執行語句寫成頭文件。更不是一個.c文件就一定要有一個.h頭文件。其實,這些完全可以都寫在.c文件中,並寫最前面就行的。
還有那個include也不只是包含.h頭文件的。而對於keil給定的頭文件就必須用include載入。
那個extern,通常是用於由多個.c文件組成的一個工程中的,就是在一個.c文件中,調用另一個.c文件中的函數時,應該先用extern聲明一下外部函數。
總之,怎麼寫,根據個人的習慣而定。只要編譯通過就可以。
一般情況下,對於一個比較大的工程,都是由多個.c文件組成的,這時也會有多個頭文件。
這么說,你可能一時還理解不了,沒關系,要多看別人的程序,自己多練。剛開始,寫一些簡單程序,工程中也只有一個.c文件時,就比較簡單了,沒有這么多的事了。

❺ 在KEIL C51里,如果不只一個C文件,有多個C文件,如何燒錄

在左邊的工程欄裡面,在Source Group上面點擊右鍵,選擇Add File to Group "Source Group1"選項,把你想要編譯的C文件全部添加進去,然後按編譯按鈕,就全部編譯了。但是多個C文件編譯有很多地方要注意,不是一下子能說清楚的。

閱讀全文

與c51編譯器多c文件管理相關的資料

熱點內容
卡銀家平台源碼 瀏覽:417
怎麼樣設置伺服器的ip地址 瀏覽:900
泡沫APP在哪裡下載 瀏覽:937
簡述高級語言進行編譯全過程 瀏覽:39
管家婆輝煌2加密狗挪到另一台電腦 瀏覽:760
摩托車在哪裡app看考題 瀏覽:356
蘋果5app在哪裡設置 瀏覽:737
如何查看伺服器的磁碟使用 瀏覽:165
python蒙特卡洛模型投點圖 瀏覽:330
安卓手機屬於什麼介面 瀏覽:742
微信群推廣網站源碼 瀏覽:764
九江離鷹潭源碼 瀏覽:719
python可以當作函數的返回值 瀏覽:422
地鐵逃生體驗服怎麼進入安卓 瀏覽:833
齊魯工惠app的中獎記錄在哪裡 瀏覽:759
linuxkill命令詳解 瀏覽:104
dhcp伺服器動態分配地址 瀏覽:265
門禁卡加密了能破解嗎 瀏覽:215
在哪裡下載百度網盤app 瀏覽:917
伺服器要升級什麼意思 瀏覽:831