首頁>Club>
17
回覆列表
  • 1 # 使用者5876438622222

    別人寫的 你參考一下:   半年前接觸 STM32,剛開始 MCU 用的 32F1,庫用的標準外設庫 3.5,寫過一些簡單的東西。   再後來發現 ST 還有一個軟體叫做 STM32 CUBE MX,可以自動的生成初始化程式,對於我這個 32 新手來說無疑是天降福音!終於不用為繁瑣的配置而苦惱了(其實就是自己對各項配置不熟,而且沒有自己積累的程式可以 Ctrl C + Ctrl V)。   雖然 CUBE 用的是 ST 新出的 HAL 庫,與以前的 標準外設庫完全不相容,甚至基本的 I/O 操作都變了,會讓習慣了   標準外設庫的人很苦惱。但是我對標準外設庫也不是很熟,而且 CUBE 的介面化設計真的讓 配置工程變得很方便,再加上它還有一個類似於 FPGA   的引腳分配介面,讓資源分配,PCB 佈局佈線也方便了不少,於是我選擇了用 CUBE ,用 HAL 庫。   很早就開始的寫 32 的朋友有不少,他們也試過 HAL 庫,可最後無一例外都選擇了繼續使用標準外設庫。他們表示完全不習慣 HAL 庫,另外 HAL 庫不太好,畢竟是自動生成的配置,沒有自己手動配置的來得熟悉來得透徹,誰知道軟體是怎麼給你配置的工程。另外 CUBE 就是給那些不會寫 32 的人用的(ST 的官方的說法似乎也是 HAL 是為了方便做嵌入式相關且對底層不熟的人設計的,但想不通他為何要把兩個庫做得不相容)。   前面一直在畫 PCB ,調 PCB ,做機械之類的,沒有寫程式。最近又開始寫 32,現在用的 MCU 是 32F4,庫是 HAL/F4庫 1.6.0。可是我發現我連 GPIO 的上拉輸出都實現不了,無論如何 I/O 始終預設輸出低電平(操作 I/O可以實現電平跳變),這個問題我昨天查了一天,從庫到最底層的暫存器都看了,可沒發現什麼問題。周圍用 HAL 庫的就我一個。。。   有些無奈了,難道 HAL 庫真有什麼問題嗎?如果真有這麼明顯的問題,ST 官方肯定早就發現了。   已經下好了標準外設庫,打算換標準外設庫,工程從頭到尾都自己配置,這樣出了問題也更方便找。   可是我始終有一點想不明白,既然 ST 官方在推 HAL 庫,那肯定也有他的道理,我們也應該勇於接受新事物,為何身邊的朋友卻都不願意接納 HAL 庫。

  • 中秋節和大豐收的關聯?
  • 牛吃草不吃料是什麼原因?