標(biāo)題:
單片機(jī)頭文件的內(nèi)容
[打印本頁(yè)]
作者:
藍(lán)野
時(shí)間:
2017-10-23 17:07
標(biāo)題:
單片機(jī)頭文件的內(nèi)容
拿51為例,#include “reg51.h”,我知道reg51.h是51單片機(jī)的頭文件,并且包含51的一些寄存器;我的問(wèn)題是:頭文件是把單片機(jī)硬件的所有內(nèi)容都對(duì)應(yīng)的包含了進(jìn)來(lái),還是只包含了局部特殊功能寄存器?
或者請(qǐng)闡明
reg51.h里面有哪些東西和硬件的關(guān)系。
作者:
yzwzfyz
時(shí)間:
2017-10-24 07:11
所謂頭文件,關(guān)鍵是個(gè)頭字。
一般寫(xiě)程序的習(xí)慣上,會(huì)在開(kāi)頭寫(xiě)一些定義。故而,頭文件是定義文件。
但是,對(duì)于編譯系統(tǒng)說(shuō),它不管你是頭、是中、是尾?統(tǒng)統(tǒng)進(jìn)行翻譯,待遇一樣。
所以頭文件也可以是子程序!
C語(yǔ)言強(qiáng)調(diào)了它的通用性,但是不同的單片機(jī)有不同的接口,是不可能通用的。為了解決通用問(wèn)題,每種單片機(jī)就將不同一部份寫(xiě)出在一個(gè)頭文件中,定義成一些通用的詞匯,這樣你只要INCLUDE 它就OK了。
其實(shí)不要頭文件也可以,不過(guò)你得自己定義一些東西了,否則編譯器不認(rèn)識(shí)。樓主可以試試,這樣可以幫助你更了解頭文件。
事實(shí)是不僅是單片機(jī),硬件也一樣會(huì)被寫(xiě)成頭文件形式,供你調(diào)用。
作者:
HC6800-ES-V2.0
時(shí)間:
2017-10-24 08:35
應(yīng)該是包含全部特殊功能寄存器的尋址定義(甚至還有多的——這個(gè)系列的芯片,有的有這樣的特殊功能寄存器,而另一種卻沒(méi)有,但這個(gè)頭文件里就定義了全部,這個(gè)系列的芯片都可以用)。
我用過(guò)的REG51.H中,沒(méi)有進(jìn)行I/O口的位定義,其實(shí)是可以定義的。
我看到的STC15.H中,就把位也定義了,當(dāng)然是可尋址的位,如:sbit P00=.....,程序中就可以直接用位P00了,而不再像51的,程序中要sbit LED=P0^0才能用。
作者:
電子發(fā)燒友99633
時(shí)間:
2017-10-24 14:20
我看到的STC15.H中,就把位也定義了,當(dāng)然是可尋址的位,如:sbit P00=.....,程序中就可以直接用位P00了,而不再像51的,程序中要sbit LED=P0^0才能用。
作者:
xbook_ben
時(shí)間:
2017-10-24 16:49
#include 頭文件:從本質(zhì)上來(lái)說(shuō),include就是把對(duì)應(yīng)的頭文件直接拷貝到這一行;
歡迎光臨 (http://www.torrancerestoration.com/bbs/)
Powered by Discuz! X3.1