From aa38e5c1f48e31213ee349aa5cd6f06c85bda70d Mon Sep 17 00:00:00 2001
From: android <android@lingyun.com>
Date: Tue, 25 Jun 2024 21:49:39 +0800
Subject: [PATCH] Add GD32F103RCT6 ADC converter board SDK source code
---
mcu_sdk/gd32f103/rk_eFire/System/Inc/usart.h | 113 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++
1 files changed, 113 insertions(+), 0 deletions(-)
diff --git a/mcu_sdk/gd32f103/rk_eFire/System/Inc/usart.h b/mcu_sdk/gd32f103/rk_eFire/System/Inc/usart.h
new file mode 100644
index 0000000..5f43853
--- /dev/null
+++ b/mcu_sdk/gd32f103/rk_eFire/System/Inc/usart.h
@@ -0,0 +1,113 @@
+/**
+ ******************************************************************************
+ * File Name : USART.h
+ * Description : This file provides code for the configuration
+ * of the USART instances.
+ ******************************************************************************
+ * @attention
+ *
+ * <h2><center>© Copyright (c) 2021 STMicroelectronics.
+ * All rights reserved.</center></h2>
+ *
+ * This software component is licensed by ST under Ultimate Liberty license
+ * SLA0044, the "License"; You may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at:
+ * www.st.com/SLA0044
+ *
+ ******************************************************************************
+ */
+/* Define to prevent recursive inclusion -------------------------------------*/
+#ifndef __usart_H
+#define __usart_H
+#ifdef __cplusplus
+ extern "C" {
+#endif
+
+/* Includes ------------------------------------------------------------------*/
+#include "main.h"
+
+typedef enum
+{
+ RS485_RECV = 0,
+ RS485_SEND
+}RS485DirCtrl_e;
+
+#define RS485_DIR_PORT GPIOA
+#define RS485_DIR_PIN GPIO_PIN_1
+/* RS485 TX/RX Control */
+#define RS485_TX_ENABLE() HAL_Delay(100);\
+ HAL_GPIO_WritePin(RS485_DIR_PORT, RS485_DIR_PIN, GPIO_PIN_SET);\
+ HAL_Delay(100);
+
+#define RS485_RX_ENABLE() HAL_Delay(100);\
+ HAL_GPIO_WritePin(RS485_DIR_PORT, RS485_DIR_PIN, GPIO_PIN_RESET);\
+ HAL_Delay(100);
+
+#define PRINTF(...) VcomSend(__VA_ARGS__)
+#define ECHO_ERROR(x) PRINTF("[%s][%d]:%s\r\n", __FUNCTION__, __LINE__, x)
+
+#pragma pack(1)
+
+#define FreeUart1Buffer() Debug_Rxbuffer.Locked = 0; Debug_Rxbuffer.RxSize=0
+#define Uart1BufferIsEmpty (Debug_Rxbuffer.RxSize == 0 ? 1 : 0)
+#define Uart1BufferIsReadable() (Debug_Rxbuffer.Locked ? 1 : 0)
+
+//#define LockUart3Buffer() Uart3_Rxbuffer.Locked = 1
+//#define FreeUart3Buffer() Uart3_Rxbuffer.Locked = 0; Uart3_Rxbuffer.RxSize=0; memset(Uart3_Rxbuffer.RxBuffer, 0x0, UART_RINGBUF_SIZE)
+//#define Uart3BufferIsEmpty (Uart3_Rxbuffer.RxSize == 0 ? 1 : 0)
+//#define Uart3BufferIsReadable() (Uart3_Rxbuffer.Locked ? 1 : 0)
+
+#define UART_RINGBUF_SIZE 255
+typedef struct Uart_Rxbuffer_s
+{
+ uint8_t RxBuffer[UART_RINGBUF_SIZE]; /* UART receive buffer*/
+ uint32_t RxSize; /* Current data length in UART receive buffer */
+ uint32_t Time; /* Last receive time */
+ uint8_t Locked; /* Buffer is busy */
+}Uart_Rxbuffer_t;
+
+typedef struct
+{
+ uint8_t *pRear; //���жϺ����и���
+ uint8_t *pFront; //����ѭ���и���
+} UartBuffer_t;
+
+#pragma pack()
+
+extern Uart_Rxbuffer_t Debug_Rxbuffer;
+//extern Uart_Rxbuffer_t Uart3_Rxbuffer;
+
+extern UART_HandleTypeDef huart1;
+extern UART_HandleTypeDef huart2;
+
+void Board_USART1Init(void);
+void Board_USART1DeInit(void);
+void Board_USART1RX_Enable(void);
+void Board_USART1RX_Disable(void);
+
+void Board_USART2Init(void);
+void Board_USART2DeInit(void);
+int8_t Board_USART2Recv(uint8_t *pFmt, uint16_t u16TimeOut);
+int8_t Board_USART2end(const uint8_t *pFmt, uint8_t u8Len);
+
+//int8_t Board_USART2Test(void);
+
+
+
+void VcomSend( char *format, ... );
+
+
+#ifdef __cplusplus
+}
+#endif
+#endif /*__ usart_H */
+
+/**
+ * @}
+ */
+
+/**
+ * @}
+ */
+
+/************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/
--
Gitblit v1.9.1