From 94101a2cd9baed60360f68096033dc75cbb1dcb3 Mon Sep 17 00:00:00 2001
From: android <android@lingyun.com>
Date: Wed, 10 Jul 2024 19:27:36 +0800
Subject: [PATCH] Add STM8S003F3 eDP LCD drvier
---
mcu_sdk/stm8s003f3_edp/Libraries/STM8S_StdPeriph_Driver/inc/stm8s_gpio.h | 156 ++++++++++++++++++++++++++++++++++++++++++++++++++++
1 files changed, 156 insertions(+), 0 deletions(-)
diff --git a/mcu_sdk/stm8s003f3_edp/Libraries/STM8S_StdPeriph_Driver/inc/stm8s_gpio.h b/mcu_sdk/stm8s003f3_edp/Libraries/STM8S_StdPeriph_Driver/inc/stm8s_gpio.h
new file mode 100644
index 0000000..2afde41
--- /dev/null
+++ b/mcu_sdk/stm8s003f3_edp/Libraries/STM8S_StdPeriph_Driver/inc/stm8s_gpio.h
@@ -0,0 +1,156 @@
+/**
+ ******************************************************************************
+ * @file stm8s_gpio.h
+ * @author MCD Application Team
+ * @version V2.3.0
+ * @date 16-June-2017
+ * @brief This file contains all functions prototype and macros for the GPIO peripheral.
+ ******************************************************************************
+ * @attention
+ *
+ * <h2><center>© COPYRIGHT 2014 STMicroelectronics</center></h2>
+ *
+ * Licensed under MCD-ST Liberty SW License Agreement V2, (the "License");
+ * You may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at:
+ *
+ * http://www.st.com/software_license_agreement_liberty_v2
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ ******************************************************************************
+ */
+
+/* Define to prevent recursive inclusion -------------------------------------*/
+#ifndef __STM8S_GPIO_H
+#define __STM8S_GPIO_H
+
+/* Includes ------------------------------------------------------------------*/
+#include "stm8s.h"
+
+/* Exported variables ------------------------------------------------------- */
+/* Exported types ------------------------------------------------------------*/
+
+/** @addtogroup GPIO_Exported_Types
+ * @{
+ */
+
+/**
+ * @brief GPIO modes
+ *
+ * Bits definitions:
+ * - Bit 7: 0 = INPUT mode
+ * 1 = OUTPUT mode
+ * 1 = PULL-UP (input) or PUSH-PULL (output)
+ * - Bit 5: 0 = No external interrupt (input) or No slope control (output)
+ * 1 = External interrupt (input) or Slow control enabled (output)
+ * - Bit 4: 0 = Low level (output)
+ * 1 = High level (output push-pull) or HI-Z (output open-drain)
+ */
+typedef enum
+{
+ GPIO_MODE_IN_FL_NO_IT = (uint8_t)0x00, /*!< Input floating, no external interrupt */
+ GPIO_MODE_IN_PU_NO_IT = (uint8_t)0x40, /*!< Input pull-up, no external interrupt */
+ GPIO_MODE_IN_FL_IT = (uint8_t)0x20, /*!< Input floating, external interrupt */
+ GPIO_MODE_IN_PU_IT = (uint8_t)0x60, /*!< Input pull-up, external interrupt */
+ GPIO_MODE_OUT_OD_LOW_FAST = (uint8_t)0xA0, /*!< Output open-drain, low level, 10MHz */
+ GPIO_MODE_OUT_PP_LOW_FAST = (uint8_t)0xE0, /*!< Output push-pull, low level, 10MHz */
+ GPIO_MODE_OUT_OD_LOW_SLOW = (uint8_t)0x80, /*!< Output open-drain, low level, 2MHz */
+ GPIO_MODE_OUT_PP_LOW_SLOW = (uint8_t)0xC0, /*!< Output push-pull, low level, 2MHz */
+ GPIO_MODE_OUT_OD_HIZ_FAST = (uint8_t)0xB0, /*!< Output open-drain, high-impedance level,10MHz */
+ GPIO_MODE_OUT_PP_HIGH_FAST = (uint8_t)0xF0, /*!< Output push-pull, high level, 10MHz */
+ GPIO_MODE_OUT_OD_HIZ_SLOW = (uint8_t)0x90, /*!< Output open-drain, high-impedance level, 2MHz */
+ GPIO_MODE_OUT_PP_HIGH_SLOW = (uint8_t)0xD0 /*!< Output push-pull, high level, 2MHz */
+}GPIO_Mode_TypeDef;
+
+/**
+ * @brief Definition of the GPIO pins. Used by the @ref GPIO_Init function in
+ * order to select the pins to be initialized.
+ */
+
+typedef enum
+{
+ GPIO_PIN_0 = ((uint8_t)0x01), /*!< Pin 0 selected */
+ GPIO_PIN_1 = ((uint8_t)0x02), /*!< Pin 1 selected */
+ GPIO_PIN_2 = ((uint8_t)0x04), /*!< Pin 2 selected */
+ GPIO_PIN_3 = ((uint8_t)0x08), /*!< Pin 3 selected */
+ GPIO_PIN_4 = ((uint8_t)0x10), /*!< Pin 4 selected */
+ GPIO_PIN_5 = ((uint8_t)0x20), /*!< Pin 5 selected */
+ GPIO_PIN_6 = ((uint8_t)0x40), /*!< Pin 6 selected */
+ GPIO_PIN_7 = ((uint8_t)0x80), /*!< Pin 7 selected */
+ GPIO_PIN_LNIB = ((uint8_t)0x0F), /*!< Low nibble pins selected */
+ GPIO_PIN_HNIB = ((uint8_t)0xF0), /*!< High nibble pins selected */
+ GPIO_PIN_ALL = ((uint8_t)0xFF) /*!< All pins selected */
+}GPIO_Pin_TypeDef;
+
+/**
+ * @}
+ */
+
+/* Exported constants --------------------------------------------------------*/
+/* Exported macros -----------------------------------------------------------*/
+/* Private macros ------------------------------------------------------------*/
+
+/** @addtogroup GPIO_Private_Macros
+ * @{
+ */
+
+/**
+ * @brief Macro used by the assert function to check the different functions parameters.
+ */
+
+/**
+ * @brief Macro used by the assert function in order to check the different
+ * values of GPIOMode_TypeDef.
+ */
+#define IS_GPIO_MODE_OK(MODE) \
+ (((MODE) == GPIO_MODE_IN_FL_NO_IT) || \
+ ((MODE) == GPIO_MODE_IN_PU_NO_IT) || \
+ ((MODE) == GPIO_MODE_IN_FL_IT) || \
+ ((MODE) == GPIO_MODE_IN_PU_IT) || \
+ ((MODE) == GPIO_MODE_OUT_OD_LOW_FAST) || \
+ ((MODE) == GPIO_MODE_OUT_PP_LOW_FAST) || \
+ ((MODE) == GPIO_MODE_OUT_OD_LOW_SLOW) || \
+ ((MODE) == GPIO_MODE_OUT_PP_LOW_SLOW) || \
+ ((MODE) == GPIO_MODE_OUT_OD_HIZ_FAST) || \
+ ((MODE) == GPIO_MODE_OUT_PP_HIGH_FAST) || \
+ ((MODE) == GPIO_MODE_OUT_OD_HIZ_SLOW) || \
+ ((MODE) == GPIO_MODE_OUT_PP_HIGH_SLOW))
+
+/**
+ * @brief Macro used by the assert function in order to check the different
+ * values of GPIO_Pins.
+ */
+#define IS_GPIO_PIN_OK(PIN) ((PIN) != (uint8_t)0x00)
+
+/**
+ * @}
+ */
+
+/* Exported functions ------------------------------------------------------- */
+/** @addtogroup GPIO_Exported_Functions
+ * @{
+ */
+
+void GPIO_DeInit(GPIO_TypeDef* GPIOx);
+void GPIO_Init(GPIO_TypeDef* GPIOx, GPIO_Pin_TypeDef GPIO_Pin, GPIO_Mode_TypeDef GPIO_Mode);
+void GPIO_Write(GPIO_TypeDef* GPIOx, uint8_t PortVal);
+void GPIO_WriteHigh(GPIO_TypeDef* GPIOx, GPIO_Pin_TypeDef PortPins);
+void GPIO_WriteLow(GPIO_TypeDef* GPIOx, GPIO_Pin_TypeDef PortPins);
+void GPIO_WriteReverse(GPIO_TypeDef* GPIOx, GPIO_Pin_TypeDef PortPins);
+uint8_t GPIO_ReadInputData(GPIO_TypeDef* GPIOx);
+uint8_t GPIO_ReadOutputData(GPIO_TypeDef* GPIOx);
+BitStatus GPIO_ReadInputPin(GPIO_TypeDef* GPIOx, GPIO_Pin_TypeDef GPIO_Pin);
+void GPIO_ExternalPullUpConfig(GPIO_TypeDef* GPIOx, GPIO_Pin_TypeDef GPIO_Pin, FunctionalState NewState);
+/**
+ * @}
+ */
+
+#endif /* __STM8L_GPIO_H */
+
+
+/************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/
--
Gitblit v1.9.1