часы ардуино ds3231 max7219 ds18b20

Обсуждаем электронику на колесах. Нужен увлажнитель воздуха для Камаза? Вам сюда.
Romik28
Родился
Сообщения: 5
Зарегистрирован: Сб май 09, 2020 21:45:21

Re: часы ардуино ds3231 max7219 ds18b20

Сообщение Romik28 »

Скажите Пожалуйста. как выставить дату точнее 10 месяц с помощью кнопок. этот месяц проскакивает?не выставить ноль в еденицах месяца. (заменил батарейку в модуле часов и 10 месяц выставить не могу)
Реклама
Аватара пользователя
Serzh2000
Опытный кот
Сообщения: 867
Зарегистрирован: Пт фев 27, 2015 12:00:53
Откуда: Рязанская область

Re: часы ардуино ds3231 max7219 ds18b20

Сообщение Serzh2000 »

а в чем проблема? заходите в установки выбираете дату и ...
Реклама
Romik28
Родился
Сообщения: 5
Зарегистрирован: Сб май 09, 2020 21:45:21

Re: часы ардуино ds3231 max7219 ds18b20

Сообщение Romik28 »

В установке еденицы месяца ноль не выставить только 9 месяц или сразу 11
Аватара пользователя
Serzh2000
Опытный кот
Сообщения: 867
Зарегистрирован: Пт фев 27, 2015 12:00:53
Откуда: Рязанская область

Re: часы ардуино ds3231 max7219 ds18b20

Сообщение Serzh2000 »

Вечером посмотрю

Добавлено after 2 hours 59 minutes 59 seconds:
попробуй в протеусе работает.
Вложения
chasy_matrica_temp_otricatelnaay.zip
(209.44 КБ) 422 скачивания
Реклама
Эиком - электронные компоненты и радиодетали
Аватара пользователя
Serzh2000
Опытный кот
Сообщения: 867
Зарегистрирован: Пт фев 27, 2015 12:00:53
Откуда: Рязанская область

Re: часы ардуино ds3231 max7219 ds18b20

Сообщение Serzh2000 »

(теперь даже есть месяц 00 и 19).
спасибо, не доглядел.
исправил.
Вложения
chasy_matrica_temp_otricatelnaay.zip
(209.45 КБ) 576 скачиваний
Реклама
validol64
Родился
Сообщения: 3
Зарегистрирован: Чт ноя 04, 2010 18:44:25
Откуда: Удмуртия

Re: часы ардуино ds3231 max7219 ds18b20

Сообщение validol64 »

спасибо дружище!
Реклама
Papotyreg
Родился
Сообщения: 9
Зарегистрирован: Чт авг 26, 2021 22:57:07

Re: часы ардуино ds3231 max7219 ds18b20

Сообщение Papotyreg »

Здравствуйте. Помогите пожалуйста. Я не много переделал часы, исходник с амперки, под свои нужды. Добавил датчик давления ВМР280 и датчик температуры и естественно убрал радио. Все вроде как нормально. Но есть одно но, при выводе текста (стринг) он не помещается в область матрицы. Я понимаю что вся проблема в самой функции "стринг" но как ее исправить незнаю. Всем откликнувшимся - Благодарю!

Код: Выделить всё

// ---------------------------------------------------------------------- Печатаем текст
void showString(int x, char *s) {                                         // в х координаты начала текста (0-31), s - ссылка на масив символов.
  while(*s) {                                                             // запускаем цикл пока s не будет равна "0"
    unsigned char c = *s++;                                               //
    c -= 32;                                                              // наша таблица символов не содержит первых 32 символа по этому и - 32
    int w = showChar(c, x, font_ru);                                      // в W возвращаем значение из функции showChar (значение символа, где его печатать, какой шрифт)
    x += w + 1;                                                           // к координате прибавляем возвратное значение w (количество строк нашего символа + 1 пробел между символами)
  }                                                                       //
}   
Вложения
Moi_Czasy8x32-_____.rar
(32.84 КБ) 276 скачиваний
novax1
Родился
Сообщения: 7
Зарегистрирован: Пн авг 23, 2021 10:31:41

Re: часы ардуино ds3231 max7219 ds18b20

Сообщение novax1 »

Извините, если беспокоюсь, если повторяю сообщения, я новичок.
Спасибо
Последний раз редактировалось novax1 Вс авг 29, 2021 11:43:02, всего редактировалось 1 раз.
novax1
Родился
Сообщения: 7
Зарегистрирован: Пн авг 23, 2021 10:31:41

Re: часы ардуино ds3231 max7219 ds18b20

Сообщение novax1 »

[quote="novax1"]Здравствуйте, стараюсь поставить 3 буквы, чтобы лучше обозначить дни недели

Код: Выделить всё

const uint8_t PROGMEM dweek_es[ ] = {11,                                    // Días de la semana 
0x09, 0xfe, 0x82, 0x82, 0x7c, 0x00, 0xfe, 0x82, 0x82, 0xfe, 0x00,    // DO (Domingo) 
0x09, 0x7e, 0x80, 0x80, 0x80, 0x00, 0x7e, 0x80, 0x80, 0x7e, 0x00,   // LU (lunes)
0x09, 0xfe, 0x14, 0x08, 0xfe, 0x00, 0xfe, 0x12, 0x12, 0xfe, 0x00,   // MA (martes)
0x09, 0xfe, 0x14, 0x08, 0xfe, 0x00, 0x82, 0xfe, 0x82, 0x00, 0x00,   // Mi (miércoles)
0x09, 0x40, 0x80, 0x80, 0x7e, 0x00, 0x7e, 0x80, 0x80, 0x7e, 0x00,   // JU (jueves)
0x09, 0x3c, 0x40, 0x80, 0x40, 0x3c, 0x00, 0x84, 0xfc, 0x84, 0x00,   // VI
0x09, 0x88, 0x94, 0x94, 0x64, 0x00, 0xf8, 0x14, 0x14, 0xf8, 0x00,     //SA
0x09, 0x02, 0x07, 0x02, 0x00, 0x7e, 0xff, 0x81, 0x81, 0x42, 0x00,   // símbolo de grado y letra C

} ;
У меня часы с испанским переводом.
И снова здравствуйте, я решил текст,
Спасибо

это измененный текст с тремя буквами

Код: Выделить всё

const uint8_t dweek_es[] PROGMEM = { 12,                                        // Шрифт дни недели (укр) 3 буквы
0x0B, 0xfc, 0x84, 0x78, 0x00, 0xfc, 0x84, 0xfc, 0x00, 0xfc, 0x38, 0xfc, // DOM 6x3 нед (неділя)
0x0B, 0xfc, 0x80, 0x80, 0x00, 0xfc, 0x80, 0xfc, 0x00, 0xfc, 0x04, 0xf8, // LUN 6x3 пон (понеділок)
0x0B, 0xfc, 0x38, 0xfc, 0x00, 0xfc, 0x14, 0xfc, 0x00, 0xfc, 0x14, 0xe8, // MAR 6x3 вів (вівторок)
0x0B, 0xfc, 0x38, 0xfc, 0x00, 0x84, 0xfc, 0x84, 0x00, 0xfc, 0x94, 0x84, // MIE 6x3 сер (середа)
0x0B, 0x40, 0x80, 0x7c, 0x00, 0xfc, 0x80, 0xfc, 0x00, 0xfc, 0x94, 0x84, // JUE 6x3 чет (четверг)
0x0B, 0x7c, 0x80, 0x7c, 0x00, 0x84, 0xfc, 0x84, 0x00, 0xfc, 0x94, 0x84, // VIE 6x3 пят (п'ятниця)
0x0B, 0x8c, 0x94, 0xe4, 0x00, 0xfc, 0x14, 0xfc, 0x00, 0xfc, 0x94, 0x68, // SAB 6x3 суб (субота)
0x0B, 0x06, 0x09, 0x09, 0x06, 0x00, 0x7E, 0xFF, 0x81, 0x81, 0xE7, 0x66, // символ градуса и буква С
};
Добавлено after 7 minutes 1 second:
[uquote="Papotyreg",url="/forum/viewtopic.php?p=4082571#p4082571"]Здравствуйте. Помогите пожалуйста. Я не много переделал часы, исходник с амперки, под свои нужды. Добавил датчик давления ВМР280 и датчик температуры и естественно убрал радио. Все вроде как нормально. Но есть одно но, при выводе текста (стринг) он не помещается в область матрицы. Я понимаю что вся проблема в самой функции "стринг" но как ее исправить незнаю. Всем откликнувшимся - Благодарю!

Код: Выделить всё

// ---------- Печатаем текст
void showString(int x, char *s) {                                         // в х координаты начала текста (0-31), s - ссылка на масив символов.
  while(*s) {                                                             // запускаем цикл пока s не будет равна "0"
    unsigned char c = *s++;                                               //
    c -= 32;                                                              // наша таблица символов не содержит первых 32 символа по этому и - 32
    int w = showChar(c, x, font_ru);                                      // в W возвращаем значение из функции showChar (значение символа, где его печатать, какой шрифт)
    x += w + 1;                                                           // к координате прибавляем возвратное значение w (количество строк нашего символа + 1 пробел между символами)
  }                                                                       //
}   
[/uquote]

Привет друг, когда это режим «Р-АВТО»? Можно менять скорость отображения,
меняется очень быстро.
спасибо, хорошая работа.
Аватара пользователя
Serzh2000
Опытный кот
Сообщения: 867
Зарегистрирован: Пт фев 27, 2015 12:00:53
Откуда: Рязанская область

Re: часы ардуино ds3231 max7219 ds18b20

Сообщение Serzh2000 »

Но есть одно но, при выводе текста (стринг) он не помещается в область матрицы.
может разбить показания ... скажем три секунды показывает температуру, три секунды давление, три секунды влажность, а остальное время.
novax1
Родился
Сообщения: 7
Зарегистрирован: Пн авг 23, 2021 10:31:41

Re: часы ардуино ds3231 max7219 ds18b20

Сообщение novax1 »

Именно то, что я имел в виду, время длительности 2 секунды можно увеличить, чтобы оно не менялось так быстро,
Можете ли вы сказать мне, можете ли вы и как это изменить,
Спасибо
Papotyreg
Родился
Сообщения: 9
Зарегистрирован: Чт авг 26, 2021 22:57:07

Re: часы ардуино ds3231 max7219 ds18b20

Сообщение Papotyreg »

novax1, Это не моя разработка, я только немного добавил чужого кода. Я далеко не программист.
Скорость отображения можно менять путем правки строчки else disp=dispTab[second/10];

Код: Выделить всё

 if(hour==22&&minute==55){ //
disp=dispTab2255[second/10]; //
prevTrans=0; // Если режим Авто - дисплей меняется каждые 3 секунды согласно таблице дисплеев
} //[

Режим "АВТО" Включается нажатием кнопки, и идет про счету как "Режим 9", кажется.
Serzh2000, ну программа так и работает. Просто сам текст выходит за рамки самой матрицы, при этом текст статичный. Я бы хотел чтоб если текст занимает больше 32 точек то он отображался как бегущая строка, тоесть чтоб было читаемо.
Я пытался в функцию стринг добавить вот такую часть:

Код: Выделить всё

 int w = showChar(c, font_ru);
for (int i = 0; i < w + 1; i++) {
delay(200);
scrollLeft();
refreshAll();}
Строчка побежала, но по одной букве, по очереди.
novax1
Родился
Сообщения: 7
Зарегистрирован: Пн авг 23, 2021 10:31:41

Re: часы ардуино ds3231 max7219 ds18b20

Сообщение novax1 »

решено спасибо
if(hour==22&&minute==55){ //
disp=dispTab2255[second/10]; //
prevTrans=0; // Если режим Авто - дисплей меняется каждые 3 секунды согласно таблице дисплеев
} //[
Я пытаюсь добавить этот код, но он не работает, вы можете поместить код, который вы изменили
Спасибо
Papotyreg
Родился
Сообщения: 9
Зарегистрирован: Чт авг 26, 2021 22:57:07

Re: часы ардуино ds3231 max7219 ds18b20

Сообщение Papotyreg »

novax1,Попробуйте так. Протестировать не могу но должно измениться
Вложения
Moi_Czasy8x32-50Secund.rar
(32.87 КБ) 295 скачиваний
novax1
Родился
Сообщения: 7
Зарегистрирован: Пн авг 23, 2021 10:31:41

Re: часы ардуино ds3231 max7219 ds18b20

Сообщение novax1 »

Спасибо
novax1
Родился
Сообщения: 7
Зарегистрирован: Пн авг 23, 2021 10:31:41

Re: часы ардуино ds3231 max7219 ds18b20

Сообщение novax1 »

:shock: Привет, друг, часы полностью останавливаются? очень часто.
есть какое-то решение.
Спасибо
Papotyreg
Родился
Сообщения: 9
Зарегистрирован: Чт авг 26, 2021 22:57:07

Re: часы ардуино ds3231 max7219 ds18b20

Сообщение Papotyreg »

novax1, Опишите пожалуйста, подробно вашу проблему, поскольку у меня такого не было. Есть ли какая то закономерность?
Можно даже в личные сообщения писать, так как тема посвящена немного другой прошивке, не очень хочется засорять ее.
novax1
Родился
Сообщения: 7
Зарегистрирован: Пн авг 23, 2021 10:31:41

Re: часы ардуино ds3231 max7219 ds18b20

Сообщение novax1 »

[uquote="Papotyreg",url="/forum/viewtopic.php?p=4084886#p4084886"]novax1, Опишите пожалуйста, подробно вашу проблему, поскольку у меня такого не было. Есть ли какая то закономерность?
Можно даже в личные сообщения писать, так как тема посвящена немного другой прошивке, не очень хочется засорять ее.[/uquote]
Здравствуйте, буду еще несколько дней тестировать, если проблема не исчезнет, ​​постараюсь объяснить проблему.
Спасибо
Аватара пользователя
Serzh2000
Опытный кот
Сообщения: 867
Зарегистрирован: Пт фев 27, 2015 12:00:53
Откуда: Рязанская область

Re: часы ардуино ds3231 max7219 ds18b20

Сообщение Serzh2000 »

так как тема посвящена немного другой прошивке, не очень хочется засорять ее.
да не ребята пишите здесь очень интересно :shock:
anatolyj1970
Родился
Сообщения: 10
Зарегистрирован: Пт сен 03, 2021 16:47:09

Re: часы ардуино ds3231 max7219 ds18b20

Сообщение anatolyj1970 »

[uquote="Papotyreg",url="/forum/viewtopic.php?p=4083156#p4083156"]novax1, Это не моя разработка, я только немного добавил чужого кода. Я далеко не программист.
Скорость отображения можно менять путем правки строчки else disp=dispTab[second/10];

Код: Выделить всё

 if(hour==22&&minute==55){ //
disp=dispTab2255[second/10]; //
prevTrans=0; // Если режим Авто - дисплей меняется каждые 3 секунды согласно таблице дисплеев
} //[

Режим "АВТО" Включается нажатием кнопки, и идет про счету как "Режим 9", кажется.
Serzh2000, ну программа так и работает. Просто сам текст выходит за рамки самой матрицы, при этом текст статичный. Я бы хотел чтоб если текст занимает больше 32 точек то он отображался как бегущая строка, тоесть чтоб было читаемо.
Я пытался в функцию стринг добавить вот такую часть:

Код: Выделить всё

 int w = showChar(c, font_ru);
for (int i = 0; i < w + 1; i++) {
delay(200);
scrollLeft();
refreshAll();}
Строчка побежала, но по одной букве, по очереди.[/uquote]
Часы на Arduino NANO + MAX7219 + FM приемник, добавил дни рождения и сам текст выходит за рамки самой матрицы, при этом текст статичный, где это исправи
Ответить

Вернуться в «АвтоМотоВело»