aboutsummaryrefslogtreecommitdiffstats
path: root/drivers
diff options
context:
space:
mode:
authorTectu <joel@unormal.org>2012-06-27 21:46:16 +0200
committerTectu <joel@unormal.org>2012-06-27 21:46:16 +0200
commitc621e9f19281a568e351e1c0a9b8fd17d3b0202c (patch)
tree5c531e2659859f4e6fb83e9243668b89bafb3d00 /drivers
parent1f43c6d654b9cbb86138c40e1f7f133d0bb5d214 (diff)
downloaduGFX-c621e9f19281a568e351e1c0a9b8fd17d3b0202c.tar.gz
uGFX-c621e9f19281a568e351e1c0a9b8fd17d3b0202c.tar.bz2
uGFX-c621e9f19281a568e351e1c0a9b8fd17d3b0202c.zip
fixed lld_lcdReadStream()
Diffstat (limited to 'drivers')
-rw-r--r--drivers/lcd/ssd1289_lld.c23
1 files changed, 17 insertions, 6 deletions
diff --git a/drivers/lcd/ssd1289_lld.c b/drivers/lcd/ssd1289_lld.c
index 5a14d238..3fc48921 100644
--- a/drivers/lcd/ssd1289_lld.c
+++ b/drivers/lcd/ssd1289_lld.c
@@ -97,12 +97,23 @@ __inline void lld_lcdReadStreamStop(void) {
__inline void lld_lcdReadStream(uint16_t *buffer, size_t size) {
uint16_t i;
- /* throw away first value read */
- volatile uint16_t dummy = LCD_RAM;
-
- for(i = 0; i < size; i++) {
- buffer[i] = LCD_RAM;
- }
+ volatile uint16_t dummy;
+
+ #ifdef LCD_USE_GPIO
+ dummy = lld_lcdReadGPIO();
+ for(i = 0; i < size; i++)
+ buffer[i] = lld_lcdReadGPIO();
+ #endif
+
+ #ifdef LCD_USE_SPI
+ /* ToDo */
+ #endif
+
+ #ifdef LCD_USE_FSMC
+ dummy = LCD_RAM;
+ for(i = 0; i < size; i++)
+ buffer[i] = LCD_RAM;
+ #endif
}
#endif