104 lines
2.6 KiB
C
104 lines
2.6 KiB
C
#ifndef HARDWARE_RS485_UART_H_
|
|
#define HARDWARE_RS485_UART_H_
|
|
|
|
#include "ch32v30x.h"
|
|
|
|
// #define uart4_enable
|
|
|
|
|
|
#define J1_USART UART6
|
|
#define J2_USART UART7
|
|
#define J3_USART USART2
|
|
#define J4_USART UART8
|
|
#define J5_0_USART USART3
|
|
#define Upward_USART UART5
|
|
|
|
/* 串口6 PE5 */
|
|
#define J1_DE_PROT GPIOE
|
|
#define J1_DE_PIN GPIO_Pin_5
|
|
|
|
/* 串口7 PE6 */
|
|
#define J2_DE_PROT GPIOE
|
|
#define J2_DE_PIN GPIO_Pin_6
|
|
|
|
/* 串口2 PA1 */
|
|
#define J3_DE_PROT GPIOA
|
|
#define J3_DE_PIN GPIO_Pin_1
|
|
|
|
/* 串口8 PE5 */
|
|
#define J4_DE_PROT GPIOB
|
|
#define J4_DE_PIN GPIO_Pin_0
|
|
|
|
/* 串口3 分时复用 */
|
|
/*
|
|
| A - B - C - YX |
|
|
| 0 - 0 - 0 - J0 |
|
|
| 0 - 0 - 1 - J5 |
|
|
| 0 - 1 - 0 - J6 |
|
|
| 0 - 1 - 1 - J7 |
|
|
| 1 - 0 - 0 - J8 |
|
|
| 1 - 0 - 1 - J9 |
|
|
*/
|
|
#define J5_0_DE_PROT GPIOD
|
|
#define J5_0_DE_PIN GPIO_Pin_8
|
|
#define J5_0_A_PROT GPIOD
|
|
#define J5_0_A_PIN GPIO_Pin_9
|
|
#define J5_0_B_PROT GPIOD
|
|
#define J5_0_B_PIN GPIO_Pin_10
|
|
#define J5_0_C_PROT GPIOD
|
|
#define J5_0_C_PIN GPIO_Pin_11
|
|
|
|
#define write485 Bit_SET
|
|
#define read485 Bit_RESET
|
|
|
|
/* J1_UART6 */
|
|
void J1_485_Init(uint32_t baud);
|
|
#define readJ1_485 GPIO_WriteBit(J1_DE_PROT, J1_DE_PIN, read485);
|
|
#define writeJ1_485 GPIO_WriteBit(J1_DE_PROT, J1_DE_PIN, write485);
|
|
|
|
/* J2_UART7 */
|
|
void J2_485_Init(uint32_t baud);
|
|
#define readJ2_485 GPIO_WriteBit(J2_DE_PROT, J2_DE_PIN, read485);
|
|
#define writeJ2_485 GPIO_WriteBit(J2_DE_PROT, J2_DE_PIN, write485);
|
|
|
|
/* J3_USART2 */
|
|
void J3_485_Init(uint32_t baud);
|
|
#define readJ3_485 GPIO_WriteBit(J3_DE_PROT, J3_DE_PIN, read485);
|
|
#define writeJ3_485 GPIO_WriteBit(J3_DE_PROT, J3_DE_PIN, write485);
|
|
|
|
/* J4_UART8 */
|
|
void J4_485_Init(uint32_t baud);
|
|
#define readJ4_485 GPIO_WriteBit(J4_DE_PROT, J4_DE_PIN, read485);
|
|
#define writeJ4_485 GPIO_WriteBit(J4_DE_PROT, J4_DE_PIN, write485);
|
|
|
|
/* J0-5_USART3 */
|
|
void J5_0_485_Init(uint32_t baud);
|
|
#define readJ5_0_485 GPIO_WriteBit(J5_0_DE_PROT, J5_0_DE_PIN, read485);
|
|
#define writeJ5_0_485 GPIO_WriteBit(J5_0_DE_PROT, J5_0_DE_PIN, write485);
|
|
void USART_CONNET_J0(void);
|
|
void USART_CONNET_J5(void);
|
|
void USART_CONNET_J6(void);
|
|
void USART_CONNET_J7(void);
|
|
void USART_CONNET_J8(void);
|
|
void USART_CONNET_J9(void);
|
|
|
|
#ifdef uart4_enable
|
|
/* LORA_UART4 */
|
|
void LORA_UART4_Init(uint32_t baud);
|
|
#endif
|
|
|
|
/* Upward_UART5 */
|
|
void Upward_UART5_Init(uint32_t baud);
|
|
|
|
extern void J3_Interrupt();
|
|
extern void J5_0_Interrupt();
|
|
extern void Upward_Interrupt();
|
|
extern void J1_Interrupt();
|
|
extern void J2_Interrupt();
|
|
extern void J4_Interrupt();
|
|
|
|
void USARTx_SendByte(USART_TypeDef* pUSARTx, uint8_t data);
|
|
void USARTx_SendStr_Len(USART_TypeDef* pUSARTx, char *str, int len);
|
|
|
|
#endif /* HARDWARE_RS485_UART_H_ */
|