1. 程式人生 > 實用技巧 >華大MCU微控制器之HC32F003/HC32F005 hc32f005_ddl_Rev1.9.0 Lite精簡版庫使用心得

華大MCU微控制器之HC32F003/HC32F005 hc32f005_ddl_Rev1.9.0 Lite精簡版庫使用心得

之前幾個專案開發都是用的華大HC32F003_DDL_Rev1.0.2的庫函式,今年剛開始入手華大,剛開始不是很瞭解這個晶片,看到庫能用就上手了。這個版本的庫編譯效率很低,16K的晶片一下就寫爆了。後面華大官方不在對此版本的庫進行更新,之前使用的時候也發現了很多錯誤和漏洞。這次新專案使用hc32f005_ddl_Rev1.9.0 Lite的庫開發,今天第一天使用,就發現了一個不全。

微控制器P00復位口這邊做了按鍵檢測,那麼要將RST引腳配置位IO功能,看了手冊SYSCTRL1的功能位,bit7 = 1則該引腳配置位GPIO功能,但是看了庫函式對於SYSCTRL1的結構體定義裡面卻沒有該位的定義,實在費解。

手冊資料

原版庫函式對SYSCTRL1的定義,缺少bi7關於RST引腳的定義,

固對庫函式作如下修改,僅供參考,歡迎交流。

typedef enum en_sysctrl_func
{
    SysctrlEXTHEn           = 1u,                    ///< 使能外部高速時鐘從輸入引腳輸入
    SysctrlCMLockUpEn       = 6u,                    ///< 使能後CPU執行無效指令會復位MCU
    SysctrlRSTUseIOEn       = 7u,                    
///< RST埠設為IO功能 SysctrlSWDUseIOEn = 8u, ///< SWD埠設為IO功能 }en_sysctrl_func_t;