 FDA (29.03.2012 13:12, просмотров: 135) ответил Cepгeй Бopщ на Да, наверное мне стоило добавить в первое сообщение кроме инициализации еще и немного вывода:
 FDA (29.03.2012 13:12, просмотров: 135) ответил Cepгeй Бopщ на Да, наверное мне стоило добавить в первое сообщение кроме инициализации еще и немного вывода:
А описание функции I2C.write можете скинуть? В принципе, я всё сделал - текст, точки, линии, окружности и т.п. у меня выводятся, но вот хочется немного соптимизировать. Небольшой затык у меня появился здесь: 
void SendByteLCD (char addr, char page, char b)
 {
  StartI2C();
  PutI2C(LCD_ADDR);
  PutI2C(0b00000000);
  PutI2C(SET_X | addr);
  PutI2C(SET_Y | page);
  StopI2C();
  StartI2C();
  PutI2C(LCD_ADDR);
  PutI2C(0b01000000);
  PutI2C(b);
  StopI2C();
  LCD [addr][page] = b;
 }
Функция выводит байт в заданное место экрана.
Так вот я не могу сделать, чтобы и задание координат и вывод байта выполнялись за раз, т.е.:
  StartI2C();
  PutI2C(LCD_ADDR);
  PutI2C(0b10000000);
  PutI2C(SET_X | addr);
  PutI2C(SET_Y | page);
  PutI2C(0b01000000);
  PutI2C(b);
  StopI2C();
  LCD [addr][page] = b;
Так не работает!!!