标题: 关于STM8L LCD帧频率问题 [打印本页]

作者: li1069136863    时间: 2024-7-18 18:30
标题: 关于STM8L LCD帧频率问题
1.按照公式fck_div=fLCDCLK/2的PS次方×(16+DIV);Fframe=fck_div x duty;


FLCDCLK=32.768Khz
网上代码:
  /*    The LCD is configured as follow:     
- clock source = LSE (32.768 KHz)   
- Voltage source = Internal     
- Prescaler = 2     
- Divider = 18 (16 + 2)      
- Mode = 1/4 Duty, 1/3 Bias     
- LCD frequency = (clock source * Duty) / (Prescaler * Divider)  = 228 Hz ==> Frame frequency = 57 Hz */
/* Initialize the LCD */
LCD_Init(LCD_Prescaler_2, LCD_Divider_18, LCD_Duty_1_4, LCD_Bias_1_3, LCD_VoltageSource_Internal);
此时PS=2,16+DIV=18代入公式:Fframe=32768/(4*18)*(1/4)=114HZ才对吧,这个57HZ是怎么算出来的?

作者: 飞云居士    时间: 2024-7-23 09:44
我们来分析这段代码中给出的参数:  时钟源(Clock source):LSE,32.768 kHz 电压源(Voltage source):内部(Internal) 预分频器(Prescaler):2 分频器(Divider):16 + 2 = 18 占空比(Duty):1/4 偏置(Bias):1/3 根据代码中的公式: LCD frequency = ( clock source × Duty ) / ( Prescaler × Divider ) LCD frequency=(clock source×Duty)/(Prescaler×Divider)  我们来逐步计算:  时钟源频率:32.768 kHz 占空比:1/4 预分频器:2 分频器:18 将这些值代入公式中,我们得到: LCD frequency = ( 32.768 × 1 0 3 × 1 4 ) / ( 2 × 18 ) LCD frequency=(32.768×10  3  ×  4 1 ​  )/(2×18) LCD frequency = ( 8192 ) / ( 36 ) LCD frequency=(8192)/(36) LCD frequency = 228  Hz LCD frequency=228 Hz  这里,LCD频率是每秒钟的刷新次数,而帧频率(Frame frequency)是每秒钟可以显示的完整帧数。由于占空比是1/4,意味着每个周期内只有1/4的时间是有效的显示时间,因此帧频率是LCD频率的1/4。  所以,帧频率应该是: Frame frequency = 228  Hz / 4 Frame frequency=228 Hz/4 Frame frequency = 57  Hz Frame frequency=57 Hz  这就是57 Hz帧频率的计算过程。看起来代码中的注释部分是正确的,而你的计算似乎是在帧频率的计算上出现了误解。实际上,注释中的计算是正确的,57 Hz是正确的帧频率。




欢迎光临 (http://www.51hei.com/bbs/) Powered by Discuz! X3.1