#include "stm32c0xx_hal.h"
void SystemClock_Config(void);
void MX_GPIO_Init(void);
int main(void)
{
// Инициализация HAL и системного тактирования
HAL_Init(); // Инициализация HAL
SystemClock_Config(); // Настройка тактирования
MX_GPIO_Init(); // Инициализация GPIO
// Включаем светодиод
//HAL_GPIO_WritePin(GPIOA, GPIO_PIN_5, GPIO_PIN_SET);
while (1)
{
HAL_GPIO_WritePin(GPIOA, GPIO_PIN_5, GPIO_PIN_SET);
HAL_Delay(500); // 500 ms
HAL_GPIO_WritePin(GPIOA, GPIO_PIN_5, GPIO_PIN_RESET);
HAL_Delay(500); // 500 ms
}
}
void SystemClock_Config(void)
{
// Оставляем пустым, так как настройка тактирования обычно берется из среды.
}
void MX_GPIO_Init(void)
{
__HAL_RCC_GPIOA_CLK_ENABLE(); // Включаем тактирование порта A
GPIO_InitTypeDef GPIO_InitStruct = {0};
GPIO_InitStruct.Pin = GPIO_PIN_5; // Номер порта PA5
GPIO_InitStruct.Mode = GPIO_MODE_OUTPUT_PP; // активный выход (1-3.3в, 0 - ЗЕМЛЯ)
GPIO_InitStruct.Pull = GPIO_NOPULL; //подтягивающий резистор (отключен)
GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_LOW; // Скорость низкая
HAL_GPIO_Init(GPIOA, &GPIO_InitStruct);
}