Вот так компилится (переменная i определена в начале функции).
CODE
void TFTInit()
{
unsigned char i;
Reset();
//char i=0;
write_byte(0xB9,0);//SETEXTC
write_byte(0xFF,1);
write_byte(0x83,1);
write_byte(0x53,1);
write_byte(0xB0,0);//RADJ
write_byte(0x3C,1);
write_byte(0x01,1);
write_byte(0xB6,0);//VCOM
write_byte(0x94,1);
write_byte(0x6C,1);
write_byte(0x50,1);
write_byte(0xB1,0);//PWR
write_byte(0x00,1);
write_byte(0x01,1);
write_byte(0x1B,1);
write_byte(0x03,1);
write_byte(0x01,1);
write_byte(0x08,1);
write_byte(0x77,1);
write_byte(0x89,1);
write_byte(0xE0,0); //Gamma setting for tpo Panel
write_byte(0x50,1);
write_byte(0x77,1);
write_byte(0x40,1);
write_byte(0x08,1);
write_byte(0xBF,1);
write_byte(0x00,1);
write_byte(0x03,1);
write_byte(0x0F,1);
write_byte(0x00,1);
write_byte(0x01,1);
write_byte(0x73,1);
write_byte(0x00,1);
write_byte(0x72,1);
write_byte(0x03,1);
write_byte(0xB0,1);
write_byte(0x0F,1);
write_byte(0x08,1);
write_byte(0x00,1);
write_byte(0x0F,1);
write_byte(0x3A,0);
write_byte(0x05,1); //05
write_byte(0x36,0);
write_byte(0xC0,1); //83 //0B
write_byte(0x11,0); // SLPOUT
delay_us(150);
write_byte(0x29,0); // display on
delay_us(150);
write_byte(0x2D,0); //Look up table
for(i = 0; i < 32; i++)
write_byte(2*i,1); //Red
for(i=0;i<64;i++)
write_byte(1*i,1); //Green
for(i=0;i<32;i++)
write_byte(2*i,1); //Blue
write_byte(0x2c,0);
delay_us(150);
}
Но надо копать дальше - ругается линкер:
Код
*** ERROR L104: MULTIPLE PUBLIC DEFINITIONS
SYMBOL: _DELAY_SEC
MODULE: delay.obj (DELAY)
*** ERROR L104: MULTIPLE PUBLIC DEFINITIONS
SYMBOL: _DELAY_MS
MODULE: delay.obj (DELAY)
*** ERROR L104: MULTIPLE PUBLIC DEFINITIONS
SYMBOL: _DELAY_US
MODULE: delay.obj (DELAY)
Исполняемый код в TFTM1802.h и "#include "delay.c"" в этом файле смотрятся по меньшей мере странно.
(upd) Переделал немного. Собирается.