В 144 сообщении 8 а не 6 индикаторов, если вникли в скетч то там глобальная ошибка для ваших 6 индикаторов - цикл надо менять и размер буфера, в какой строке вы вводите две цифры для индикации?
Щас внимательно посмотрел, в 47 скетче жёстко прописано 4 индикатора, даже цикла нет, почему именно это вы взяли за образец, не понятно в интернете поищите более продвинутый пример.
Делаете массив с выводимыми данными (например 8888). Перед этим собирате данные с датчиков и по циклу, по времени, НЕ ИСПОЛЬЗУЙТЕ SLEEP!, закидываете в массив с выводимыми данными. Из массива в обработчик на вывод индикатора.
если вы про мой скетч, то да, выкидываем часы, выкидываем получение температуры и давления,
заполняем массив цифр LED_BUF[8]
нужными значениями и все будет работать.
Можете для пробы вообще сначала ничего не убирать, а перед отображением в строке 259 заполнить буфер чем нибудь своим и посмотреть как будет работать, а потом уже убирать лишнее.
Я ничего не решил, я пытаюсь со вчерашнего вечера понять что у вас за индикаторы, а вы все темните, давно бы уже скинули ссылку с описанием или хотя бы фото.
Если обрубки цифр и еле светяться значит с большой вероятностью у вас другие индикаторы с общим катодом, а то что еле светяться - могли бы и догадаться пин А1 контроллера на +5м или земплю повесить, т.к. от его уровня яркость зависит.
экспериментируете с содержимым массива в строке 25, т.к. не понятно что там китайцы скоммутировали,
вместо процедуры вывода пишите shiftOut (примеры в ветке или интернете), потом уже разберетесь как работаете - сами переделайте процедуру под свой индикатор.
Я понял. Почерк автора так сказать.К стати если их даже не отключать на выходе у них ноль все равно. Достаточно только обозначить пин на выход и там сразу 0.
Всем привет. Пошесть просто пошла купил дисплей 12с переходником. Подключил SCL d a5 ,SDA в A4 .
#include <Wire.h>
#include <LiquidCrystal_I2C.h>
LiquidCrystal_I2C lcd(0x27,16,2); // Устанавливаем дисплей
void setup()
{
lcd.init();
lcd.backlight();// Включаем подсветку дисплея
lcd.print("iarduino.ru");
lcd.setCursor(8, 1);
lcd.print("LCD 1602");
}
void loop()
{
// Устанавливаем курсор на вторую строку и нулевой символ.
lcd.setCursor(0, 1);
// Выводим на экран количество секунд с момента запуска ардуины
lcd.print(millis()/1000);
}
Загрузил пример и не работает . И что странно на дисплее когда подать питание светится только нижняя строка бубиками а верхняя нет. Подскажите в чем проблема ????
Доброго времени суток ! Решил добить вопрос по индикатору . Но не совсем пойму строка 25 и 26 это массивы и в них ци фры так вот что это за цифры и от куда они берутся?
23 строка - массив байт, в каждом из которых биты, обозначающих какие светодиоды(сегменты данного конкретного индикатора ) будут светиться, т.е. матрица свечения
24 строка - описание каждого байта - т.е. какой сивол будет на индикаторе
25 строка - бит индикатора( общий анод) который нужно зажеч, вот так через ж... китайцы спаяли не подряд
26 непостредственно что должно отображаться на индикаторах = порядковый номер из массива строки 23
т.е. например 0 в первом байте 26 строки означает что сначала посылается байт выбора индикатора (16 из строки 25)
потом уже сам байт матрицы 0xC0 (или наоборот - не помню, сначала 0xC0 потом 16)
То есть в одном цифра их 7 плюс точка . Тогда откуда такие цифры как 128 ? Даже если считать 8 цифр и в них по 8 диодиков то это всего 56 . Каким образом формируются цифры в 25 строке ?
Я понял 16 это две цывры(диодиков ) 32. 4 цифры и ид. Верно ?
нарисуйте цифры из 25 строки в двоичной системе и увидите что там всего одна 1ка - это и есть тот индикатор который отображается в данный конкретный момент времени, соотвественно поочередно зажигая их с высокой частотой - человеку кажеться что они горят одновременно
Да вы правы индикатор оказался с общим катодом. Я подключил 4 сегментный индикатор без здвиговог регистра и опять не чего не работает и прозвонил его оказалось что он с общим катодом.
Подключил резистор через беременную вывожу значения все клас. Подключил библиотеку тензодатчика чтоб выводить вес индикатор вес выводит но цифры мерцают не успеваю разогрется. Может контроллер не успевает подсчитывает информацию с датчика усреднять ее и при этом сегменты зажигать ??
Завтра буду возле компьютера брошу. Но там только добавлена вместо цыфр в 30 ой строке переменная которая выводит значение с потенцыометра.
Значит варианты следующие
1 не верно подключено
2 я один не понял сколько у вас 7 сегментных индикаторов ?
3 если вместо 63 выходит 636 - значит не корректно заполняете массив с цифрами и сами не понимаете как скетч работает
Индикаторов 6. Как работает скетч понимаю но не до конца. Это мой первый индикатор. Если укажите на ошибки буду оч благодарен.
Вместо 36 выводит 636 то есть последняя цифра дублируются первой если 35 выводит 535 и т.д. Индикатор как у вас в 144. Сообщении.
В 144 сообщении 8 а не 6 индикаторов, если вникли в скетч то там глобальная ошибка для ваших 6 индикаторов - цикл надо менять и размер буфера, в какой строке вы вводите две цифры для индикации?
Щас внимательно посмотрел, в 47 скетче жёстко прописано 4 индикатора, даже цикла нет, почему именно это вы взяли за образец, не понятно в интернете поищите более продвинутый пример.
Окей благодарю будем искать .
че их искать то - ветку почитайте, первые попавшиеся, 123 сообщение, 144 сообщение - выкиньте все лишнее и будет вам счастье.
Там даже коментов к строкам толком нет мне как начинающему совсем тяжко. Подскажите хоть примерно че там жа как сделать ??
Что мозг выносите? посмотри мой скетч он вообще универсален.
Там даже коментов к строкам толком нет мне как начинающему совсем тяжко. Подскажите хоть примерно че там жа как сделать ??
ну извините :)
пишу обычно для себя а не для всеобщего обозрения, комментарии как то лень писать.
Я так понял убираем часы датчики оставляем ??
Делаете массив с выводимыми данными (например 8888). Перед этим собирате данные с датчиков и по циклу, по времени, НЕ ИСПОЛЬЗУЙТЕ SLEEP!, закидываете в массив с выводимыми данными. Из массива в обработчик на вывод индикатора.
Я так понял убираем часы датчики оставляем ??
э...я не знаю нужны ли вам датчики.
если вы про мой скетч, то да, выкидываем часы, выкидываем получение температуры и давления,
заполняем массив цифр LED_BUF[8]
нужными значениями и все будет работать.
Можете для пробы вообще сначала ничего не убирать, а перед отображением в строке 259 заполнить буфер чем нибудь своим и посмотреть как будет работать, а потом уже убирать лишнее.
Пробую
Пишет ошибка компиляции для ардуино уно . Наверно библиотеки не хватает ?
Пишет ошибка компиляции для ардуино уно . Наверно библиотеки не хватает ?
наверное да :)
в начале скетча есть же список библиотек - что мешает подключить?
По закрывал все не нужное
Не судите строго .
вы если сложно воспринимаете чужой код, попытайтесь сначала что нибудь попроще написать
пробуйте, если индикаторы аналогичные и подключено верно, должна быть строчка цифр 0, 1, 2, 3, 4, 7, 8, 9
Я так понял раз так много выходов вы ришили что у меня индикатор без регистроф ? У меня такой как на вашем фото с двумя регитрами
Залил скетч еле светятся все 6 какимито обрубками цыфр
У меня пины DIO.SCK.RCK подключил аналогично вашим SCLK.RCLK.DIO
Я ничего не решил, я пытаюсь со вчерашнего вечера понять что у вас за индикаторы, а вы все темните, давно бы уже скинули ссылку с описанием или хотя бы фото.
Если обрубки цифр и еле светяться значит с большой вероятностью у вас другие индикаторы с общим катодом, а то что еле светяться - могли бы и догадаться пин А1 контроллера на +5м или земплю повесить, т.к. от его уровня яркость зависит.
ЗЫ. Совсем обленились :(
Может какой другой индикатор посоветуете ? А то я до этого наверно еще не дорос . Или экранчик какой ?
нормальный экран, но сам не пробовал,
в строках 25 и 26 уменьшаете массивы до 6,
экспериментируете с содержимым массива в строке 25, т.к. не понятно что там китайцы скоммутировали,
вместо процедуры вывода пишите shiftOut (примеры в ветке или интернете), потом уже разберетесь как работаете - сами переделайте процедуру под свой индикатор.
http://codius.ru/articles/%D0%A2%D1%8E%D0%BD%D0%B8%D0%BD%D0%B3_Arduino_%...
http://codius.ru/articles/Arduino_%D0%A1%D0%B4%D0%B2%D0%B8%D0%B3%D0%BE%D...
https://mysku.ru/blog/ebay/35339.html
Прокоментируте пожалуйста строки с 32 по 41 ?
А0. Это фоторезистор яркость сегментов а вот остальное это что ?
Точнее A3
http://arduino.ru/Reference
почитайте - тут почти все есть, и в том числе команды с 31 по 42 строку
что такое А0 А3 в ваших вопросах? если аналоговые пины , то в каком контексте вопрос?
ЗЫ. Я честно говоря фигею от вас, я бы уж давно загуглил что это за команды и не задавал глупых вопросов на форуме.
Вас в школе и институте (если был) не учили пользоваться литературой?
Еду в машине а ответ хочется узнать. Ну вы понимаете интересно ж так что ....Приеду к компу обязательно разберусь.
Нет что это за команды я знаю. Я имел в виду зачем они там все на выход стоят если используется только одна.?
И зачем они все LOW.?
не помню, привычка отключать все не используемые пины
Я понял. Почерк автора так сказать.К стати если их даже не отключать на выходе у них ноль все равно. Достаточно только обозначить пин на выход и там сразу 0.
Всем привет. Пошесть просто пошла купил дисплей 12с переходником. Подключил SCL d a5 ,SDA в A4 .
Загрузил пример и не работает . И что странно на дисплее когда подать питание светится только нижняя строка бубиками а верхняя нет. Подскажите в чем проблема ????
Доброго времени суток ! Решил добить вопрос по индикатору . Но не совсем пойму строка 25 и 26 это массивы и в них ци фры так вот что это за цифры и от куда они берутся?
23 строка - массив байт, в каждом из которых биты, обозначающих какие светодиоды(сегменты данного конкретного индикатора ) будут светиться, т.е. матрица свечения
24 строка - описание каждого байта - т.е. какой сивол будет на индикаторе
25 строка - бит индикатора( общий анод) который нужно зажеч, вот так через ж... китайцы спаяли не подряд
26 непостредственно что должно отображаться на индикаторах = порядковый номер из массива строки 23
т.е. например 0 в первом байте 26 строки означает что сначала посылается байт выбора индикатора (16 из строки 25)
потом уже сам байт матрицы 0xC0 (или наоборот - не помню, сначала 0xC0 потом 16)
26 строкой мы указываем что у нас будут цифры от 1 до 9 ? Но 25 переключает аноды каждого разряда ? Или каждого сигмента ?
23 и 26 строки понятны а вот от куда берутся цыфры в 25 ? Это номера сегментов (диодов )?
Да, 8й (или 1 ый} бит это точка
То есть в одном цифра их 7 плюс точка . Тогда откуда такие цифры как 128 ? Даже если считать 8 цифр и в них по 8 диодиков то это всего 56 . Каким образом формируются цифры в 25 строке ?
Или это количество бит ?
Я понял 16 это две цывры(диодиков ) 32. 4 цифры и ид. Верно ?
Цифри отображаются не правильно пишу 2 отображается перевернутая шесть. Не правильно аноды переключаются ?
Цифри отображаются не правильно пишу 2 отображается перевернутая шесть. Не правильно аноды переключаются ?
если в инверсии - надо инвертировать отправляемые байты или да возможно ваш индикатор с общими катодами
нарисуйте цифры из 25 строки в двоичной системе и увидите что там всего одна 1ка - это и есть тот индикатор который отображается в данный конкретный момент времени, соотвественно поочередно зажигая их с высокой частотой - человеку кажеться что они горят одновременно
Да вы правы индикатор оказался с общим катодом. Я подключил 4 сегментный индикатор без здвиговог регистра и опять не чего не работает и прозвонил его оказалось что он с общим катодом.
Изменил в примере 0 на 1 то есть начал зажигать ну лем все работает .
Подключил резистор через беременную вывожу значения все клас. Подключил библиотеку тензодатчика чтоб выводить вес индикатор вес выводит но цифры мерцают не успеваю разогрется. Может контроллер не успевает подсчитывает информацию с датчика усреднять ее и при этом сегменты зажигать ??