Cepгeй Бopщ (29.03.2012 12:52, просмотров: 162) ответил FDA на С этим тоже разобрался! Просто немного запутался с битами control byte. Теперь всё работает!
Да, наверное мне стоило добавить в первое сообщение кроме инициализации еще и немного вывода: void st7548_t::refresh()
{
    if(!PoweredOn)
        power_on();
    // update LCD area
    for(y_t y_cnt = Buffer.Update.Bottom; y_cnt < Buffer.Update.Top; ++y_cnt )
    {
        uint8_t SetCursorCmd[2];
        SetCursorCmd[0] = SET_Y | y_cnt;
        SetCursorCmd[1] = SET_X | Buffer.Update.Left;
        if(!I2C.write(CMD_TILL_STOP, SetCursorCmd, sizeof(SetCursorCmd)))
            return;
        if(!I2C.write(DATA_TILL_STOP,
                  &Buffer.Data[y_cnt][Buffer.Update.Left], Buffer.Update.Right - Buffer.Update.Left))
            return;
    }
    Buffer.Update.Left = SIZE_X;
    Buffer.Update.Right = 0;
    Buffer.Update.Bottom = SIZE_Y;
    Buffer.Update.Top = 0;
}