1. 程式人生 > >C++ STM32 程式設計 003 使用CubeMX建立第一個程式

C++ STM32 程式設計 003 使用CubeMX建立第一個程式

        GPIO是stm32的基礎,單獨時間點上,每個GPIO都可以作為輸出,或輸入,或中斷,或特殊功能使用(特殊功能是指系統預設的功能使用引腳),每個時間點上,只能使用一種方式。

        首先,我們開啟CubeMX軟體,完成工程的配置,以及MCU特殊功能的選擇。

        File=>New Project 建立一個新的工程

     在左上角輸入 stm32f103r6 

     在右側就會出現這種型號的MCU,此例子中,我們選擇,stm32f103r6tx,雙擊它就進入設定介面了

     由於正常情況下,MCU都要外接一個外部晶振,而不用內部晶振,因此我們要先配置RCC,我們點選左側選單

     System Core => RCC 

    在 RCC Mode and Config 欄內,將 High Speed Clock (HSC)外部晶振使能 

    然後配置系統時鐘    點選 Clock Config 選擇欄      

    配置如下

    然後我們設定GPIO引腳   點選 Pinout & Config 選擇欄

    在視窗右側,可以看到 MCU 引腳指示圖,如果感覺圖太小,可以拉伸,旋轉,在這裡我們選擇 PC0和PC1作為我們的兩個實驗引腳,PC0輸出,PC1輸入,PC0 使用 GPIO_Output,PC1使用 GPIO_Input

 

   然後我們精確設定GPIO的屬性  選擇 System Core => GPIO    在此,我們就看到了我們剛剛粗略設定的GPIO

   我們在中間表格點選PC0

    GPIO output level 選項為 GPIO 預設輸出電平,在這裡我們選擇 Low低電平

    GPIO mode 選項為 GPIO 輸出模式,選擇為 Output Push Pull 推輓輸出

    Maximum output speed 選項為 GPIO 輸出時鐘 高或低,選擇為 Low 低

    User Label  選項為 使用者為GPIO 設定的名稱  我們 設定為 LED,同理我們設定 PC1

     由於GPIO功能設定不同,出現的介面也不完全相同,

    GPIO mode 為 input mode 即輸入 模式

    GPIO Pull-up Pull-down 選項為 上拉下拉或懸空,我們選擇 Pull-up 即上拉模式

    標籤為 BUTTON,至此GPIO配置完畢,之後我們要配置輸出工程資訊 點選 Project Manager 選擇欄

   下圖是我的設定,設定完成後點選 右上角 GENERATE CODE 按鈕,工程就建立完畢了