精品国产人成在线_亚洲高清无码在线观看_国产在线视频国产永久2021_国产AV综合第一页一个的一区免费影院黑人_最近中文字幕MV高清在线视频

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

【筆記】單片機頭文件的順序會讓程序報錯?

撞上電子 ? 2023-05-19 09:50 ? 次閱讀

單片機程序中的頭文件對程序的影響非常重要。頭文件包含了函數、宏、結構體和其他聲明的定義,它們提供了程序所需的各種功能和庫。頭文件的正確順序可以確保程序能夠正確編譯、鏈接,并正確地使用所需的函數和定義。頭文件的正確順序主要涉及以下幾個方面:1. 依賴關系和聲明順序:在編寫單片機程序時,可能會有一些頭文件之間存在依賴關系。某些頭文件中的定義和聲明可能依賴于其他頭文件中的內容。因此,正確的順序應該是先包含被依賴的頭文件,然后再包含依賴于它們的頭文件。這樣可以確保在使用函數或定義之前,它們已經被聲明或定義過。2. 硬件特定庫的頭文件:單片機通常有一些硬件特定的功能和外設,例如GPIO、UART、SPI等。與這些功能和外設相關的庫通常會提供對應的頭文件。正確的順序應該是首先包含與單片機的硬件相關的庫的頭文件。這些頭文件定義了與硬件寄存器、配置和功能相關的聲明和定義。3. 外設庫頭文件:如果程序使用了外部設備,如傳感器、顯示器等,需要包含與這些設備相關的庫的頭文件。這些頭文件提供了與外設通信、配置和操作相關的函數和定義。正確的順序是在硬件特定庫頭文件之后,包含與外設庫相關的頭文件。下面是一個頭文件順序的示例:

#include//標準庫頭文件#include "stm32fxxx.h" // 單片機特定庫頭文件#include "lcd.h" // LCD外設庫頭文件#include"utils.h" //自定義頭文件

在這個示例中,首先包含了標準庫的頭文件,然后是單片機特定庫的頭文件,接著是LCD外設庫的頭文件,最后是自定義的頭文件。這個順序滿足了依賴關系和聲明順序的要求。當涉及更復雜的單片機程序時,可能會涉及更多的頭文件和模塊。以下是兩個復雜示例的頭文件順序:

#include//標準庫頭文件#include "stm32fxxx.h" // 單片機特定庫頭文件#include "lcd.h" // LCD外設庫頭文件#include "peripheral.h" // 外設庫頭文件#include "utils.h" // 自定義頭文件#include"config.h"http://配置頭文件

在這個示例中,首先包含了標準庫的頭文件,然后是單片機特定庫的頭文件。接下來,包含了與LCD外設相關的頭文件,然后是其他外設庫的頭文件。然后是自定義的頭文件,最后是項目的配置頭文件。

#include // 標準庫頭文件#include "config.h" // 配置頭文件#include "utils.h" // 自定義頭文件#include "peripheral.h" // 外設庫頭文件#include "uart.h" // UART外設庫頭文件#include "adc.h" // ADC外設庫頭文件#include "sensor.h" // 傳感器庫頭文件#include "lcd.h" // LCD外設庫頭文件#include "main.h" // 主程序頭文件

在這個示例中,首先包含了標準庫的頭文件,然后是項目的配置頭文件和自定義頭文件。接下來是外設庫的頭文件,按照外設的使用順序進行排序,先是UART外設庫的頭文件,然后是ADC外設庫的頭文件。然后是與傳感器相關的頭文件,再然后是LCD外設庫的頭文件。最后是主程序的頭文件,其中包含了主函數和其他主要邏輯的定義和聲明。
在實際的單片機開發中,頭文件的順序可能因項目的復雜性、特定的硬件需求或開發團隊的規范而有所不同。因此,根據具體情況,可能需要適當調整頭文件的順序。請注意,以上只是一般的示例,具體的頭文件順序可能因單片機型號、開發環境和項目要求而有所不同。在編寫程序時,最好參考相關單片機的文檔和開發工具的指導,以確保正確的頭文件順序和良好的程序結構。

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 單片機
    +關注

    關注

    6032

    文章

    44521

    瀏覽量

    633114
  • 程序
    +關注

    關注

    116

    文章

    3777

    瀏覽量

    80855
收藏 人收藏

    評論

    相關推薦

    在同一個頭文件里定義的read byte函數和write byte函數,為什么read不報錯,write會報錯

    在同一個頭文件里定義的read byte函數和write byte函數,為什么read不報錯,write會報錯
    發表于 10-11 07:50

    單片機hex文件反編譯成C語言的過程

    單片機和Hex文件簡介 單片機(Microcontroller Unit,MCU)是一種集成了處理器、存儲器和輸入/輸出接口的微型計算機。它廣泛應用于各種嵌入式系統和智能設備中。單片機
    的頭像 發表于 09-02 10:49 ?2541次閱讀

    如何將hex文件燒錄進單片機

    將.hex文件燒錄進單片機是一個涉及軟件與硬件交互的過程,具體步驟根據不同的單片機型號、開發環境以及燒錄工具而有所不同。以下是一個通用的操作流程,適用于大多數情況: 一、環境準備 安
    的頭像 發表于 09-02 10:34 ?1530次閱讀

    單片機燒錄程序的基本步驟是什么

    單片機燒錄程序單片機開發過程中非常重要的一步,它涉及到將編寫好的程序代碼通過一定的方式傳輸到單片機內部的存儲器中,使
    的頭像 發表于 09-02 09:47 ?815次閱讀

    stm32單片機燒錄程序擦除原來的程序

    的二進制文件寫入單片機,并在此過程中自動擦除原有的程序內容。 具體來說,當使用燒錄工具進行燒錄時,用戶通常只需要選擇正確的芯片型號和連接方式,然后將待燒錄的程序文件加載到工具中。接下來
    的頭像 發表于 09-02 09:42 ?1480次閱讀

    可重復頭文件的固定結構

    年輕人,你可曾記得,在修習C語言的時候,見過這樣的字句:在創建頭文件的時候,一定要加入保護宏。
    的頭像 發表于 08-29 10:23 ?313次閱讀
    可重復<b class='flag-5'>頭文件</b>的固定結構

    IDF-V4.3環境下包含了庫的頭文件會編譯報錯,為什么?

    hello_world_main.c里面包含頭文化 #include "xtensa/core-macros.h",編譯則報錯:找不到頭文件; Pss:CMakeLists.txt
    發表于 06-21 08:12

    引用外部文件夾中的頭文件時,如何VSCODE不提示波浪線錯誤?

    各位好: 我將常用的組件放在項目文件夾以外的某個地方,嘗試在項目內引用此文件夾下的組件,失敗,在代碼中無法include相關頭文件。我在main組件中也添加了requires,任然失敗。 另外,在VSCODE中,當我引用外部
    發表于 06-07 08:19

    components包含頭文件錯誤是怎么回事?

    我新建了一個工程,添加了一個BLE組件,現在我在BLE組件的頭文件中包含了如下文件Code: Select all #include \"api/esp_gatt_common_api.h
    發表于 06-06 07:21

    請問為什么庫函數頭文件和寄存器頭文件不可共用?

    CLK_CKDIVR=0x01;可是這么編程后就報錯iostm8s208mb.h頭文件缺少括號,不知道為何庫函數頭文件與寄存器頭文件放一起時哪構成語法錯誤了;請問我這個把庫函數一句一句
    發表于 04-28 06:22

    如何在Cubemx中添加所有的外設頭文件

    cubemx是一個圖形生成代碼的軟件,可以很好的提高寫代碼的效率,減少時間。但同時也有一個很大的問題:每次設置完后生成的代碼,只包含設置的外設的頭文件,如果想要添加其他外設的代碼,可能因此報錯
    發表于 04-01 07:46

    在ADUCM360_project.c文件里面為什么添加DioLid.h頭文件報錯?如何正確添加自己編寫的頭文件

    在ADUCM360_project.c文件里面為什么添加DioLid.h頭文件報錯?怎么正確添加自己編寫的頭文件
    發表于 01-11 06:09

    單片機芯片怎么寫入程序

    單片機芯片的程序寫入是通過將程序代碼寫入單片機芯片的非易失性存儲器(如Flash)中實現的。 在計算機科學和電子工程領域,單片機是一種集成電
    的頭像 發表于 01-05 14:06 ?7929次閱讀

    keil5mdk怎么編寫51單片機程序

    編寫51單片機程序需要以下步驟: 編寫程序框架:首先,你需要定義程序所需要的變量和常量,以及設置中斷向量和寄存器的初始狀態。這些信息可以根據程序
    的頭像 發表于 12-25 14:54 ?1459次閱讀

    C語言必備知識頭文件包含

    頭文件在C語言中是非常重要的組成部分。
    的頭像 發表于 12-01 18:20 ?1862次閱讀