Ich habe jetzt die globale Variable gelöscht und diese in der Write_Line funktion übergeben, jedoch besteht immer noch der selbe delay von 210us...
Code:
void WRITE_LINE (uint8_t LINE[][16]) {
uint8_t TLC = 0xC4;
uint8_t Coloumn = 3;
uint8_t Counter = 0;
for(TLC = 0xC6;TLC >= 0xC0; TLC-=2) {
//_delay_us(2);
if (i2csendstart() != 0x08) {
i2csendstop();
_delay_us(5);
return;
}
if (i2csendbyte(TLC) != 0x18) {
i2csendstop();
_delay_us(5);
return;
}
if (i2csendbyte(0xA2) != 0x28) {
i2csendstop();
_delay_us(5);
return;
}
for(Counter = 0; Counter <16; Counter ++) {
if (i2csendbyte((LINE[Coloumn][Counter])) != 0x28) {
i2csendstop();
_delay_us(5);
return;
}
}
i2csendstop();
Coloumn--;
}
return;
}
oder geht es mit pointer inkrementieren schneller??
lg Koertis
Lesezeichen