STM32 IO-Operation (LED-Einschaltung)

Sprache:
C
28 Aufrufe
0 Favoriten
vor 6 Stunden

Code-Implementierung

C
#include "stm32f1xx_hal.h"

int main(void) {
    HAL_Init(); // Initialize the HAL library
    SystemClock_Config(); // Configure the system clock

    __HAL_RCC_GPIOC_CLK_ENABLE(); // Enable the GPIOC clock

    GPIO_InitTypeDef GPIO_InitStruct = {0};
    GPIO_InitStruct.Pin = GPIO_PIN_13; // Select the PC13 pin
    GPIO_InitStruct.Mode = GPIO_MODE_OUTPUT_PP; // Configure as push-pull output
    GPIO_InitStruct.Pull = GPIO_NOPULL; // No pull-up/down resistor
    GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_LOW; // Low-speed mode
    HAL_GPIO_Init(GPIOC, &GPIO_InitStruct); // Initialize the GPIO

    while (1) {
        HAL_GPIO_TogglePin(GPIOC, GPIO_PIN_13); // Toggle the state of PC13 pin
        HAL_Delay(500); // Delay for 500ms
    }
}

Im Folgenden befindet sich ein einfaches STM32-Programmbeispiel, das die HAL-Bibliothek zur Einschaltung einer LED verwendet.

#STM32#LED

Snippet-Beschreibung

  • Passen Sie bei der tatsächlichen Entwicklung die Pin- und Taktkonfigurationen an Ihr spezifisches STM32-Modell an.
  • Kompilieren Sie das Programm und brennen Sie es mit einem Debugging-Tool wie ST-Link oder J-Link in den STM32-Chip. Wenn alles ordnungsgemäß funktioniert, sehen Sie die LED mit 500ms-Intervallen blinken.

Kommentare

Laden...