From 56d6a907e12484053abb432e664d6a8466133161 Mon Sep 17 00:00:00 2001 From: zhyinch <zhyinch@gmail.com> Date: 星期三, 02 三月 2022 18:15:44 +0800 Subject: [PATCH] 1 --- 源码/核心板/Src/OnChipDevices/Usart.h | 60 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++--- 1 files changed, 57 insertions(+), 3 deletions(-) diff --git "a/\346\272\220\347\240\201/\346\240\270\345\277\203\346\235\277/Src/OnChipDevices/Usart.h" "b/\346\272\220\347\240\201/\346\240\270\345\277\203\346\235\277/Src/OnChipDevices/Usart.h" index 0cb0059..f8d42a9 100644 --- "a/\346\272\220\347\240\201/\346\240\270\345\277\203\346\235\277/Src/OnChipDevices/Usart.h" +++ "b/\346\272\220\347\240\201/\346\240\270\345\277\203\346\235\277/Src/OnChipDevices/Usart.h" @@ -3,6 +3,12 @@ #define __USART_H__ #include "stm32f10x.h" +//#define BAUDRATE_19200 + +#define EU_485_PIN GPIO_Pin_7 +#define EU_485_GPIO GPIOB +#define OUT485_ENABLE GPIO_WriteBit(EU_485_GPIO, EU_485_PIN, Bit_SET); +#define OUT485_DISABLE GPIO_WriteBit(EU_485_GPIO, EU_485_PIN, Bit_RESET); //#define UART_GPIO_REMAP_ENABLE #ifdef UART_GPIO_REMAP_ENABLE @@ -20,13 +26,17 @@ #define EU_TX_GPIO GPIOA #endif +#ifdef BAUDRATE_19200 +#define EXUART_BAUD_RADE 19200 +#else #define EXUART_BAUD_RADE 115200 +#endif #define EUART_RX_DMA_CH DMA1_Channel5 #define EUART_TX_DMA_CH DMA1_Channel4 -#define EUART_TX_FRM_SIZE 4 //发送队列中的最大帧数 -#define EUART_TX_FRMBUF_SIZE 200 //发送队列每帧缓存大小 +#define EUART_TX_FRM_SIZE 14 //发送队列中的最大帧数 +#define EUART_TX_FRMBUF_SIZE 200 //发送 队列每帧缓存大小 #define EUART_RX_BUF_SIZE 200 //接收缓存大小 #define EXT_UART USART1 @@ -44,7 +54,51 @@ void UART_PushFrame(uint8_t* pdata, int32_t data_len); void UART_PopFrame(void); extern void (*Usart1ParseDataCallback)(uint8_t); +extern u8 cmd_mode; +#define HIDO_VOID void +typedef unsigned char HIDO_UINT8; /* 前缀u8 */ +typedef unsigned short HIDO_UINT16; /* 前缀u16 */ +typedef unsigned int HIDO_UINT32; /* 前缀u32 */ +typedef unsigned long long HIDO_UINT64; /* 前缀u64 */ +typedef signed char HIDO_INT8; /* 前缀i8 */ +typedef signed short HIDO_INT16; /* 前缀i16 */ +typedef signed int HIDO_INT32; /* 前缀i32 */ +typedef signed long long HIDO_INT64; /* 前缀i64 */ +typedef char HIDO_CHAR; /* 前缀c */ +typedef float HIDO_FLOAT; /* 前缀f */ +typedef double HIDO_DOUBLE; /* 前缀d */ +typedef struct +{ + HIDO_VOID *m_pData; + HIDO_UINT32 m_u32Len; +}HIDO_DataStruct; +typedef enum +{ + GPS_STATE_INVALID = 0, + GPS_STATE_VALID, +} E_GPSState; +typedef enum { HIDO_FALSE, HIDO_TRUE } HIDO_BOOL; /* 前缀b */ +typedef HIDO_INT32 *INT32_PTR; +typedef HIDO_UINT32 *UINT32_PTR; +typedef HIDO_DataStruct *DATA_PTR; +typedef HIDO_UINT8 **U8_PTR_PTR; - +typedef struct +{ + HIDO_UINT16 m_u16Speed; + HIDO_UINT16 m_u16Dir; //direction + HIDO_DOUBLE m_dLat; //latitude + HIDO_DOUBLE m_dLon; //longitude + E_GPSState m_eState; + HIDO_UINT16 m_u16Year; + HIDO_UINT8 m_u8Mon; //month + HIDO_UINT8 m_u8Day; + HIDO_UINT8 m_u8Hour; + HIDO_UINT8 m_u8Min; //minute + HIDO_UINT8 m_u8Sec; //second +}ST_GPS; +HIDO_UINT32 HIDO_UtilParseFormat(HIDO_UINT8 *_pu8Src, HIDO_UINT32 _u32SrcLen, const HIDO_CHAR *_pcFmt, ...); +#define HIDO_OK 0 /* 正常返回 */ +#define HIDO_ERR -1 /* 出错返回,没有明确具体出错原因的返回 */ #endif -- Gitblit v1.9.3