??STM32系列32位微控制器基于Arm? Cortex?-M處理器,旨在為MCU用戶提供新的開發自由度。它包括一系列產品,集高性能、實時功能、數字信號處理、低功耗/低電壓操作、連接性等特性于一身,同時還保持了集成度高和易于開發的特點。
1.硬件接口
??STM32G431開發板有一個用戶按鈕和LED燈。
??根據原理圖,LD2和PA5相連,想要點亮LED則PA5應該為高電平。
??用戶按鍵B1和PC13相連,按下為高電平;
2.軟件設計
2.1 芯片型號選擇
??本示例所使用芯片型號為:STM32G431RBT6;128KB flash 和32KB SRAM,工作頻率高達170MHz。
2.2 時鐘配置
2.3 GPIO配置
2.4 生成代碼
2.5 LED和按鈕引腳配置
2.6 獲取按鍵值函數編寫
/*獲取按鍵值*/ uint8_t Get_KeyVal(void) { uint8_t static stat=0; if(HAL_GPIO_ReadPin(USER_GPIO_Port,USER_Pin)==1 && stat==0)//判斷按鍵是否按下 { HAL_Delay(20);//延時消抖 stat=1; if(HAL_GPIO_ReadPin(USER_GPIO_Port,USER_Pin))return 1; } else if(HAL_GPIO_ReadPin(USER_GPIO_Port,USER_Pin)==0) { stat=0; } return 0; }
2.7 主函數
uint8_t key; /* USER CODE END 2 */ /* Infinite loop */ /* USER CODE BEGIN WHILE */ while (1) { /* USER CODE END WHILE */ /* USER CODE BEGIN 3 */ key=Get_KeyVal(); if(key) { HAL_GPIO_TogglePin(LD2_GPIO_Port, LD2_Pin); } }
![pYYBAGN-v8uAcrlUAAIV8LfEE6E492.png#pic_center](https://file.elecfans.com//web2/M00/7D/D8/pYYBAGN-v8uAcrlUAAIV8LfEE6E492.png#pic_center)
![poYBAGN-v82AGk-_AAshA1mcwUw922.png#pic_center](https://file.elecfans.com//web2/M00/7D/4B/poYBAGN-v82AGk-_AAshA1mcwUw922.png#pic_center)
??開發板本身集成ST_Link下載器,只需安裝ST_Link驅動即可直接下載。
審核編輯:湯梓紅
-
mcu
+關注
關注
146文章
17148瀏覽量
351187 -
STM32
+關注
關注
2270文章
10900瀏覽量
355985 -
按鍵
+關注
關注
4文章
223瀏覽量
57601 -
開發板
+關注
關注
25文章
5050瀏覽量
97456
發布評論請先 登錄
相關推薦
STM32CubeMX stm32g431 PLLP無法被設置是怎么回事?
STM32G431無法輸出項目工程的原因?
配置STM32G431的FDCAN為普通CAN模式,為什么不能接收數據?
STM32F302K8U6和STM32G431中內置的運放 建立時間是多長?
STM32G431開發板免費試用
【STM32G431試用申請】STM32G431在模擬前端板的替代
STM32G431嵌入式設計相關資料下載
STM32G431串口通信的使用步驟
在什么溫度下可以檢測到STM32G431的TS_CAL2值呢?
如何使用STM32G431芯片做DAC應用
STM32_按鍵點燈
![<b class='flag-5'>STM32</b>_<b class='flag-5'>按鍵</b><b class='flag-5'>點燈</b>](https://file.elecfans.com/web1/M00/D9/4E/pIYBAF_1ac2Ac0EEAABDkS1IP1s689.png)
評論