Здравствуйте, собрал я эту схемку, но в процессе экспериментов с прошивкой залочил мегу 8, в атмегу 328 прошивку эту нельзя залить? просто в наличии только меги 328 ))
void LCDchar ( unsigned int x, unsigned int y, char c, char color_r, char color_g, char color_b, char bgcolor_r, char bgcolor_g, char bgcolor_b ) { char h,ch,p,mask; unsigned int q1,q2,s1,s2;
CS = 0; if (y<256) {s1=y; s2=0;} if (y>255) {s1=(y-256); s2=1;} if ((y+14)<256) {q1=(y+14); q2=0;} if ((y+14)>255) {q1=((y+14)-256); q2=1;} SendCom(0x2A); SendDat(0); SendDat(x); // x1 SendDat(0); SendDat(x+7); // x2 SendCom(0x2B); SendDat(s2); SendDat(s1); // y1 SendDat(q2); SendDat(q1); // y2 SendCom(0x2C);
for (h=0; h<14; h++) // every column of the character { ch=font[c][0+h]; mask=0x80; for (p=0; p<8; p++) // write the pixels { if (ch&mask) {SendDat(color_r);SendDat(color_g);SendDat(color_b);} else {SendDat(bgcolor_r);SendDat(bgcolor_g);SendDat(bgcolor_b);} mask=mask/2; } } CS = 1; }
Добавлено (24.12.2015, 18:50) --------------------------------------------- Не подскажите как этот код будет в CWAVR. Спасибо.
Отработал благополучно год показометр с дисплеем от сиеменса, теперь возник следующий бок - при включении нет инициализации дисплея, постоит включенным минут 3-5 начинает потихоньку "Складываться" изображение и в дальнейшем работает как надо. Постоит выключенным - снова такая петрушка. Подскажите в чем может быть дело?
Может стоит перепрошить Мегу? Или заменить кварц? Заодно проверить пайку, может за год где окислилась. Такое ощущение, что что-то с частотой генератора.