Операции с портами ввода-вывода STM32 (включение LED)

Автор:CodeSnippets
Язык:
C
28 просмотров
0 избранных
6 часов назад

Реализация кода

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
    }
}

Ниже приведен простой пример программы для STM32, использующей библиотеку HAL для включения светодиода (LED).

#STM32#LED

Описание фрагмента

  • При фактической разработке настройте конфигурацию выводов (пинов) и тактирования в соответствии с вашим конкретным моделью STM32.
  • После компиляции программы загрузите ее в чип STM32 с помощью отладочного инструмента, такого как ST-Link или J-Link. При правильной работе вы увидите, как LED мигает с интервалом 500 мс.

Рекомендуемые фрагменты

Hello World

Пример C Hello World, C - это эффективный системный язык программирования и основа многих современных языков

C
#Начало работы
9
0

Дебонсировка функции

В JavaScript функция дебонсировки — это ключевой инструмент для оптимизации высокочастотных и ресурсоемких операций. её основная логика заключается в задержке выполнения функции с одновременной отменой повторяющихся задержек. Благодаря этому гарантируется, что функция, которая срабатывает несколько раз за короткий промежуток времени, выполнится только после ожидания указанного периода задержки после последнего срабатывания. Это позволяет избежать потерь производительности, вызванных ненужными вызовами. Принцип её работы можно понять по аналогии с «закрытием дверей лифта»: После открытия дверей лифт по умолчанию ожидает фиксированное время (например, 2 секунды), прежде чем закрыть их. Если за это время войдёт новый пассажир (что соответствует повторному срабатыванию функции), исходный таймер ожидания отменяется, и обратный отсчёт перезапускается. Только когда после завершения обратного отсчёта новых срабатываний не будет, выполнится действие «закрыть двери» (что соответствует выполнению функции).

JavaScript
#Дебонсировка функции
35
0

Hello World

Пример Perl Hello World, Perl - это мощный язык обработки текста, известный своей гибкостью и богатой поддержкой регулярных выражений

Perl
#Начало работы
14
0

Комментарии

Загрузка...