0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

51單片機(jī)知識(shí)概述

2oON_changxuemc ? 來源:未知 ? 作者:工程師李察 ? 2018-11-03 10:32 ? 次閱讀

1)h文件作用

1 方便開發(fā):包含一些文件需要的共同的常量,結(jié)構(gòu),類型定義,函數(shù),變量申明;

2 提供接口:對(duì)一個(gè)軟件包來說可以提供一個(gè)給外界的接口(例如: stdio.h)。

2)h文件里應(yīng)該有什么

常量,結(jié)構(gòu),類型定義,函數(shù),變量申明。

3)h文件不應(yīng)該有什么

變量定義, 函數(shù)定義。

4)extern問題

對(duì)于變量需要extern;

對(duì)于函數(shù)不需要因?yàn)楹瘮?shù)的缺省狀態(tài)是extern的.如果一個(gè)函數(shù)要改變?yōu)橹辉谖募?nèi)可見,加static。

5)include包含問題

雖然申明和類型定義可以重復(fù),不過推薦使用條件編譯。

#ifndef _FILENAME_H,

#define _FILENAME_H

……

#endif

6)應(yīng)該在那兒包含h文件

在需要的地方.比如某個(gè)提供接口的h文件僅僅被1.c文件需要,那么就在1.c文件里包含。

編寫的程序一般會(huì)有.H文件和相對(duì)應(yīng)的.C文件,.H文件是聲明所用,.C文件是其函數(shù)實(shí)現(xiàn)部分。在調(diào)用時(shí)只要包含.H文件即可,我們沒有聽說過#include "delay.c"這類的程序,同時(shí)也不提倡使用這個(gè)形式。

在delay.h文件中: //對(duì)調(diào)用的函數(shù)聲明

#ifndef __DELAY_H__

#define __DELAY_H__

extern void Delayms(unsigned int n);

#endif

在delay.c文件中: //函數(shù)實(shí)現(xiàn)部分

#include

//for crystal 11.0592M

void Delayms(unsigned int n)

{

unsigned int i,j;

for(j=n;j>0;j--)

for(i=112;i>0;i--);

}

在主程序main.c中

#include//在主程序包含.h文件,不能包含.c文件

……

上述方法仍然要求每建立一個(gè)工程就需要把對(duì)應(yīng)的頭文件復(fù)制到工程的文件夾里,這樣看來仍然是比較麻煩的,這時(shí)還有另外一中方法就是將做好的頭文件放在一個(gè)文件夾中,然后將這個(gè)文件夾整體拷貝到..KEILC51INC下面,以后若需要使用某個(gè)頭文件,就如使用KEIL自帶的頭文件一樣方便了,在主函數(shù)mani()之前有一句#include 就可以在main()中使用其中的函數(shù)了。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 51單片機(jī)
    +關(guān)注

    關(guān)注

    274

    文章

    5702

    瀏覽量

    123633
  • 函數(shù)
    +關(guān)注

    關(guān)注

    3

    文章

    4331

    瀏覽量

    62631
  • 變量
    +關(guān)注

    關(guān)注

    0

    文章

    613

    瀏覽量

    28373

原文標(biāo)題:51單片機(jī)C中.c文件和.h文件

文章出處:【微信號(hào):changxuemcu,微信公眾號(hào):暢學(xué)單片機(jī)】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏

    評(píng)論

    相關(guān)推薦

    51架構(gòu)與51系列單片機(jī)概述

    2-1. 51單片機(jī)概述2-2. 51架構(gòu)2-3. 8051引腳功能表述2-4. 常見51系列單片機(jī)
    發(fā)表于 03-23 12:07 ?62次下載

    單片機(jī)基礎(chǔ)知識(shí)C51

    單片機(jī)基礎(chǔ)知識(shí)C51版,學(xué)習(xí)單片機(jī)的基礎(chǔ)知識(shí)。包括單片機(jī)的簡(jiǎn)介,
    發(fā)表于 11-18 16:48 ?0次下載

    51單片機(jī)及其應(yīng)用概述

    51單片機(jī)及其應(yīng)用概述,感興趣的小伙伴們可以瞧一瞧。
    發(fā)表于 11-17 11:16 ?0次下載

    51單片機(jī)最基礎(chǔ)的知識(shí)

    關(guān)于51單片機(jī)最基礎(chǔ)的知識(shí)及如何認(rèn)識(shí)單片機(jī)的組成與相關(guān)功能的介紹,感興趣的小伙伴們可以瞧一瞧。
    發(fā)表于 11-11 11:55 ?11次下載

    什么是單片機(jī)怎樣學(xué)習(xí)?單片機(jī)基礎(chǔ)知識(shí)及Proteus應(yīng)用簡(jiǎn)介資料概述

    本文檔的怎樣內(nèi)容詳細(xì)介紹的是單片機(jī)基礎(chǔ)知識(shí)概述內(nèi)容包括了:1.單片機(jī)概述2.單片機(jī)學(xué)習(xí)的預(yù)備
    發(fā)表于 09-14 10:53 ?18次下載
    什么是<b class='flag-5'>單片機(jī)</b>怎樣學(xué)習(xí)?<b class='flag-5'>單片機(jī)</b>基礎(chǔ)<b class='flag-5'>知識(shí)</b>及Proteus應(yīng)用簡(jiǎn)介資料<b class='flag-5'>概述</b>

    單片機(jī)學(xué)習(xí)入門之單片機(jī)基礎(chǔ)知識(shí)詳細(xì)資料概述

    本文檔的主要內(nèi)容詳細(xì)介紹的是單片機(jī)學(xué)習(xí)入門之單片機(jī)基礎(chǔ)知識(shí)詳細(xì)資料概述主要內(nèi)容包括了:1 MCS-51
    發(fā)表于 10-24 11:50 ?77次下載
    <b class='flag-5'>單片機(jī)</b>學(xué)習(xí)入門之<b class='flag-5'>單片機(jī)</b>基礎(chǔ)<b class='flag-5'>知識(shí)</b>詳細(xì)資料<b class='flag-5'>概述</b>

    51單片機(jī)教程之51單片機(jī)中斷系統(tǒng)的詳細(xì)資料概述

    本文檔的主要內(nèi)容詳細(xì)介紹的是51單片機(jī)教程之51單片機(jī)中斷系統(tǒng)的詳細(xì)資料概述主要內(nèi)容介紹的是中斷概念響應(yīng)條件處理原則中斷服務(wù)和中斷的使用方法
    發(fā)表于 11-19 09:56 ?17次下載
    <b class='flag-5'>51</b><b class='flag-5'>單片機(jī)</b>教程之<b class='flag-5'>51</b><b class='flag-5'>單片機(jī)</b>中斷系統(tǒng)的詳細(xì)資料<b class='flag-5'>概述</b>

    什么是單片機(jī)51單片機(jī)教程之單片機(jī)的詳細(xì)資料概述免費(fèi)下載

    本文檔的主要內(nèi)容詳細(xì)介紹的是51單片機(jī)教程之單片機(jī)的詳細(xì)資料概述免費(fèi)下載主要內(nèi)容包括了:一,什么是單片機(jī)二,
    發(fā)表于 11-21 08:00 ?85次下載
    什么是<b class='flag-5'>單片機(jī)</b><b class='flag-5'>51</b><b class='flag-5'>單片機(jī)</b>教程之<b class='flag-5'>單片機(jī)</b>的詳細(xì)資料<b class='flag-5'>概述</b>免費(fèi)下載

    51單片機(jī)教程之80C51的結(jié)構(gòu)與原理知識(shí)點(diǎn)概述課件免費(fèi)下載

    本文檔的主要內(nèi)容詳細(xì)介紹的是51單片機(jī)教程之80C51的結(jié)構(gòu)與原理知識(shí)點(diǎn)概述課件免費(fèi)下載主要內(nèi)容包括了:1.80C
    發(fā)表于 11-29 15:38 ?14次下載
    <b class='flag-5'>51</b><b class='flag-5'>單片機(jī)</b>教程之80C<b class='flag-5'>51</b>的結(jié)構(gòu)與原理<b class='flag-5'>知識(shí)</b>點(diǎn)<b class='flag-5'>概述</b>課件免費(fèi)下載

    51單片機(jī)教程之80C51單片機(jī)的C語言程序設(shè)計(jì)資料概述

    本文檔的主要內(nèi)容詳細(xì)介紹的是51單片機(jī)教程之80C51單片機(jī)的C語言程序設(shè)計(jì)資料概述主要內(nèi)容包括了:
    發(fā)表于 12-05 11:53 ?299次下載
    <b class='flag-5'>51</b><b class='flag-5'>單片機(jī)</b>教程之80C<b class='flag-5'>51</b><b class='flag-5'>單片機(jī)</b>的C語言程序設(shè)計(jì)資料<b class='flag-5'>概述</b>

    單片機(jī)原理及應(yīng)用教程之單片機(jī)基礎(chǔ)知識(shí)概述

    本文檔的主要內(nèi)容詳細(xì)介紹的是單片機(jī)原理及應(yīng)用教程之單片機(jī)基礎(chǔ)知識(shí)概述包括了:1. 單片機(jī)概述,2
    發(fā)表于 04-16 08:00 ?23次下載
    <b class='flag-5'>單片機(jī)</b>原理及應(yīng)用教程之<b class='flag-5'>單片機(jī)</b>基礎(chǔ)<b class='flag-5'>知識(shí)</b><b class='flag-5'>概述</b>

    51單片機(jī)入門需要掌握的知識(shí)詳細(xì)資料概述

    對(duì)于單片機(jī)初學(xué)者而言,從51單片機(jī)入手無非是最佳的選擇。51單片機(jī)是對(duì)所有兼容Intel 8031指令系統(tǒng)的
    發(fā)表于 07-03 17:42 ?3次下載
    <b class='flag-5'>51</b><b class='flag-5'>單片機(jī)</b>入門需要掌握的<b class='flag-5'>知識(shí)</b>詳細(xì)資料<b class='flag-5'>概述</b>

    單片機(jī)的基礎(chǔ)知識(shí)詳細(xì)資料概述

    本文檔的主要內(nèi)容詳細(xì)介紹的是單片機(jī)的基礎(chǔ)知識(shí)詳細(xì)資料概述包括了:1 單片機(jī)簡(jiǎn)介,2 單片機(jī)的發(fā)展歷史,3
    發(fā)表于 05-27 08:00 ?2次下載
    <b class='flag-5'>單片機(jī)</b>的基礎(chǔ)<b class='flag-5'>知識(shí)</b>詳細(xì)資料<b class='flag-5'>概述</b>

    單片機(jī)入門學(xué)習(xí)教程單片機(jī)的詳細(xì)概述

    本文檔的主要內(nèi)容詳細(xì)介紹的是單片機(jī)入門學(xué)習(xí)教程單片機(jī)的詳細(xì)概述包括了:什么是單片機(jī)單片機(jī)的特點(diǎn)及應(yīng)用領(lǐng)域,
    發(fā)表于 12-10 08:00 ?90次下載
    <b class='flag-5'>單片機(jī)</b>入門學(xué)習(xí)教程<b class='flag-5'>單片機(jī)</b>的詳細(xì)<b class='flag-5'>概述</b>

    51單片機(jī)知識(shí)點(diǎn)

    電子發(fā)燒友網(wǎng)站提供《51單片機(jī)知識(shí)點(diǎn).pdf》資料免費(fèi)下載
    發(fā)表于 11-01 17:32 ?3次下載