Цитата(MaxiMuz @ Feb 26 2014, 14:15)

что не так ?
Найдите 2 отличия:
"char" и "unsigned char"
Цитата(MaxiMuz @ Feb 26 2014, 14:15)

с ф-цией LCD_DAT (*STRING); все впорядке
Нет, с ней не все в порядке.
Ваша функция печатает строку
символов? Ну так и объявите ее как принимающую указатель на
char. Откуда эта патологическая тяга использовать unsigned типы где нужно и где не нужно? Компилятор ругается правильно: вы хотели, чтобы функция принимала указатель на беззнаковые байты, а пихаете ей указатель на символы.