| 1234567891011121314151617181920212223242526272829303132333435363738394041 |
- #ifndef __WS1812B_SPI_H_
- #define __WS1812B_SPI_H_
- #ifdef __cplusplus
- extern "C" {
- #endif
- #include <stdio.h>
- #include <stdlib.h>
- #include "define.h"
- #define USER_WS2812B_GPIO_RCC_ENABLE RCC_APB2PeriphClockCmd(RCC_APB2Periph_AFIO | RCC_APB2Periph_GPIOB, ENABLE);
- #define USER_WS2812B_SPI_RCC_ENABLE RCC_APB2PeriphClockCmd(RCC_APB2Periph_SPI1, ENABLE);
- #define USER_WS2812B_DMA_RCC_ENABLE RCC_AHBPeriphClockCmd(RCC_AHBPeriph_DMA1, ENABLE);
- #define USER_WS2812B_SPI_REMAP_ENABLE GPIO_PinRemapConfig(GPIO_Remap_SPI1, ENABLE);
- #define USER_WS2812B_SPI SPI1
- #define USER_WS2812B_DMA_CHANNEL DMA1_Channel3
- #define USER_WS2812B_DMA_IRQn DMA1_Channel3_IRQn
- #define USER_WS2812B_DMA_IRQHandler DMA1_Channel3_IRQHandler
- #define USER_WS2812B_DMA_IT_TC DMA1_IT_TC3
- #define USER_WS2812B_SPI_MOSI_GPIO GPIOB
- #define USER_WS2812B_SPI_MOSI_PIN GPIO_Pin_5
- #define USER_WS2812B_SPI_SCLK_GPIO GPIOB
- #define USER_WS2812B_SPI_SCLK_PIN GPIO_Pin_3
- void ws2812b_spi_Init(void);
- bool bWs2812b_spi_WriteByte(volatile uint8_t *TxData, uint32_t TxSize);
- void Ws2812b_spi_dma_init(uint8_t *txData, uint32_t txSize);
- #ifdef __cplusplus
- }
- #endif
- #endif /* __WS1812B_SPI_H_ */
|