- Исправлен вышеописанный баг редактора с ячейкой EEPROM HOUR_ZERO.
- Изменены некоторые настройки по умолчанию (например, по умолчанию задействованы будильники с понедельника по пятницу).
Исправленный редактор eeprom доступен по прежней сссылке, обновлённая прошивка во вложении.
Ежечасный сигнал пока не отключается (разве что будильник выставить (сам будильник можно не включать) на 23:30. Но вообще да, надо бы добавить эту опцию.
Заголовок сообщения: Re: Часы на светодиодных матрицах с драйверами MAX7219
Добавлено: Пт сен 11, 2015 15:56:58
Вымогатель припоя
Зарегистрирован: Ср сен 09, 2015 13:09:15 Сообщений: 558
Рейтинг сообщения:0
Доброго времени суток, такой вопрос, а как выставить кнопками день недели? часы DS3231 на Mega8 с повернутой матрицейMAX7219. всё замечательно, но вместо пятницы показывает четверг.
прошивка matrixclock_max7219mod2_atmega8.hex EEPROM matrixclock_ru.bin за 07.09.2015
в шпаргалке по кнопкам таковой настройки нет, методом тыка тоже не нашел
- Добавлена возможность отключения ежечасного сигнала
Сигнал по-прежнему действует начиная со времени, на которое выставлен будильник и заканчивая 23:00. Отключить/включить эту возможность можно в редакторе EEPROM или длинным одновременным нажатием кнопок 1 и 3.
Получается, что после какого то обновления автором в епром, нужно будет опять править под себя. Те же шрифты. Может как то сделать сохранение и загрузку шрифтов в редактор?
Получается, что после какого то обновления автором в епром, нужно будет опять править под себя
Нет, не получается. Вас никто не заставляет при обновлении прошивки заливать новый EEPROM, теряя свои изменения. Вам никто не мешает сохранить свой EEPROM и редактировать обновлённым редактором именно его.
shura2000, если установить фузе EESAVE, то ЕЕПРОМ вообще не надо будет повторно прошивать, только если измениться структура или будет введен какой то параметр настройки
WiseLord - подскажите где поправить в исходнике проблема такая достал собранную матрицу на больших матрицах от предыдущего незавершенного проекта аноды на MAX7219 разведены правильно, а вот катоды в противоположном порядке изображение поэтому при любых MOD выводятся зеркально насколько я разобрался у вас сканирование строк идет снизу вверх, а надо сделать сверху вниз ткните носом в какой процедуре покопаться, чтоб так сделать
Зеркально вся конструкция целиком, или каждая матрица по-отдельности? Фото можно увидеть?
У меня сейчас готовой конструкции на MAX7219 под рукой нет, проверить не могу, но можете попробовать:
Здесь проверку инвертировать с data = (rotate ? ... на data = (!rotate ? .... Или ниже по коду, if (rotate) менять на if (!rotate).
Также в пределах этой функции max7219SendDataBuf(), в зависимости от используемого "мода", можете попробовать поменять начальные значения переменных ci, ls, rs (с 0x01 на 0x80 или наоборот) и сдвигать их в противоположную сторону (вместо 0x80 и >> делать 0x01 и << и наоборот).
Пробуйте разные комбинации, какая-нибудь должна помочь.
Последний раз редактировалось WiseLord Сб сен 12, 2015 08:19:22, всего редактировалось 1 раз.
/// ci = 0x01; ci = 0x80; for (i = 0; i < 8; i++) { PORT(MAX7219_LOAD) &= ~MAX7219_LOAD_LINE; for (j = 0; j < MAX7219_NUM_USED; j++) { #if defined(MAX7219MOD) data = 0; uint8_t k; uint8_t ls, rs; /// ls = 0x80; /// rs = 0x01; ls = 0x01; rs = 0x80; for (k = 0; k < 8; k++) { #if defined(MAX7219MOD2) if (buf[8 * (!rotate ? j : MAX7219_NUM_USED - 1 - j) + k] & ci) #else if (buf[8 * (rotate ? j : MAX7219_NUM_USED - 1 - j) + k] & ci) #endif data |= (rotate ? ls : rs); /// ls >>= 1; /// rs <<= 1; ls <<= 1; rs >>= 1; } #else data = (rotate ? max7219SwapBits(buf[8 * j + i]) : buf[8 * (MAX7219_NUM_USED - 1 - j) + i]); //// data = (rotate ? buf[8 * j + i] : max7219SwapBits(buf[8 * (MAX7219_NUM_USED - 1 - j) + i])); #endif if (rotate) max7219SendByte(MAX7219_DIGIT_7 - i); else max7219SendByte(MAX7219_DIGIT_0 + i); max7219SendByte(data); } PORT(MAX7219_LOAD) |= MAX7219_LOAD_LINE; /// ci <<= 1; ci >>= 1; }
return; }
проблемма теперь при отображении столбца будильника при установленных пн-пт светиться точка внизу правая как не устанавливай будильник всегда горит только она
Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 49
Вы не можете начинать темы Вы не можете отвечать на сообщения Вы не можете редактировать свои сообщения Вы не можете удалять свои сообщения Вы не можете добавлять вложения