(1)stm32建立新工程時,最最重要的第一步就是要確定晶元外部晶振是多少,然後設定stm32f10x.**件中的hse_value為外部晶振值;
(2)設定系統時鐘分頻係數,在system_stm32f10x.c檔案中,setsysclockto72()函式中,修改 【rcc_cfgr2_prediv2_div2 和 rcc_cfgr2_pll2mul8】 :
rcc->cfgr2 |= (uint32_t)(rcc_cfgr2_prediv2_div2 | rcc_cfgr2_pll2mul10 |//rcc_cfgr2_prediv2_div5 ,rcc_cfgr2_pll2mul8 //lixt
rcc_cfgr2_prediv1src_pll2 | rcc_cfgr2_prediv1_div5);
確保最後設定的系統時鐘sysclk為72mhz,ahb匯流排時鐘hclk為72mhz,apb1匯流排時鐘pclk1為36mhz,apb2匯流排時鐘pclk2為72mhz,adc_clk為36mhz。
(3)可以在main函式最開始部分新增以下語句來檢視所設定系統時鐘是否正確:
//rcc_clockstypedef rcc_clocks;
//rcc_getclocksfreq(&rcc_clocks);//獲取時鐘頻率
Stm32f10x 新建工程詳解
環境 mdk4.23 編譯器 第一步 開啟keilv4,新建工程 第二步 選擇晶元,我使用的是stm32f103vet6 第三步 選擇是否載入startup檔案,選否。因為我們會手動自己新增。第四步 在stm32lib資料夾下新建m3資料夾。複製stm32f10x stdperiph lib v3....
STM32F10x系列 中斷
概念問題 中斷與事件有什麼聯絡與區別?stm32之中斷與事件 中斷與事件的區別 簡單概括下。中斷 cpu單執行緒情況下只能處理單一任務,在有零時任務需要處理時,可以暫時放下當前任務,優先處理零時任務,再回過來處理之前的任務。多個中斷可以進行巢狀,比如產生了多個零時任務,那麼就可以按照優先順序處理這多...
STM32F10X入門 流水燈
2019 3 16 2019 3 19 core cm32.c stdin.h中定義了字元型 stm32f10x.h stm32f10x conf.h中定義了引用的外設標頭檔案 庫檔案之間的依賴呼叫關係 pngstm32f10x.h檢視位址對映 比如define gpioa base apb2per...