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/timing_delay.c | 43 +++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 43 insertions(+), 0 deletions(-) diff --git a/mcu_sdk/stm8s003f3_edp/Libraries/STM8S_StdPeriph_Driver/src/timing_delay.c b/mcu_sdk/stm8s003f3_edp/Libraries/STM8S_StdPeriph_Driver/src/timing_delay.c new file mode 100644 index 0000000..841b6c9 --- /dev/null +++ b/mcu_sdk/stm8s003f3_edp/Libraries/STM8S_StdPeriph_Driver/src/timing_delay.c @@ -0,0 +1,43 @@ +#include "timing_delay.h" + +void delay_init(void) +{ + CLK_DeInit(); + CLK_LSICmd(ENABLE); + CLK_HSICmd(ENABLE); + while(SET != CLK_GetFlagStatus(CLK_FLAG_HSIRDY)); + + CLK_SYSCLKConfig(CLK_PRESCALER_CPUDIV1); + CLK_HSIPrescalerConfig(CLK_PRESCALER_HSIDIV1); //HSI = 16M (1��Ƶ) + + TIM4_TimeBaseInit(TIM4_PRESCALER_2, 79); + TIM4_ClearFlag(TIM4_FLAG_UPDATE); +} + +void TIMDelay_N10us(uint16_t Times) +{ + TIM4_Cmd(ENABLE); //������ʱ�� + while(Times--) + { + while(RESET == TIM4_GetFlagStatus(TIM4_FLAG_UPDATE)); + TIM4_ClearFlag(TIM4_FLAG_UPDATE); + } + TIM4_Cmd(DISABLE); //�رն�ʱ�� +} + +void TIMDelay_Nms(uint16_t Times) +{ + while(Times--) + { + TIMDelay_N10us(100); + } +} + +void TIMDelay_Ns(uint16_t Times) +{ + while(Times--) + { + TIMDelay_Nms(1000); + } +} + -- Gitblit v1.9.1