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

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

3天內不再提示

入門有必要選擇STM32Cube HAL庫開發(fā)嗎?

5RJg_mcuworld ? 來源:lp ? 2019-03-14 13:53 ? 次閱讀

STM32CubeMX是很多朋友必備的一個工具。

1寫在前面

從公眾號后臺、微信給我留言的問題可以看得出來,使用STM32CubeMX這個工具的人有很多。

那么,使用STM32CubeMX進行配置、開發(fā)時,相信大家都需要過各種各樣的問題。

我也不例外,我是15年開始使用STM32CubeMX這個工具,這些年來陸陸續(xù)續(xù)也遇到過很多問題,特別是剛開始的時候,感覺整個人都不好受。但是,好在我把遇到的問題多逐步解決了。

今天,和大家說說:如果你選擇STM32作為硬件平臺,你有必要學習一下STM32CubeMX這個工具。

2

入門有必要選擇STM32Cube HAL庫開發(fā)嗎?

這里我給的答案是:No

這個問題見仁見智,但是從關注我公眾號的讀者朋友中,我綜合給出的答案是No.

原因:很多朋友的基礎還是偏弱。

HAL這套庫是需要有一定數據結構功底的朋友來學習。簡單說,你需要對指針、結構體、回調函數等這類C語言知識有一定掌握才行。

使用過STM32Cube進行開發(fā)的朋友都應該經歷過這過問題:一旦底層有問題,去找這個問題相比SPL(標準外設庫)要難得多。

當然,如果你對HAL這套庫比較了解的話,其實難度也不大。

所以,我的建議是:如果你數據結構功底不好,可以先從寄存器、標準外設庫開始,當你基礎知識累計一定程度,可以轉向STM32Cube HAL開發(fā)。

3

有必要學習一下STM32CubeMX

當然,上面給出的入門建議不是說不鼓勵大家去學習一下STM32CubeMX。這節(jié)說的就是你有必要學習一下STM32CubeMX。

學習STM32CubeMX的目的:你會有意想不到的收獲。

上面我說了,我也是踩了很多坑過來的,但一路過來,我發(fā)現(xiàn)其實我收獲還蠻大的。

包括很多基礎的問題,可能你之前從來沒了解過。這里也羅列一些問的較多的問題吧。

1.中文路徑

在生成MDK-ARM工程時,中文路徑會出錯:

看英文提示:在...路徑下生成工程出現(xiàn)錯誤。

2.自己寫的代碼,重新生成會被刪除

這里需要進行配置,并且你的代碼需要在指定位置(BEGIN --- END內)。

這樣,當你重新生成工程時,這些代碼就不會被刪除。

3.警告

這里看一下提示就知道:大概意思就是多了一個括號。

4.__weak弱定義

很多朋友可能之前都沒有見過【__weak】這個關鍵字,它有“弱”的意思。

這里的意思就是說:如果你自己寫一個同樣的函數(HAL_UART_MspDeInit),那么,這里帶有weak關鍵字的函數就不起作用。

還有,有朋友問:不知道工程中很多UNUSED函數是什么意思。你自己看一下注釋就知道,它的為了防止編譯警告,“未使用的函數”。

只要你愿意去發(fā)現(xiàn)問題,并解決問題,你就有收獲。

4總結

1.遇到問題,看提示找問題。

幾個英文單詞不認識的話,翻譯工具應該知道吧。久而久之你會發(fā)現(xiàn)有些問題都不是什么問題。

2.使用STM32CubeMX之后,你會發(fā)現(xiàn)你掌握了更多之前沒有掌握的知識。

上面舉的幾個例子,相信肯定有朋友不知道的這些知識,我們學習都是一個積累的過程。

3.不要一來就問有沒有捷徑,遇到一點小問題都不去面對,永遠沒有捷徑。

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

    關注

    2270

    文章

    10900

    瀏覽量

    356005
  • 代碼
    +關注

    關注

    30

    文章

    4788

    瀏覽量

    68611
  • 數據結構
    +關注

    關注

    3

    文章

    573

    瀏覽量

    40130

原文標題:用心來學習STM32CubeMX,你會有不一樣的收獲!

文章出處:【微信號:mcuworld,微信公眾號:嵌入式資訊精選】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    STM32四種對比 STM32標準HAL什么不同?

    STM32的四種STM32Snippets、Standard Peripheral Library、STM32Cube LL、STM32Cube
    發(fā)表于 08-24 09:45 ?1.4w次閱讀
    <b class='flag-5'>STM32</b>四種<b class='flag-5'>庫</b>對比 <b class='flag-5'>STM32</b>標準<b class='flag-5'>庫</b>和<b class='flag-5'>HAL</b><b class='flag-5'>庫</b><b class='flag-5'>有</b>什么不同?

    請問入門選擇hal還是stm32cube學習?

    入門選擇hal還是stm32cube學習
    發(fā)表于 04-18 07:55

    STM32Cube HAL中斷處理機制 以及回調函數實現(xiàn)原理

    STM32Cube HAL中斷處理機制,以及回調函數實現(xiàn)原理
    的頭像 發(fā)表于 03-03 14:01 ?1.3w次閱讀

    講講開發(fā)STM32的四種

    1.我是選擇寄存器開發(fā)STM32,還是標準外設呢? 2.你STM32L0標準外設
    的頭像 發(fā)表于 02-10 10:16 ?1.1w次閱讀
    講講<b class='flag-5'>開發(fā)</b><b class='flag-5'>STM32</b>的四種<b class='flag-5'>庫</b>

    STM32四種對比:寄存器、標準外設HAL、LL

    1.我是選擇寄存器開發(fā)STM32,還是標準外設呢? 2.你STM32L0標準外設
    發(fā)表于 03-05 06:17 ?50次下載
    <b class='flag-5'>STM32</b>四種<b class='flag-5'>庫</b>對比:寄存器、標準外設<b class='flag-5'>庫</b>、<b class='flag-5'>HAL</b>、LL

    精雕細琢見真章《STM32Cube高效開發(fā)教程》

    CubeMX和STM32CubeIDE作為開發(fā)軟件,系統(tǒng)性地介紹STM32HAL開發(fā)技術的書
    發(fā)表于 12-31 19:28 ?341次下載
    精雕細琢見真章《<b class='flag-5'>STM32Cube</b>高效<b class='flag-5'>開發(fā)</b>教程》

    UM2220_基于STM32Cube的MotionFX軟件的入門指南

    UM2220_基于STM32Cube的MotionFX軟件的入門指南
    發(fā)表于 11-22 19:20 ?2次下載
    UM2220_基于<b class='flag-5'>STM32Cube</b>的MotionFX軟件的<b class='flag-5'>入門</b>指南

    UM2225_基于STM32Cube的MotionEC軟件的入門指南

    UM2225_基于STM32Cube的MotionEC軟件的入門指南
    發(fā)表于 11-22 19:21 ?2次下載
    UM2225_基于<b class='flag-5'>STM32Cube</b>的MotionEC軟件的<b class='flag-5'>入門</b>指南

    UM2275_基于STM32Cube的MotionFD軟件的入門指南

    UM2275_基于STM32Cube的MotionFD軟件的入門指南
    發(fā)表于 11-22 19:21 ?0次下載
    UM2275_基于<b class='flag-5'>STM32Cube</b>的MotionFD軟件的<b class='flag-5'>入門</b>指南

    UM2193_基于STM32Cube的MotionAR活動識別軟件的入門指南

    UM2193_基于STM32Cube的MotionAR活動識別軟件的入門指南
    發(fā)表于 11-22 19:24 ?0次下載
    UM2193_基于<b class='flag-5'>STM32Cube</b>的MotionAR活動識別<b class='flag-5'>庫</b>軟件的<b class='flag-5'>入門</b>指南

    UM2123_用于STM32Cube的X-CUBE-MEMS1擴展板的osxMotionAW手腕動作識別入門

    UM2123_用于STM32Cube的X-CUBE-MEMS1擴展板的osxMotionAW手腕動作識別入門
    發(fā)表于 11-22 19:24 ?0次下載
    UM2123_用于<b class='flag-5'>STM32Cube</b>的X-<b class='flag-5'>CUBE</b>-MEMS1擴展板的osxMotionAW手腕動作識別<b class='flag-5'>庫</b><b class='flag-5'>入門</b>

    STM32Cube的X-CUBE-MEMS1擴展軟件中MotionCP實時攜帶位置入門

    電子發(fā)燒友網站提供《STM32Cube的X-CUBE-MEMS1擴展軟件中MotionCP實時攜帶位置入門.pdf》資料免費下載
    發(fā)表于 07-31 09:55 ?0次下載
    <b class='flag-5'>STM32Cube</b>的X-<b class='flag-5'>CUBE</b>-MEMS1擴展軟件中MotionCP實時攜帶位置<b class='flag-5'>庫</b><b class='flag-5'>入門</b>

    STM32Cube 的X-CUBE-MEMS1擴展軟件中MotionFX傳感器融合入門

    電子發(fā)燒友網站提供《STM32Cube 的X-CUBE-MEMS1擴展軟件中MotionFX傳感器融合入門.pdf》資料免費下載
    發(fā)表于 07-31 09:55 ?1次下載
    <b class='flag-5'>STM32Cube</b> 的X-<b class='flag-5'>CUBE</b>-MEMS1擴展軟件中MotionFX傳感器融合<b class='flag-5'>庫</b><b class='flag-5'>入門</b>

    STM32Cube X-CUBE-MEMS1擴展的MotionGR實時手勢識別入門

    電子發(fā)燒友網站提供《STM32Cube X-CUBE-MEMS1擴展的MotionGR實時手勢識別入門.pdf》資料免費下載
    發(fā)表于 07-31 09:17 ?0次下載
    <b class='flag-5'>STM32Cube</b> X-<b class='flag-5'>CUBE</b>-MEMS1擴展的MotionGR實時手勢識別<b class='flag-5'>庫</b><b class='flag-5'>入門</b>

    STM32Cube LL的巧妙之處

    STM32Cube LL的巧妙之處
    的頭像 發(fā)表于 09-27 16:26 ?1411次閱讀
    <b class='flag-5'>STM32Cube</b> LL<b class='flag-5'>庫</b>的巧妙之處