Skip to content

Instantly share code, notes, and snippets.

View futurelink's full-sized avatar

Denis Pavlov futurelink

  • Belgrade, Serbia
View GitHub Profile
/**
* Настройка таймера для генерации N импульсов
* указанного периода и указанной скважностью.
* Период задается регистром ARR, кол-во импульсов RCR
* и скважность задается CCR1. Импульсы выводятся на
* соответствующую ногу микросхемы.
*/
void TIM1_Config() {
RCC->APB2ENR |= RCC_APB2ENR_TIM1EN; // Enable TIM1
@futurelink
futurelink / stm32f0_dma_pwm.c
Last active April 19, 2020 03:18
Конфигурация таймера 1 с DMA и кольцевым буфером для STM32F051C8 c выходом на PA8 в режиме ШИМ.
#define TIMER_PRESCALER 72
#define BUFFER_LENGTH 18
volatile uint16_t axis1Buffer[BUFFER_LENGTH] = { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0};
/**
* Конфигурация таймера 1 с DMA и кольцевым буфером для
* STM32F051C8 c выходом на PA8 в режиме ШИМ. В буфере тройки
* значений ARR (частота), RPT (кол-во импульсов), CCR1 (скважность).
*/
@futurelink
futurelink / stm32f0_usart_config.c
Last active April 6, 2020 13:34
Конфигурация USART1 для STM32F051C8 на стандартных пинах PA9 и PA10 в синхронном режиме без HAL, SPL и прочего
/**
* Конфигурация USART1 для STM32F051C8 на стандартных пинах
* PA9 и PA10 в синхронном режиме без HAL, SPL и прочего..
*/
void USART1_Config() {
RCC->APB2ENR |= RCC_APB2ENR_USART1EN;
/* TX это выход с альтер-функцией (GPIOB 6 pin) */
GPIOA->MODER &= ~GPIO_MODER_MODER9; // Сброс значения для PA9
GPIOA->MODER |= GPIO_MODER_MODER9_1; // Установка режима AF