Witam serdecznie,
mam pewien problem z kategorii tych najbardziej żenujących, czyli problem z wyklepaniem kodu w C. Pracuję teraz nad funkcją, która będzie pobierała wskaźnik do dwuwymiarowej tablicy zapisanej w pamięci programu.
Cały problem polega na tym jak wskaźnik do tej tablicy przekazać do funkcji? Przekazanie jako **pointer nie działa.
Zamieszczam kawałki kodu:
Fragment tablicy:
Funkcja:
Pozdrawiam serdecznie
Krzysiek
Usunąłem "problem", z tytułu.
[zumek]
mam pewien problem z kategorii tych najbardziej żenujących, czyli problem z wyklepaniem kodu w C. Pracuję teraz nad funkcją, która będzie pobierała wskaźnik do dwuwymiarowej tablicy zapisanej w pamięci programu.
Cały problem polega na tym jak wskaźnik do tej tablicy przekazać do funkcji? Przekazanie jako **pointer nie działa.
Zamieszczam kawałki kodu:
Fragment tablicy:
//BitMap1 - sample
uint8_t PROGMEM bitmap1 [][6] =
{
{ 0xFF, 0x81, 0xBD, 0xBD, 0x81, 0xFF }, // 0
{ 0xFF, 0x81, 0xBD, 0xBD, 0x81, 0xFF }, // 1
{ 0xFF, 0x81, 0xBD, 0xBD, 0x81, 0xFF }, // 2
{ 0xFF, 0x81, 0xBD, 0xBD, 0x81, 0xFF }, // 3
{ 0xFF, 0x81, 0xBD, 0xBD, 0x81, 0xFF }, // 4
{ 0xFF, 0x81, 0xBD, 0xBD, 0x81, 0xFF }, // 5
itd.
}
Funkcja:
void lcd_ShowBitMap(void) // Tutaj musi być ten "magiczny" wskaźnik
{
uint8_t i = 0, j = 0;
lcdCacheIdx = 0;
for(; i < RAM_BLOCKS; i++)
{
lcd_base_addr(lcdCacheIdx);
// 1 block drawing
for(j = 0; j < 6 ; j++)
{
lcd_send(pgm_read_byte(&bitmap2[i][j]), LCD_DATA); // i tutaj także
}
lcdCacheIdx += 6;
}
}
Pozdrawiam serdecznie
Krzysiek
Usunąłem "problem", z tytułu.
[zumek]