42.6.1.5 LCD Frame Frequency

The LCD frame frequency is defined as the number of times the segments are energized per second. The optimal frame frequency should be in range from 30Hz up to 100Hz to avoid flickering and ghosting effect.

The 32KHz oscillator clock (CLK_SLCD_OSC) is the base clock to define the LCD frame frequency (or frame rate) which in turn depends on the Duty Ratio bits in the Control A register (CTRLA.DUTY[2:0]). CLK_SLCD_OSC is used to generate the LCD waveform data for the enabled phases.

CLK_SLCD_OSC is first divided by a prescaler PVAL=16..128, then divided by DIV=1..8: The prescaler value PVAL is selected by writing the Prescaler bits in the Control A register (CTRLA.PRESC[1:0]), see table below.

Table 42-3. Prescaler Selection
PRESC[1:0] Prescaler Value (PVAL)
0x0 16
0x1 32
0x2 64
0x3 128

The clock division factor DIV is selected by the Clock Divider bits CTRLA.CKDIV[2:0]. The division factor is DIV=CKDIV[2:0]+1. The duty ratio NB_COM is selected by writing to the Duty Ratio bits in the Control A register (CTRLA.DUTY).

The resulting frame rate is calculated according to this formula:

FrameRate = f ( CLK_SLCD_OSC ) PVAL × DIV × NB_COM
Table 42-4. Examples of Frame Rates for f(CLK_SLCD_OSC) = 32768Hz
Prescaler Value (PVAL) CKDIV[2:0] DIV NB_COM Frame Rate
128 0x7 8 1 32 Hz
128 0x2 3 1 85.3 Hz
64 0x7 8 2 32 Hz
64 0x2 3 2 85.3 Hz
64 0x4 5 3 34.1 Hz
32 0x3 4 3 85.3 Hz
32 0x7 8 4 32 Hz
32 0x2 3 4 85.3 Hz
32 0x4 5 6 34.1 Hz
16 0x3 4 6 85.3 Hz
16 0x7 8 8 32 Hz
16 0x2 3 8 85.3 Hz