資料介紹
初學STM32經常學習會網上找的例程,或是買的開發板帶的例程等等,經常在編譯的時候遇到..\User\stm32f10x_it.c(26): error: #5: cannot open source input file "stm32_eval_sdio_sd.h": No such file or directory等等,打不到某個頭文件的編譯錯誤。而網上大多數都會提到是工程設置的問題,路徑設置不正確,無法找到文件等等。因為這個小問題也折騰了些時間,現在頭腦還算清醒,記錄下來。1.首先,一定要清晰的了解工程設置路徑的含義,為什么要設置這個路徑而不是別的?出于什么原因設置的?答:工程設置的路徑是在搜索*.h文件。下圖是我的工程路徑,其中User文件夾是用來存放我自己需要編寫或修改的文件。我們再看來一下User路徑下的文件。其中3個.c文件和2個.h文件都是在官方庫的STM32F10x_StdPeriph_Lib_V3.5.0\Project\STM32F10x_StdPeriph_Examples\SDIO路徑下復制過來的。STM32_EVAL存放著從官方庫里邊復制過來的stm32_eval.cstm32_eval.hstm32_eval_sdio_sd.cstm32_eval_sdio_sd.hstm3210e_eval.cstm3210e_eval.h共6個文件。我們先不管這個文件夾。此時編譯,會提示..\User\stm32f10x_it.c(26): error: #5: cannot open source input file "stm32_eval_sdio_sd.h": No such file or directory..\User\main.c(24): error: #5: cannot open source input file "stm32_eval_sdio_sd.h": No such file or directory如下圖:仔細觀察會發現,是stm32f10x_it.c和main.c提示找不到stm32_eval_sdio_sd.h。那為什么是這兩個文件提示呢?我們觀察到在main.c和stm32f10x_it.c的最上方都引用了stm32_eval_sdio_sd.h這個頭文件,見下圖:哦,原來是.c文件引用.h文件,而找不到.h文件就會報錯。stm32f10x_it.c還引用了stm32f10x_it.h了呢?那為什么不報錯呢?原因見下圖:在User路徑內我們存放著stm32f10x_it.h,stm32f10x.c能夠找到stm32f10x.h所以就不報錯。stm32f10x_it.c引用了stm32f10x.h和stm32_eval_sdio_sd.h。那為什么能夠找到stm32f10x.h而找不到stm32_eval_sdio_sd.h呢?終于引到正題了。這就是我要說的工程設置選項卡C/C++中include path如何設置的問題了。下圖是目前的設置:從上圖可以看到,我們搜索了User目錄,而stm32f10x_it.h即存放在該目錄下,因此能夠搜索到。而我把stm32_eval_sdio_sd.h存放在STM32_EVAL目錄內,故搜索不到該文件。所以解決辦法就是添加STM32_EVAL這個路徑。我們再編譯,可以看到上述提示已經解決了。3.這引申出另一個問題來,依然和工程設置有關,我們繼續。仔細觀察,編譯stm32f10x_it.c這個文件時提示\User\STM32_EVAL\stm32_eval.h找不到stm3210e_eval/stm3210e_eval.h。編譯main.c這個文件時提示\User\STM32_EVAL\stm32_eval.h找不到stm3210e_eval/stm3210e_eval.h。原因是這兩個文件都引用了"stm32_eval_sdio_sd.h",而"stm32_eval_sdio_sd.h"又引用了stm32_eval.h。stm32_eval.h提示找不到stm3210e_eval/stm3210e_eval.h。為什么是這樣呢?我們在stm32_eval.h看到了如下代碼:它的含義是相對于stm32_eval.h這個文件,到stm3210e_eval目錄內去找stm3210e_eval.h這個文件。顯然我沒有stm3210e_eval這個路徑,因為我是把stm32103_eval.h和stm32_eval.h放在同一個路徑下的,都放在了STM32_EVAL這個路徑內。所以,也找不到stm3210e_eval.h。知道問題原因了,也就知道如何解決了。2個辦法:1.創建\User\STM32_EVAL\stm3210e_eval這個路徑,把stm3210e_eval.h存放在此。并且在include path中添加..\User\STM32_EVAL\stm3210e_eval即可。2.將代碼修改為#include "stm3210e_eval.h"也可。通常我用第2種方法,目錄結構簡單一些。(mbbeetchina)
下載該資料的人也在下載
下載該資料的人還在閱讀
更多 >
- STM32 Debug無法添加斷點的解決方法
- int fputc(int ch, FILE *f)中找不到FILE
- STM32重要源文件和頭文件說明
- keil報錯Please select first the target STM32F1xx device used in your application (in stm32f1xx.h file
- 單片機-頭文件
- 盤點晶振常見問題及解決方法資料下載
- 匯總:PCB線路板貼干膜常見問題及解決方法資料下載
- PCB板中靜電放電的設計與解決方法資料下載
- 干貨:高速數字PCB設計信號完整性解決方法資料下載
- PCB工藝中底片變形原因與解決方法資料下載
- 在avr單片機中,用iic編程自己怎么寫頭文件?資料下載
- STC系列MCU頭文件資料合集免費下載 16次下載
- STM32F1單片機的IO位帶操作頭文件免費下載 20次下載
- STC單片機頭文件資料合集免費下載 209次下載
- WIN7下protel?99se的文件未被識別的問題解決方法 37次下載
- 可重復頭文件的固定結構 1k次閱讀
- 請問頭文件能不能定義變量呢? 2k次閱讀
- C語言必備知識頭文件包含 3.1k次閱讀
- 保護死區的概念和解決方法 2.6k次閱讀
- C 語言的頭文件路徑位置問題 7.5k次閱讀
- STM32無法連接JLink(Flash讀寫保護)解決方法 5.9k次閱讀
- 模版定義一定要寫在頭文件中嗎? 2.3k次閱讀
- C語言頭文件路徑的剖析 3.1k次閱讀
- Allegro在導入網表文件時出現報錯的解決方法 1.3w次閱讀
- C語言的頭文件組織與包含原則 4.1k次閱讀
- 使用Keil下載Hex文件進STM32 9.6k次閱讀
- 淺析電感嘯叫的原因及解決方法 3.1w次閱讀
- C語言中程序員編寫的頭文件和編譯器自帶的頭文件 8.5k次閱讀
- IAR在STM32的配置方法 1.9w次閱讀
- 分享解決No input file specified問題的方法 3.3w次閱讀
下載排行
本周
- 1冷柜-電氣控制系統講解
- 13.68 MB | 4次下載 | 10 積分
- 2安川A1000變頻器中文版說明書
- 20.16 MB | 3次下載 | 3 積分
- 3直流電路的組成和基本定律
- 1.67 MB | 2次下載 | 免費
- 4丹佛斯2800系列變頻器說明書
- 8.00 MB | 1次下載 | 5 積分
- 5PC8011同步開關型降壓3.5A單節鋰電池充電管理電路技術手冊
- 0.74 MB | 1次下載 | 免費
- 6ES7243E+ES8311音頻錄制與播放電路資料
- 0.06 MB | 1次下載 | 5 積分
- 7SDM02 激光測距模塊產品手冊
- 0.43 MB | 1次下載 | 免費
- 8SDFM 激光測距模塊模組手冊
- 0.54 MB | 1次下載 | 免費
本月
- 1CH341編程器軟件NeoProgrammer_2.2.0.10
- 20.47 MB | 170次下載 | 1 積分
- 22025智能家居傳感器市場分析及創新應用
- 3.11 MB | 43次下載 | 免費
- 3RV1126B系列開發板產品資料
- 4.19 MB | 18次下載 | 免費
- 4CH341編程軟件下載
- 2.50 MB | 16次下載 | 5 積分
- 5全志系列-米爾基于T153核心板開發板 四核異構、3路千兆網,賦能多元化工業場景
- 3.05 MB | 12次下載 | 免費
- 6【開源】60余套STM32單片機、嵌入式Linux、物聯網、人工智能項目案例及入門學習資源包
- 10.55 MB | 8次下載 | 免費
- 7冷柜-電氣控制系統講解
- 13.68 MB | 4次下載 | 10 積分
- 8特斯拉MODEL S車載充電機主電路回路原理圖
- 0.81 MB | 4次下載 | 3 積分
總榜
- 1matlab軟件下載入口
- 未知 | 935137次下載 | 10 積分
- 2開源硬件-PMP21529.1-4 開關降壓/升壓雙向直流/直流轉換器 PCB layout 設計
- 1.48MB | 420064次下載 | 10 積分
- 3Altium DXP2002下載入口
- 未知 | 233094次下載 | 10 積分
- 4電路仿真軟件multisim 10.0免費下載
- 340992 | 191448次下載 | 10 積分
- 5十天學會AVR單片機與C語言視頻教程 下載
- 158M | 183356次下載 | 10 積分
- 6labview8.5下載
- 未知 | 81604次下載 | 10 積分
- 7Keil工具MDK-Arm免費下載
- 0.02 MB | 73824次下載 | 10 積分
- 8LabVIEW 8.6下載
- 未知 | 65991次下載 | 10 積分
電子發燒友App





創作
發文章
發帖
提問
發資料
發視頻
上傳資料賺積分
評論