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/src/stm8s_iwdg.c | 108 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 108 insertions(+), 0 deletions(-) diff --git a/mcu_sdk/stm8s003f3_edp/Libraries/STM8S_StdPeriph_Driver/src/stm8s_iwdg.c b/mcu_sdk/stm8s003f3_edp/Libraries/STM8S_StdPeriph_Driver/src/stm8s_iwdg.c new file mode 100644 index 0000000..ab4c58b --- /dev/null +++ b/mcu_sdk/stm8s003f3_edp/Libraries/STM8S_StdPeriph_Driver/src/stm8s_iwdg.c @@ -0,0 +1,108 @@ +/** + ******************************************************************************** + * @file stm8s_iwdg.c + * @author MCD Application Team + * @version V2.3.0 + * @date 16-June-2017 + * @brief This file contains all the functions for the IWDG 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. + * + ****************************************************************************** + */ + +/* Includes ------------------------------------------------------------------*/ +#include "stm8s_iwdg.h" + +/* Private define ------------------------------------------------------------*/ +/* Private macro -------------------------------------------------------------*/ +/* Private variables ---------------------------------------------------------*/ +/* Private function prototypes -----------------------------------------------*/ +/* Private functions ---------------------------------------------------------*/ +/* Public functions ----------------------------------------------------------*/ + +/** @addtogroup IWDG_Public_Functions + * @{ + */ + +/** + * @brief Enables or disables write access to Prescaler and Reload registers. + * @param IWDG_WriteAccess : New state of write access to Prescaler and Reload + * registers. This parameter can be a value of @ref IWDG_WriteAccess_TypeDef. + * @retval None + */ +void IWDG_WriteAccessCmd(IWDG_WriteAccess_TypeDef IWDG_WriteAccess) +{ + /* Check the parameters */ + assert_param(IS_IWDG_WRITEACCESS_MODE_OK(IWDG_WriteAccess)); + + IWDG->KR = (uint8_t)IWDG_WriteAccess; /* Write Access */ +} + +/** + * @brief Sets IWDG Prescaler value. + * @note Write access should be enabled + * @param IWDG_Prescaler : Specifies the IWDG Prescaler value. + * This parameter can be a value of @ref IWDG_Prescaler_TypeDef. + * @retval None + */ +void IWDG_SetPrescaler(IWDG_Prescaler_TypeDef IWDG_Prescaler) +{ + /* Check the parameters */ + assert_param(IS_IWDG_PRESCALER_OK(IWDG_Prescaler)); + + IWDG->PR = (uint8_t)IWDG_Prescaler; +} + +/** + * @brief Sets IWDG Reload value. + * @note Write access should be enabled + * @param IWDG_Reload : Reload register value. + * This parameter must be a number between 0 and 0xFF. + * @retval None + */ +void IWDG_SetReload(uint8_t IWDG_Reload) +{ + IWDG->RLR = IWDG_Reload; +} + +/** + * @brief Reloads IWDG counter + * @note Write access should be enabled + * @param None + * @retval None + */ +void IWDG_ReloadCounter(void) +{ + IWDG->KR = IWDG_KEY_REFRESH; +} + +/** + * @brief Enables IWDG. + * @param None + * @retval None + */ +void IWDG_Enable(void) +{ + IWDG->KR = IWDG_KEY_ENABLE; +} + +/** + * @} + */ + +/************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/ -- Gitblit v1.9.1