單片機基礎——使用GPIO輸出點亮一個LED燈
- 2020 年 3 月 13 日
- 筆記
1. 準備工作
硬體準備
開發板
首先需要準備一個小熊派IoT開發板,並通過USB線與電腦連接。
軟體準備
- 需要安裝好Keil – MDK及晶片對應的包,以便編譯和下載生成的程式碼,可參考MDK安裝教程
2.創建工程
選擇晶片型號
打開STM32CubeMX,打開MCU選擇器:
搜索並選中晶片STM32L431RCT6
:
配置時鐘源
- 如果選擇使用外部高速時鐘(HSE),則需要在System Core中配置RCC;
- 如果使用默認內部時鐘(HSI),這一步可以略過;
這裡我都使用外部時鐘:
配置GPIO引腳
查看原理圖,確定控制LED引腳,這裡我們的LED使用的是PC13引腳。
所以接下來我們選擇配置PC13
引腳:
配置時鐘樹
STM32L4的最高主頻到80M,所以配置PLL,最後使HCLK = 80Mhz
即可:
生成工程設置
程式碼生成設置
最後設置生成獨立的初始化文件:
生成程式碼
點擊GENERATE CODE
即可生成MDK-V5工程:
生成成功
3. 在MDK中編寫、編譯、下載用戶程式碼
編寫用戶程式碼
STM32CubeMX生成的程式碼目錄如下:
進入MDK-ARM文件夾
目錄,打開工程:
在main.c
中的main函數中編寫簡單的用戶程式碼:
1 while (1) 2 { 3 /* USER CODE END WHILE */ 4 /* USER CODE BEGIN 3 */ 5 HAL_Delay(200); 6 HAL_GPIO_TogglePin(GPIOC, GPIO_PIN_13); 7 }
編譯程式碼
點擊如圖所示的按鈕編譯工程
設置下載器
點擊如圖所示按鈕打開設置頁面
進行下載設置,選擇“ST-Link Debugger”,並點擊“Settings”。
在“Flash Download”菜單下勾選“Reset and Run”選項,已達到燒錄程式後單片機自動複位並運行程式的目的。
下載運行
點擊”LOAD”按鈕即可燒錄程式碼到單片機中。
燒錄成功
實驗現象
至此,我們已經學會了如何使用STM32CubeMX快速生成MDK的工程,點亮一個LED,接下來一節講述如何使用 STM32CubeMX初始化GPIO進行按鍵檢測。