summaryrefslogtreecommitdiff
path: root/src/stm/ao_lcd_stm.c
diff options
context:
space:
mode:
authorKeith Packard <keithp@keithp.com>2012-06-21 09:39:10 -0700
committerKeith Packard <keithp@keithp.com>2012-06-21 09:39:10 -0700
commit419a801131c1034f1fa149a67850290431cbda72 (patch)
tree3b89e21a030d5ee8f6ed3be07c850bea53847c7e /src/stm/ao_lcd_stm.c
parent611f37607fadcdc9908d67456f844a452ad4a87a (diff)
altos: Configure STM LCD driver for giant LCD digits
These devices require static mode. Signed-off-by: Keith Packard <keithp@keithp.com>
Diffstat (limited to 'src/stm/ao_lcd_stm.c')
-rw-r--r--src/stm/ao_lcd_stm.c12
1 files changed, 8 insertions, 4 deletions
diff --git a/src/stm/ao_lcd_stm.c b/src/stm/ao_lcd_stm.c
index f68cf165..b1909444 100644
--- a/src/stm/ao_lcd_stm.c
+++ b/src/stm/ao_lcd_stm.c
@@ -328,10 +328,14 @@ ao_lcd_stm_init(void)
}
}
+ /* Disable the LCD */
+ stm_lcd.cr = 0;
+
/* duty cycle 1/3, radio 352, frame rate about 33Hz */
- stm_lcd.fcr = ((STM_LCD_FCR_PS_1 << STM_LCD_FCR_PS) |
- (STM_LCD_FCR_DIV_31 << STM_LCD_FCR_DIV) |
+ stm_lcd.fcr = ((STM_LCD_FCR_PS_16 << STM_LCD_FCR_PS) |
+ (STM_LCD_FCR_DIV_20 << STM_LCD_FCR_DIV) |
(4 << STM_LCD_FCR_CC) |
+ (0 << STM_LCD_FCR_DEAD) |
(4 << STM_LCD_FCR_PON) |
(0 << STM_LCD_FCR_UDDIE) |
(0 << STM_LCD_FCR_SOFIE) |
@@ -343,8 +347,8 @@ ao_lcd_stm_init(void)
/* Program desired BIAS in LCD_CR */
/* Enable mux seg */
/* Internal voltage source */
- stm_lcd.cr = ((STM_LCD_CR_DUTY_1_4 << STM_LCD_CR_DUTY) |
- (STM_LCD_CR_BIAS_1_3 << STM_LCD_CR_BIAS) |
+ stm_lcd.cr = ((STM_LCD_CR_DUTY_STATIC << STM_LCD_CR_DUTY) |
+ (STM_LCD_CR_BIAS_1_2 << STM_LCD_CR_BIAS) |
(0 << STM_LCD_CR_VSEL) |
(1 << STM_LCD_CR_MUX_SEG));