Wenn ichs so schreibe schreibt ers richtig
Code:
#include <avr/io.h>
#include "i2cmaster.h"
#include "asuro.h"
#define Display 0x74 // device address of Display, see datasheet
int main(void)
{
int ret=0;
Init();
i2c_init();
ret = i2c_start(Display+I2C_WRITE);
if ( ret )
{
i2c_stop();
StatusLED(RED);
while(1);
}
Msleep(200);
i2c_write(0x00);
Msleep(200);
i2c_write(0x01);
Msleep(200);
i2c_write(0x2E);
Msleep(200);
i2c_write(0x0F);
Msleep(1000);
i2c_write(0x06);
Msleep(200);
i2c_stop();
ret = i2c_start(Display+I2C_WRITE);
if ( ret )
{
i2c_stop();
StatusLED(RED);
while(1);
}
Msleep(200);
i2c_write(0x40); //Kontroll Byte
Msleep(200);
i2c_write(0xA0); //leer
Msleep(200);
i2c_write(0xC9); //I
Msleep(200);
i2c_write(0xA0); //leer
Msleep(200);
i2c_write(0xEC); //l
Msleep(200);
i2c_write(0xEF); //o
Msleep(200);
i2c_write(0xD6); //V
Msleep(200);
i2c_write(0xC5); //E
Msleep(200);
i2c_write(0xA0); //leer
Msleep(200);
i2c_write(0xD9); //Y
Msleep(200);
i2c_write(0xEF); //o
Msleep(200);
i2c_write(0xD5); //U
Msleep(200);
i2c_write(0xA0); //leer
Msleep(200);
i2c_write(0xA0); //leer
Msleep(200);
i2c_write(0xA0); //leer
Msleep(200);
i2c_write(0xA0); //leer
Msleep(200);
i2c_write(0xA0); //leer
Msleep(200);
i2c_write(0xA0); //leer
Msleep(200);
i2c_write(0xA0); //leer
Msleep(200);
i2c_write(0xA0); //leer
Msleep(200);
i2c_write(0xA0); //leer
Msleep(200);
i2c_write(0xA0); //leer
Msleep(200);
i2c_write(0xA0); //leer
Msleep(200);
i2c_write(0xC1); //A
Msleep(200);
i2c_write(0xCE); //N
Msleep(200);
i2c_write(0xC4); //D
Msleep(200);
i2c_write(0xA0); //leer
Msleep(200);
i2c_write(0xCD); //M
Msleep(200);
i2c_write(0xC9); //I
Msleep(200);
i2c_write(0xCB); //K
Msleep(200);
i2c_write(0xC1); //A
Msleep(200);
i2c_write(0xC1); //A
Msleep(200);
while(1);
return 0;
}
Lesezeichen