#include "board.h" uart_t *uart = NULL; static void uart_rx_cb(uint8_t uart_index, uint8_t *data, uint16_t len) { } static void uart_init(void) { if (uart == NULL) { uart = uart_create(USART1, TRUE, UART_RXSIZE, uart_rx_cb, TRUE, UART_TXSIZE, NULL); uart->uart_index = 0; uart->dma = DMA1; uart->dma_rx_channel = LL_DMA_CHANNEL_5; uart->dma_tx_channel = LL_DMA_CHANNEL_4; uart_recv_en(uart, FALSE); } } /** * @brief 通过UART发送数据 * * 该函数通过UART接口发送指定长度的数据。 * * @param data 指向要发送数据的指针 * @param len 要发送的数据长度 */ void uart_send(uint8_t *data, uint16_t len) { uart_send_data(uart, data, len); } /** * @brief 初始化显示板 * */ void board_init(void) { uart_init(); ssd1306_init(); { GPIO_SET(TMC2240_EN_GPIO_Port, TMC2240_EN_Pin); delay_ms(100); spi_gpio_group_t gpios; gpios.cs = gpio_create(TMC2240_CS_GPIO_Port, TMC2240_CS_Pin); gpios.mosi = gpio_create(TMC2240_MOSI_GPIO_Port, TMC2240_MOSI_Pin); gpios.sck = gpio_create(TMC2240_SCK_GPIO_Port, TMC2240_SCK_Pin); gpios.miso = gpio_create(TMC2240_MISO_GPIO_Port, TMC2240_MISO_Pin); gpios.rst = gpio_create(NULL, 0); gpios.rdy = gpio_create(NULL, 0); tmc2240_init(TMC2240_1, SPI1, &gpios); } }