MyLibs 1.0
Расширенные библиотеки для STM32
Loading...
Searching...
No Matches
SPI_Usage_Example

Пример использования SPI_Base_Init.

Пример использования SPI_Base_Init. Инициализация SPI1 с базовыми настройками:

#include "general_spi.h"
void SPI1_Init(void)
{
// Настройка SPI1
mySPI.hspi.Instance = SPI1;
mySPI.hspi.Init.Mode = SPI_MODE_MASTER;
mySPI.hspi.Init.Direction = SPI_DIRECTION_2LINES;
mySPI.hspi.Init.DataSize = SPI_DATASIZE_8BIT;
mySPI.hspi.Init.CLKPolarity = SPI_POLARITY_LOW;
mySPI.hspi.Init.CLKPhase = SPI_PHASE_1EDGE;
mySPI.hspi.Init.NSS = SPI_NSS_SOFT;
mySPI.hspi.Init.BaudRatePrescaler = SPI_BAUDRATEPRESCALER_16;
mySPI.hspi.Init.FirstBit = SPI_FIRSTBIT_MSB;
mySPI.hspi.Init.TIMode = SPI_TIMODE_DISABLE;
mySPI.hspi.Init.CRCCalculation = SPI_CRCCALCULATION_DISABLE;
// Настройка GPIO для SPI
mySPI.CLK_GPIOx = GPIOA;
mySPI.CLK_PIN = GPIO_PIN_5;
mySPI.CLK_GPIO_AlternageFunc = GPIO_AF5_SPI1;
mySPI.MISO_GPIOx = GPIOA;
mySPI.MISO_PIN = GPIO_PIN_6;
mySPI.MISO_GPIO_AlternageFunc = GPIO_AF5_SPI1;
mySPI.MOSI_GPIOx = GPIOA;
mySPI.MOSI_PIN = GPIO_PIN_7;
mySPI.MOSI_GPIO_AlternageFunc = GPIO_AF5_SPI1;
// Инициализация SPI
if(SPI_Base_Init(&mySPI) != HAL_OK)
{
// Обработка ошибки
}
}
Заголовочный файл для модуля инициализации SPI.
HAL_StatusTypeDef SPI_Base_Init(SPI_SettingsTypeDef *sspi)
Инициализация SPI с помощью структуры SPI_SettingsTypeDef.
Definition general_spi.c:23
Структура настроек SPI.
GPIO_TypeDef * MOSI_GPIOx
Порт MOSI.
GPIO_TypeDef * MISO_GPIOx
Порт MISO.
uint32_t MISO_PIN
Пин MISO.
uint32_t CLK_PIN
Пин CLK.
uint32_t CLK_GPIO_AlternageFunc
Альтернативная функция для CLK.
GPIO_TypeDef * CLK_GPIOx
Порт CLK.
uint32_t MOSI_PIN
Пин MOSI.
SPI_HandleTypeDef hspi
HAL handle SPI.
uint32_t MISO_GPIO_AlternageFunc
Альтернативная функция для MISO.
uint32_t MOSI_GPIO_AlternageFunc
Альтернативная функция для MOSI.