BLE_TYQ_BJQ_CH584M/bsp/inc/bsp_uart.h

64 lines
1.6 KiB
C

/***
* @Author: mbw
* @Date: 2024-12-06 16:52:29
* @LastEditors: mbw && 1600520629@qq.com
* @LastEditTime: 2025-04-22 15:24:49
* @FilePath: \ble_-tyq_-bjq_-ch584-m\bsp\inc\bsp_uart.h
* @Description:
* @
* @Copyright (c) 2024 by ${git_name_email}, All Rights Reserved.
*/
#ifndef __BSP_UART_H__
#define __BSP_UART_H__
#include "CH58x_common.h"
#define DEVICE_TYPE_TYQ_LY
#define BT_START_EVT (0X01 << 0)
#define BT_REC_EVT (0X01 << 1)
#define BT_INFO_UPDATA_EVT (0X01 << 2)
#define BT_SEND_EVT (0X01 << 3)//
#define BT_REC_EVT_FINISH (0X01 << 4) //接收完成事件
#ifdef DEVICE_TYPE_TYQ_LY
#define UART3_RX_PIN GPIO_Pin_20 //PB20
#define UART3_TX_PIN GPIO_Pin_21 // PB21
#endif
#define BT_UART_TX_PIN GPIO_Pin_9 //PA9
#define BT_UART_RX_PIN GPIO_Pin_8 //PA8
typedef struct __attribute__((packed))
{
uint8_t cmd;
uint8_t buf[];
} BtData_t;
typedef struct __attribute__((packed))
{
uint8_t len;
uint8_t buf[256];
} BTFrameData;
extern uint8_t bt_connect_flag;
extern uint8_t BtRxTaskId;
void BSP_UART1_Init(void);
unsigned int BSP_Uart1_Receive_Data(void *buf, unsigned int len);
unsigned int BSP_Uart1_Send_Data(const void *buf, unsigned int len);
unsigned int BSP_Uart1_Send_String(const void *buf);
void BSP_Uart1_Send_Loop(void);
void BSP_Uart3_Send_Loop(void);
void BSP_UART3_Init(void);
unsigned int BSP_Uart3_Receive_Data(void *buf, unsigned int len);
unsigned int BSP_Uart3_Send_Data(const void *buf, unsigned int len);
uint8_t _CheckSum(const uint8_t *data, size_t len);
uint8_t BT_GenerateRawFrame(BTFrameData *pRawData, const uint8_t *p_src, uint8_t src_len);
#endif // !__BSP_UART_H__