X-Git-Url: https://codewiz.org/gitweb?a=blobdiff_plain;f=drv%2Flcd_gfx.c;h=6031ca51c4c9fe7564428251c00f81d7f29ad4ac;hb=9c6545aacf8bb77445e7c19e41117d2318d752cc;hp=f2530298e6266c1e8920caed409bdd31f092c1ef;hpb=d7121b91d1c39488a572b732821333c72bc24137;p=bertos.git diff --git a/drv/lcd_gfx.c b/drv/lcd_gfx.c old mode 100755 new mode 100644 index f2530298..6031ca51 --- a/drv/lcd_gfx.c +++ b/drv/lcd_gfx.c @@ -1,9 +1,34 @@ /** * \file * * * \version $Id$ @@ -16,6 +41,12 @@ /*#* *#* $Log$ + *#* Revision 1.5 2006/07/19 12:56:25 bernie + *#* Convert to new Doxygen style. + *#* + *#* Revision 1.4 2006/04/27 05:40:11 bernie + *#* Naming convention fixes; Partial merge from project_grl. + *#* *#* Revision 1.3 2006/02/10 12:35:31 bernie *#* Enforce CONFIG_* definitions. *#* @@ -31,7 +62,7 @@ #include #include -#include +#include #include #include /* BV() */ #include @@ -51,18 +82,18 @@ #if CONFIG_LCD_SOFTINT_REFRESH - /*! Interval between softint driven lcd refresh */ + /** Interval between softint driven lcd refresh */ # define LCD_REFRESH_INTERVAL 20 /* 20ms -> 50fps */ #endif /* CONFIG_LCD_SOFTINT_REFRESH */ -/*! Number of LCD pages */ +/** Number of LCD pages */ #define LCD_PAGES 4 -/*! Width of an LCD page */ +/** Width of an LCD page */ #define LCD_PAGESIZE (LCD_WIDTH / 2) -/*! +/** * \name LCD I/O pins/ports * @{ */ @@ -80,7 +111,7 @@ #define LCD_PE_E2 PE6 /*@}*/ -/*! +/** * \name DB high nibble (DB[4-7]) * @{ */ @@ -91,7 +122,7 @@ #define LCD_DATA_HI_MASK 0xF0 /*@}*/ -/*! +/** * \name DB low nibble (DB[0-3]) * @{ */ @@ -102,7 +133,7 @@ #define LCD_DATA_LO_MASK 0xF0 /*@}*/ -/*! +/** * \name LCD bus control macros * @{ */ @@ -118,7 +149,7 @@ #define LCD_CLR_E(x) (PORTE &= ~(x)) /*@}*/ -/*! +/** * \name Chip select bits for LCD_SET_E() * @{ */ @@ -126,41 +157,41 @@ #define LCDF_E2 (BV(LCD_PE_E2)) /*@}*/ -/*! Read from the LCD data bus (DB[0-7]) */ +/** Read from the LCD data bus (DB[0-7]) */ #define LCD_READ ( \ ((LCD_DATA_LO_PIN & LCD_DATA_LO_MASK) >> LCD_DATA_LO_SHIFT) | \ ((LCD_DATA_HI_PIN & LCD_DATA_HI_MASK) >> LCD_DATA_HI_SHIFT) \ ) -/*! Write to the LCD data bus (DB[0-7]) */ +/** Write to the LCD data bus (DB[0-7]) */ #define LCD_WRITE(d) \ do { \ LCD_DATA_LO_PORT = (LCD_DATA_LO_PORT & ~LCD_DATA_LO_MASK) | (((d)<= LCD_MIN_PWM); ASSERT(duty <= LCD_MAX_PWM); @@ -387,7 +421,7 @@ static void lcd_clear(void) } -static void lcd_writeraster(const uint8_t *raster) +static void lcd_writeRaster(const uint8_t *raster) { uint8_t page, rows; const uint8_t *right_raster; @@ -413,16 +447,19 @@ static void lcd_writeraster(const uint8_t *raster) } } - -void lcd_blit_bitmap(Bitmap *bm) +/** + * Update the LCD display with data from the provided bitmap. + */ +void lcd_blitBitmap(Bitmap *bm) { - lcd_writeraster(bm->raster); + MOD_CHECK(lcd); + lcd_writeRaster(bm->raster); } #if CONFIG_LCD_SOFTINT_REFRESH -static void lcd_refresh_softint(void) +static void lcd_refreshSoftint(void) { lcd_blit_bitmap(&lcd_bitmap); timer_add(lcd_refresh_timer); @@ -431,7 +468,7 @@ static void lcd_refresh_softint(void) #endif /* CONFIG_LCD_SOFTINT_REFRESH */ -/*! +/** * Initialize LCD subsystem. * * \note The PWM used for LCD contrast is initialized in drv/pwm.c @@ -439,6 +476,8 @@ static void lcd_refresh_softint(void) */ void lcd_init(void) { + MOD_CHECK(timer); + // FIXME: interrupts are already disabled when we get here?!? cpuflags_t flags; IRQ_SAVE_DISABLE(flags); @@ -496,4 +535,6 @@ void lcd_init(void) timer_add(lcd_refresh_timer); #endif /* CONFIG_LCD_SOFTINT_REFRESH */ + + MOD_INIT(lcd); }