冰楓論壇

標題: STM32F401 實現簡單 LED 閃爍 [打印本頁]

作者: 洪嵐峰    時間: 2023-4-8 23:53
標題: STM32F401 實現簡單 LED 閃爍
STM32F401 是 STMicroelectronics 公司推出的一款 ARM Cortex-M4F 核心的 32 位微控制器,擁有高性能的運算能力和豐富的外設資源。

以下是一個使用 STM32F401 實現簡單 LED 閃爍程式碼:


#include "stm32f4xx.h"
#include "stm32f4xx_gpio.h"
#include "stm32f4xx_rcc.h"

void Delay(__IO uint32_t nCount)
{
  while(nCount--)
  {
  }
}

int main(void)
{
  GPIO_InitTypeDef  GPIO_InitStructure;
  
  RCC_AHB1PeriphClockCmd(RCC_AHB1Periph_GPIOA, ENABLE);

  GPIO_InitStructure.GPIO_Pin = GPIO_Pin_5;
  GPIO_InitStructure.GPIO_Mode = GPIO_Mode_OUT;
  GPIO_InitStructure.GPIO_OType = GPIO_OType_PP;
  GPIO_InitStructure.GPIO_Speed = GPIO_Speed_100MHz;
  GPIO_InitStructure.GPIO_PuPd = GPIO_PuPd_NOPULL;
  GPIO_Init(GPIOA, &GPIO_InitStructure);

  while (1)
  {
    GPIO_SetBits(GPIOA, GPIO_Pin_5);
    Delay(0x3FFFFF);
    GPIO_ResetBits(GPIOA, GPIO_Pin_5);
    Delay(0x3FFFFF);
  }
}
在上面的程式碼中,首先設定了 STM32F401 的 PA5 端口為輸出狀態,然後在主迴圈中控制 PA5 端口輸出高電平和低電平,並使用 Delay 函數等待一段時間。

需要注意的是,STM32F401 的 GPIO 操作需要通過對相應的寄存器進行設置和操作,上面的程式碼中使用了相應的庫函數進行設置和操作。




歡迎光臨 冰楓論壇 (https://bingfong.com/) Powered by 冰楓