generated from Template/H563ZI-HAL-CMake-Template
55 lines
998 B
C
55 lines
998 B
C
#ifndef __HCBLE_H
|
|
#define __HCBLE_H
|
|
|
|
#include "headfile.h"
|
|
//#define DEBUG_EN 1 //不定义时候 使用DMA 定义了使用 阻塞式
|
|
#define RX_DataSize 128
|
|
#define RING_BUFFER_SIZE 256
|
|
#define UART_DMA_RX_BUF_SIZE 20
|
|
|
|
|
|
// HCBle 相关数据定义
|
|
typedef struct
|
|
{
|
|
int LeftSpeed;
|
|
int RightSpeed;
|
|
}MotorCommand;
|
|
|
|
typedef struct
|
|
{
|
|
float lat;
|
|
float lon;
|
|
float angle;
|
|
}LocationData;
|
|
|
|
typedef struct
|
|
{
|
|
uint8_t buffer[RING_BUFFER_SIZE];
|
|
volatile uint16_t head; // 头指针
|
|
volatile uint16_t tail; // 尾指针
|
|
}RingBuffer;
|
|
|
|
|
|
typedef struct
|
|
{
|
|
float lat;
|
|
float lon;
|
|
float angle;
|
|
}BleMessage;
|
|
|
|
extern uint8_t rx_data;
|
|
extern RingBuffer ble_rx_ring; //初始化
|
|
extern uint8_t uart_dma_rx_buf[UART_DMA_RX_BUF_SIZE];
|
|
extern BleMessage current_location;
|
|
|
|
extern uint8_t flag;
|
|
|
|
void HCBle_SendData(char *p,...);
|
|
void HCBle_InitDMAReception(void);
|
|
void HCBle_ExtractAndParseFrame(void);
|
|
|
|
void ble_rx_task_entry(ULONG thread_input);
|
|
void ble_tx_task_entry(ULONG thread_input);
|
|
void HCBle_InitEventFlags(void);
|
|
|
|
#endif |