При любом раскладе SUT - 01, 00, 10, 11, на скрине выделил.
Клапауций пишет:
фьюзы писать напамять вкуда угодно в HEX-формате,
Можете немного посмеятся, но я не знаю что такое НЕХ-формат
Клапауций пишет:
Откуда я знаю, если вы сами не помните, фьюзы
В последнем скрине я выделил в рамку все возможные варианты при CKSEL = 1000. Это внешняя RC цепь.
А что такое внешняя RC цепь? если это то что я думаю, то, как я понимаю, ввиду моих последних достижения я смогу оживить атмегу16 подав 8,0 от атмеги32 т.к. атмега32прошита под внутренний на 8,0?
Тут такое дело. тот же ЖКИ, два датчика температуры на разных пинах. Пытаюсь вывести разным шрифтам в разные части ЖК показания. По отдельности работает, вместе никак. Поможете?
Нужна помощь в паре проблем по ЖКИ128х64 на ST7920.
Пока что занимаюсь его тестированием. На первых прарах поражён принципиальной разницей в использовании библиотеки U8G в ставнении с GLCD.
1.Для начала пытаюсь найти команду эквивелентную GLCD.ClearScreen(); в одноимённой библиотеке.
Устраивает то, что подключение конфигурируется прямо в скетче но не до конца понятно... Вот как получается:
при конфигурации
U8GLIB_ST7920_128X64_4X u8g(28, 26, 24); //ключевое тут Х4
если при такой комбинации вывести показания ниже 32-й строки то получается :
выводит только верхнюю половину.(((
Если оставить вверху но Х4 заменить на Х1, получается
а если спустить ниже строки 32 при Х1 то:
2. Что это за Х4 и Х1? от них как то уйти можно. Я просматривал тему по шрифту к такому дисплею. Там есть пример, включается без этих иксов, но у меня не получается, пустой экран.
Нужна, очень нужна любая библиотека для ST7920 кроме u8glib. Я с такой тормознутой ничего не могу сделать, такой приметив. Выдел вроде как получалось перевести glcd под такой контроллер, не могу найти.
Так и не разобрался, "с" вводил вначале кода, "е" была еденичка (она на экране между стрелками). Вобщем переписал большую часть кода и эту тоже (е заменил на on)
if(on == 1){
if(t_diff >= 3) c = 3; //максимальная разница
if(t_diff < 3 && t_diff >= 1.5) c = 2; //средняя разница
if(t_diff < 1.5 && t_diff >= 0.9) c = 1; //минимальная разница
if(t_diff <=0) c = 0; //Достигнуто заданое значение Т
}
При любом раскладе SUT - 01, 00, 10, 11, на скрине выделил.
Можете немного посмеятся, но я не знаю что такое НЕХ-формат
В последнем скрине я выделил в рамку все возможные варианты при CKSEL = 1000. Это внешняя RC цепь.
А что такое внешняя RC цепь? если это то что я думаю, то, как я понимаю, ввиду моих последних достижения я смогу оживить атмегу16 подав 8,0 от атмеги32 т.к. атмега32прошита под внутренний на 8,0?
Я выдал все рекомендации ещё здесь http://arduino.ru/forum/programmirovanie/lcd-128x64-i-mega2560-zazhgem#comment-29357 - далее идут бессмысленные препирательства.
Пробую залить простой скетчь на мегу32. Компелирует без проблем. При попытке загрузить пишет:
avrdude: stk500_getsync(): not in sync: resp=0x00.
?????
Тут такое дело. тот же ЖКИ, два датчика температуры на разных пинах. Пытаюсь вывести разным шрифтам в разные части ЖК показания. По отдельности работает, вместе никак. Поможете?
#include <glcd.h> #include "The16/allThe16x64.h" #include "fixednums15x31.h" #include "new_Font.h" #include <OneWire.h> byte degree[8] = { B00110, B01001, B01001, B00110, B00000, B00000, B00000, B00000 }; const int sensor_1Pin = 25; const int sensor_2Pin = 17; float tc_saved; boolean f_saved = false; float tc2_saved; //для второго датчика boolean t_saved = false; void setup() { GLCD.Init(); GLCD.ClearScreen(); } void loop() { GLCD.SelectFont(fixednums15x31); OneWire ds1(sensor_1Pin); byte data[12]; byte addr[8]; if(!ds1.search(addr)) { ds1.reset_search(); delay(500); return; } ds1.reset(); ds1.select(addr); ds1.write(0x44, 1); delay(1000); ds1.reset(); ds1.select(addr); ds1.write(0xBE); for(byte i = 0; i < 9; i++) data[i] = ds1.read(); unsigned int raw = (data[1] << 8) | data[0]; byte cfg = (data[4] & 0x60); if (cfg == 0x00) raw <<= 3; else if (cfg == 0x20) raw <<= 2; else if (cfg == 0x40) raw <<= 1; float tc = (float)raw / 16.0; GLCD.CursorToXY(24, 8); if(tc < 0.0) GLCD.print(tc, 1); else { GLCD.print('+'); GLCD.print(tc, 1); } f_saved = true; tc_saved = tc; }вот для второго
#include <glcd.h> #include "new_Font.h" #include <OneWire.h> const char celsius[] = { 39, 'C', }; byte degree[8] = { B00110, B01001, B01001, B00110, B00000, B00000, B00000, B00000 }; const int sensor_2Pin = 17; float tc2_saved; boolean t_saved = false; void setup() { GLCD.Init(); GLCD.ClearScreen(); } void loop() { OneWire ds2(sensor_2Pin); GLCD.SelectFont(new_Font); byte data[12]; byte addr[8]; if(!ds2.search(addr)) { ds2.reset_search(); delay(500); return; } ds2.reset(); ds2.select(addr); ds2.write(0x44, 1); delay(1000); ds2.reset(); ds2.select(addr); ds2.write(0xBE); for(byte i = 0; i < 9; i++) data[i] = ds2.read(); unsigned int raw = (data[1] << 8) | data[0]; byte cfg = (data[4] & 0x60); if (cfg == 0x00) raw <<= 3; else if (cfg == 0x20) raw <<= 2; else if (cfg == 0x40) raw <<= 1; float tc2 = (float)raw / 16.0; GLCD.ClearScreen(); GLCD.CursorToXY(55, 48); if(tc2 < 0.0) GLCD.print(tc2, 1); else { GLCD.print('+'); GLCD.print(tc2, 1); } GLCD.CursorToXY(110, 48); GLCD.print(celsius); t_saved = true; tc2_saved = tc2; }Вопрос снимаю, справился!
Нужна помощь в паре проблем по ЖКИ128х64 на ST7920.
Пока что занимаюсь его тестированием. На первых прарах поражён принципиальной разницей в использовании библиотеки U8G в ставнении с GLCD.
1.Для начала пытаюсь найти команду эквивелентную GLCD.ClearScreen(); в одноимённой библиотеке.
Устраивает то, что подключение конфигурируется прямо в скетче но не до конца понятно... Вот как получается:
при конфигурации
если при такой комбинации вывести показания ниже 32-й строки то получается :
выводит только верхнюю половину.(((
Если оставить вверху но Х4 заменить на Х1, получается
а если спустить ниже строки 32 при Х1 то:
2. Что это за Х4 и Х1? от них как то уйти можно. Я просматривал тему по шрифту к такому дисплею. Там есть пример, включается без этих иксов, но у меня не получается, пустой экран.
чейта похоже что модель увас не правильная прописана... и всякие тама иксы вообще не причем... изучайте что за модель.
в описании вроде как контроллер ST7920, да и сэмплы отображаются правельно, всё чётко и красиво и при любых Х1 или Х4
Нужна, очень нужна любая библиотека для ST7920 кроме u8glib. Я с такой тормознутой ничего не могу сделать, такой приметив. Выдел вроде как получалось перевести glcd под такой контроллер, не могу найти.
ещё вопрсик:
if (e>1) {e = 0; c = 4;} //"1" включение, остальное "0", выключено if(t_diff >= 4 && e == 1) c = 3; //максимальная разница if(t_diff >=1.6 && t_diff < 4 && e == 1) c = 2; //средняя разница if(t_diff < 1.6 && e == 1) c = 1; //минимальная разница if(t_diff <= 0.0 && e == 1) c = 0; // нулевое значениепочему переменная "с"типа float (сначала был int )принимает значение "0" усли "t_diff" не меньше и не равна "0"
могу предположить,что e = 0;
c не инициализирована до ифов
Так и не разобрался, "с" вводил вначале кода, "е" была еденичка (она на экране между стрелками). Вобщем переписал большую часть кода и эту тоже (е заменил на on)
if(on == 1){ if(t_diff >= 3) c = 3; //максимальная разница if(t_diff < 3 && t_diff >= 1.5) c = 2; //средняя разница if(t_diff < 1.5 && t_diff >= 0.9) c = 1; //минимальная разница if(t_diff <=0) c = 0; //Достигнуто заданое значение Т }