Страница 18 из 93
Re: Часы на светодиодных матрицах с драйверами MAX7219
Добавлено: Чт июл 09, 2015 19:11:31
max50
WiseLord писал(а):По поводу DHT11 не уверен, нужно ли. Там и параметры хуже, и протокол чуть другой, да и нету его у меня в наличии.
Ясно.
Re: Часы на светодиодных матрицах с драйверами MAX7219
Добавлено: Чт июл 09, 2015 19:34:52
WiseLord
Maxtor62 писал(а):Нет, и после компиляции прошивки из проекта на MAX7219mod ни чего не работает! Что то где то не так!
Причину нашёл - из-за
изменения в pins.h при выборе MAX7219MOD выбирается разводка ножек как для HT1632.
Исправлено.
Также исправлены выбросы яркости при использовании фоторезистора.
Помогло простое увеличение скорости тактирования АЦП. Во всяком случае, у меня кратковременные выбросы яркости исчезли.
P.S. Файл с прошивками перезалит с учётом последних правок.
Re: Часы на светодиодных матрицах с драйверами MAX7219
Добавлено: Чт июл 09, 2015 21:45:54
ksa69
Еще идея появилась. Счетчик импульсов же не сложно реализовать и на математике простой выводить данные от СБМ-20 в мкр/час... Вроде вообще не сложно. Сложнее запитать сам датчик и запихать его в корпус...
Re: Часы на светодиодных матрицах с драйверами MAX7219
Добавлено: Пт июл 10, 2015 05:44:01
Maxtor62
Wiselord большое спасибо, всё заработало! Есть один недочёт: при выводе бегущей строки температуры, давления и влажности, смена режима на показания времени происходит до окончания прокрутки значения влажности, где-то с середины экрана. Очень неприятный получается эффект. Если можно поправьте, пожалуйста. И ещё, хочу спросить по поводу вывода бегущей строки
через заданное время, а не фиксированное как сейчас, что то получиться сделать или уже нет?
ksa69 писал(а):Еще идея появилась. Счетчик импульсов же не сложно реализовать и на математике простой выводить данные от СБМ-20 в мкр/час...
Стесняюсь спросить: а Вы где живёте? На урановых рудниках или возле АЭС, что так необходимо контролировать уровень радиации?
Лично для меня в данном проекте есть уже всё что нужно и я восхищаюсь WiseLordом как программистом, сумевшим всё это впихнуть в мегу8. И если бы я что то добавил, то только в плане повышения информативности, а именно при выводе давления выводить повышается оно или падает.
Re: Часы на светодиодных матрицах с драйверами MAX7219
Добавлено: Пт июл 10, 2015 06:34:21
WiseLord
Maxtor62 писал(а):Есть один недочёт: при выводе бегущей строки температуры, давления и влажности, смена режима на показания времени происходит до окончания прокрутки значения влажности, где-то с середины экрана
У себя я такого не наблюдаю, строка прокручивается полностью.
Но причина этого мне, в принципе, известна. Под хранение в памяти прокручиваемой строки используется массив
strBuf[MATRIX_BUFFER_SIZE];, размером
576 байт. Соответственно, слишком длинная строка (более ~100 символов, каждый по 5..6 байт) может просто не помещаться в буфере.
У меня три датчика (DS18B20, BMP180, DHT22) и вся строчка с их показаниями, в принципе, помещается в этот буфер. Но если датчиков больше, или текстовые метки в EEPROM слишком длинные - может быть и не так.
Сколько датчиков подключено у Вас, и каких? Какая формируется выводимая строка?
В любом случае, в выложенной прошивке я увеличил размер массива до 640 байт (~11 добавочных символов для вывода) и убрал вывод слова "Температура". Больше тут вряд ли что-то можно сделать, кроме как совершенно иначе организовывать вывод строк. Дальнейшее увеличение размера массива уже не поможет, т.к. и так почти весь 1кБ ОЗУ использован. Можно лишь сами текстовые метки в EEPROM укоротить.
В принципе, у меня написан вариант библиотеки под LED-матрицы, которая не требует для вывода бегущей строки буфера ОЗУ вообще, но под неё так просто проект в текущем состоянии не переведёшь - нужно будет некоторые вещи переписывать полностью. Может, позже как-нибудь и займусь, тогда бы это позволило вообще любое количество любых датчиков подключить.
Re: Часы на светодиодных матрицах с драйверами MAX7219
Добавлено: Пт июл 10, 2015 07:00:25
Maxtor62
Всё понятно, но я залил именно последнюю Вашу прошивку и в ней слово "температура" присутствует и именно из за этого, кажется, получается такой эффект. А количество датчиков именно такое как и у Вас. Вообще то я всегда изменяю и сокращаю для себя бегущую строку и отключаю вывод температуры с BMP180, просто залил Вашу как исходную для проверки. Сейчас внесу свои изменения и посмотрю, что получиться.
...
Да, действительно без слова "температура" всё нормально! А что по поводу изменения времени вывода бег.строк?
Re: Часы на светодиодных матрицах с драйверами MAX7219
Добавлено: Пт июл 10, 2015 07:33:20
ksa69
Ну не АЭС, а просто в нескольких километрах завод РосАтома, который ТВЭЛы для АЭС производит))
Что то вечером не заработала прошивка, точнее глюк с регулировкой яркости. Автоматическая не работала, а ручная - ставишь на три яркость, выходишь в основной режим и яркость опять на максимум ставится. А та что днем была прошивка, в той мерцала яркость, выше вроде писали уже про это.
Re: Часы на светодиодных матрицах с драйверами MAX7219
Добавлено: Пт июл 10, 2015 07:53:02
WiseLord
ksa69 писал(а):а ручная - ставишь на три яркость, выходишь в основной режим и яркость опять на максимум ставится.
А терморезистор отключен при этом? Pull-down резистор на землю присутствует? Без него система может считать, что терморезистор присутствует, и выдавать данные от АЦП.
Maxtor62 писал(а):А что по поводу изменения времени вывода бег.строк?
Надо подумать. Вообще мысль хорошая - выводить бегущую строку не с привязкой по времени, а через n секунд после вывода предыдущей строки. Неважно, выведенной автоматически, или затребованной вручную кнопкой. На выходных попробую реализовать.
Re: Часы на светодиодных матрицах с драйверами MAX7219
Добавлено: Пт июл 10, 2015 08:07:08
ksa69
Все резисторы присутствуют. Я сменил только прошивку, перепроверю еще раз pins.h может в нем где накосячил я...
Re: Часы на светодиодных матрицах с драйверами MAX7219
Добавлено: Пт июл 10, 2015 13:56:11
dt_andrew
после трех дневного тестирования, стала вылазить такая неприятность
при выводе бегущей строки с температурой
раньше было "Температура 25.4 С в комнате"
сейчас выводиться
"Температура 25.4 С в комнатеяснаружи"
в чем косяк, куда глянуть
прошивка MOD_X3
Re: Часы на светодиодных матрицах с драйверами MAX7219
Добавлено: Пт июл 10, 2015 14:00:05
shura2000
Епром от предыдущей версии.
В последней вроде убрали "Температура"
Re: Часы на светодиодных матрицах с драйверами MAX7219
Добавлено: Пт июл 10, 2015 14:02:54
dt_andrew
я не прошивал никаких новых версий, меня и первая прошивка MOD_X3 вполне устраивает
3 дня все было нормально, и само началось
допускаю слет ЕЕПРОМ - проверю конечно
UPD. действительно слетела ЕЕПРОМ
вместо разделителя 0 между "температура" и "снаружи" почему то прописалось "я" (0xFF)
все нормально стало - тестируем дальше
Re: Часы на светодиодных матрицах с драйверами MAX7219
Добавлено: Пт июл 10, 2015 14:47:00
WiseLord
Просто "я" - это 0xFF в EEPROM. Может, где-то редактировалось и случайно вписано было.
Re: Часы на светодиодных матрицах с драйверами MAX7219
Добавлено: Пт июл 10, 2015 14:49:14
ksa69
что-то не применяется патч... пишет unrecognized input и всё тут. склонировал свежую ветку. перенес патч в каталог matrixclock. и git apply выдает эту надпись...
Re: Часы на светодиодных матрицах с драйверами MAX7219
Добавлено: Пт июл 10, 2015 14:52:31
ksa69
Re: Часы на светодиодных матрицах с драйверами MAX7219
Добавлено: Пт июл 10, 2015 14:53:41
dt_andrew
нет, я ничего не редактировал
и 3 дня все было нормально
возможно ЕЕПРОМ слетел по причине выключения и включения часов - боялся оставлять включенным когда уходил на работу
протестирую за выходные без этих выключений
да и видно платы с 328 мегой с Китая дают о себе знать по качеству контроллера
проблема закрыта
Re: Часы на светодиодных матрицах с драйверами MAX7219
Добавлено: Пт июл 10, 2015 15:06:45
WiseLord
ksa69 писал(а):что-то не применяется патч
Какие-то заморочки с windows, явно.
Попробуйте:
1. Создавать патч и накладывать его не в
powershell, а в bash (Выхвать можно, выбрав
Git bash в контекстном меню каталога с исходниками)
2. Командой
git config --global core.autocrlf false настроить git так, чтобы он не переделывал окончания строк из unix-стиля (в коде конец строки - CR) под стиль, принятый в windows (конец строки CRLF).
dt_andrew:
В другом моём
проектике я тоже периодически наблюдал слетающий EEPROM (особенно при отладке кода, при работе - редко). Интересно, но помогло включение в FUSE-битах выставление BODEN/BODLEVEL на срабатывание при 4В питание. По умолчанию у ATmega8 порог 2.7В, да ещё и отключен.
Для ATmega328 попробуйте выставить в 4.3В. Мало ли что там МК может делать с EEPROM, когда VCC приближается при отключении к 1.5В...
Re: Часы на светодиодных матрицах с драйверами MAX7219
Добавлено: Пт июл 10, 2015 15:12:49
ksa69
ок. вечером попробую на домашнем компе, у меня там kalilinux стоит. с этой виндой и впрямь одни глюки, то компилировать не хотела из за size.sh, то программатор не работает толком. теперь вот это вылезло.
через баш то же самое. поправлю руками исходники опять.. потом разберусь
Re: Часы на светодиодных матрицах с драйверами MAX7219
Добавлено: Пт июл 10, 2015 20:22:09
WiseLord
Ну так файл патча порченый. Его получать нужно тоже в чисто настроенном git.
Re: Часы на светодиодных матрицах с драйверами MAX7219
Добавлено: Сб июл 11, 2015 21:45:45
ksa69
Перешил фьюзы на внутренний генератор на 8 МГц и все заработало. На 16МГц никак регулировка яркости от фоторезистора не хотела работать. Видимо что то с настройками АЦП... И плавность изменения яркости сейчас уже не та. Раньше плавно менялась, сейчас мгновенно практически.