chen
2025-02-26 acce179c49a6a9c625e9402e6f9046d1325ffcea
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
 
#ifndef __USART_H__
#define __USART_H__
 
//#include "main.h"
#include "stdint.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
    #define UART_GPIO_REMAP            GPIO_Remap_USART1
    #define EU_RCC_GPIO                RCC_APB2Periph_GPIOB
    #define EU_TX_PIN                GPIO_Pin_6
    #define EU_RX_PIN                GPIO_Pin_7
    #define EU_RX_GPIO                GPIOB
    #define EU_TX_GPIO                GPIOB
#else
    #define EU_RCC_GPIO                RCC_APB2Periph_GPIOA
    #define EU_TX_PIN                GPIO_PIN9
    #define EU_RX_PIN                GPIO_PIN_10
    #define EU_RX_GPIO                GPIOA
    #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_Channel3
#define EUART_TX_DMA_CH            DMA1_Channel2
 
#define EUART_TX_FRM_SIZE        2                //·¢ËͶÓÁÐÖеÄ×î´óÖ¡Êý
#define EUART_TX_FRMBUF_SIZE    100        //·¢ËͶÓÁÐÿ֡»º´æ´óС
#define EUART_RX_BUF_SIZE        1024                //½ÓÊÕ»º´æ´óС
 
#define EXT_UART                USART1
#define EXT_UART_RCC            RCC_APB2Periph_USART1
 
typedef struct _EUART_Frame {                    //Êý¾Ý·¢ËÍÖ¡¶ÓÁнṹÌå
    int32_t len;                                //Ö¡³¤¶È
    uint8_t buf[EUART_TX_FRMBUF_SIZE];            //Ö¡Êý¾Ý
} EUART_Frame;
 
void Uart1_Init(void);
 
void UART_CheckReceive(void);
void UART_CheckSend(void);
void UART_PushFrame(uint8_t* pdata, int32_t data_len);
void UART_PopFrame(void);
extern void (*Usart1ParseDataCallback)(uint8_t);
 
 
#define USART_TX_BUF_SIZE    50                //·¢ËÍ»º´æ´óС
#define USART_RX_BUF_SIZE    100                //½ÓÊÕ»º´æ´óС
extern uint8_t m_EUART_DMA_RXBuf[EUART_RX_BUF_SIZE];    
extern uint8_t USART_DMA_RXBuf[USART_RX_BUF_SIZE];            //USART2 DMAÊý¾Ý½ÓÊÕ»º´æ
 
//void Uart2_SendString(  uint8_t *str);
//extern  void Uart2_SendString(  uint8_t *str);
 
//void Uart2_SendStr_length( uint8_t *str,uint32_t strlen );
//extern void Uart2_SendStr_length( uint8_t *str,uint32_t strlen );
 
 
 
 
 
#endif