??STM32系列32位微控制器基于Arm? Cortex?-M處理器,旨在為MCU用戶提供新的開發(fā)自由度。它包括一系列產品,集高性能、實時功能、數(shù)字信號處理、低功耗/低電壓操作、連接性等特性于一身,同時還保持了集成度高和易于開發(fā)的特點。
1.硬件接口
??STM32G431開發(fā)板有一個用戶按鈕和LED燈。
??根據(jù)原理圖,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 獲取按鍵值函數(shù)編寫
/*獲取按鍵值*/ 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 主函數(shù)
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); } }


??開發(fā)板本身集成ST_Link下載器,只需安裝ST_Link驅動即可直接下載。
審核編輯:湯梓紅
-
mcu
+關注
關注
146文章
17718瀏覽量
358201 -
STM32
+關注
關注
2283文章
10986瀏覽量
361297 -
按鍵
+關注
關注
4文章
225瀏覽量
57891 -
開發(fā)板
+關注
關注
25文章
5389瀏覽量
100890
發(fā)布評論請先 登錄
相關推薦
評論