国产成人av人人爽人人澡-亚洲国产日韩欧美一区-好吊日视频这里只有精品-日本高清精品视频在线

你好!歡迎來到深圳市穎特新科技有限公司!
語(yǔ)言
當(dāng)前位置:首頁(yè) >> 技術(shù)中心 >> 單片機(jī)入門 >> 51單片機(jī)的頭文件究竟該如何寫?

51單片機(jī)的頭文件究竟該如何寫?

關(guān)鍵字:51單片機(jī) 作者:admin 來源:不詳 發(fā)布時(shí)間:2018-05-18  瀏覽:24

眾里尋他千百度,默然回首還是看不懂你的代碼!

我相信,對(duì)于初學(xué)單片機(jī)編程或其他語(yǔ)言編程的朋友來說,剛開始我們編程時(shí)總喜歡把所有的代碼都寫在一個(gè)文件中。

(當(dāng)然如果你是絕世天才那就另當(dāng)別論了,哈哈)。其實(shí)我也如此,剛開始我就想,將所有的代碼都寫在一個(gè)文件中那該多

方便,打開一個(gè)文件都可以看清。當(dāng)然,起初我們很容易看明白,因?yàn)槟阄叶贾,咱寫的代碼只有那寥寥幾行,倒著背都

能背下來。但當(dāng)后來我們寫的代碼越來越多時(shí),我們往往苦于閱讀自己的代碼。

因此,我們可以將一個(gè)程序?qū)懺诙鄠(gè)文件中(即以.c為后綴的文件中)。這時(shí)聰明的你就會(huì)問了,那么我寫了了這么多文

件,最后只通過一個(gè)按鈕編譯,生成HEX這個(gè)家伙,那么各文件又是怎樣聯(lián)系一起的呢?(啊,說了這么多,終于說到點(diǎn)子

上了,ZC一下,看來我的語(yǔ)言表達(dá)能力的確得練練)這就是頭文件存在的價(jià)值呀!

好了,說重點(diǎn)。那么頭文件中都改裝些什么呢?簡(jiǎn)單來說就是 預(yù)處理+引腳定義+函數(shù)名。再多的漢字也表達(dá)不了我的意

思,還是代碼說話吧。/****下面是一個(gè)關(guān)于GPS模塊的程序頭文件,文件名:GPS.h****/
 #ifndef  _GPS_H_
  #define  _GPS_H_             //_GPS_H_與文件名一致,只是改為大寫
  #define uint  unsigned int
  #define uchar unsigned char
  typedef struct{              //你知道結(jié)構(gòu)體是干啥的嗎?裝幾個(gè)變量
 int month;
 int year;
 int data;
 int hour;
 int minute;
 int second;      //這幾個(gè)變量用來"裝"GPS接收到的時(shí)間
 }dataTime;
  .....                        //后面仍是一個(gè)結(jié)構(gòu)體,類似,所以我想偷一下懶用。。。代替
  /******下面是一系列函數(shù)名,再GPS.C中編寫函數(shù)*******/
  void gpsInit(void);                     //GPS初始化程序,gpsInit為函數(shù)名我比較喜歡用匈牙利/駝峰命名法,強(qiáng)  烈推薦
  int gpsRmcParse(char *line, gpsInfo *gps);         //RMC為接收到的數(shù)據(jù)頭
  int gpsGgaParse(char *line, gpsInfo *gps);
  int gpsGsvParse(char *line, gpsInfo *gps);
  void integerToString(int x, char *str);          //整型轉(zhuǎn)字符串
  #endif                //程序結(jié)束

上面就是這個(gè)頭文件,我們可以就看到它的格式就是這樣的
#ifndef ......
#define......
...
...
#endif

如果使用的什么模塊要接到I/O口,就在頭文件中寫

#include<reg51.h>
sbit ...
sbit ...
sbit ...
sbit ...
//等這樣的代碼,至于意思嘛,你當(dāng)然懂!

現(xiàn)在,頭文件寫完了,那么接下來的工作就簡(jiǎn)單多了,將你的頭文件加載到所要使用該頭文件中內(nèi)容的C文件中。

編輯:admin  最后修改時(shí)間:2018-05-18

聯(lián)系方式

0755-82591179

傳真:0755-82591176

郵箱:vicky@yingtexin.net

地址:深圳市龍華區(qū)民治街道民治大道973萬眾潤(rùn)豐創(chuàng)業(yè)園A棟2樓A08

Copyright © 2014-2025 穎特新科技有限公司 All Rights Reserved.  粵ICP備14043402號(hào)-4