Заголовок сообщения: Re: часы ардуино ds3231 max7219 ds18b20
Добавлено: Чт окт 29, 2020 21:33:31
Родился
Зарегистрирован: Сб май 09, 2020 21:45:21 Сообщений: 5
Рейтинг сообщения:0
Скажите Пожалуйста. как выставить дату точнее 10 месяц с помощью кнопок. этот месяц проскакивает?не выставить ноль в еденицах месяца. (заменил батарейку в модуле часов и 10 месяц выставить не могу)
Качественное и безопасное устройство, работающее от аккумулятора, должно учитывать его физические и химические свойства, профили заряда и разряда, их изменение во времени и под влиянием различных условий, таких как температура и ток нагрузки. Мы расскажем о литий-ионных аккумуляторных батареях EVE и нескольких решениях от различных китайских компаний, рекомендуемых для разработок приложений с использованием этих АКБ. Представленные в статье китайские аналоги помогут заменить продукцию западных брендов с оптимизацией цены без потери качества.
Компания EVE выпустила новый аккумулятор серии PLM, сочетающий в себе высокую безопасность, длительный срок службы, широкий температурный диапазон и высокую токоотдачу даже при отрицательной температуре.
Эти аккумуляторы поддерживают заряд при температуре от -40/-20°С (сниженным значением тока), безопасны (не воспламеняются и не взрываются) при механическом повреждении (протыкание и сдавливание), устойчивы к вибрации. Они могут применяться как для автотранспорта (трекеры, маячки, сигнализация), так и для промышленных устройств мониторинга, IoT-устройств.
Здравствуйте. Помогите пожалуйста. Я не много переделал часы, исходник с амперки, под свои нужды. Добавил датчик давления ВМР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 пробел между символами) } // }
Здравствуйте. Помогите пожалуйста. Я не много переделал часы, исходник с амперки, под свои нужды. Добавил датчик давления ВМР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 пробел между символами) } // }
Привет друг, когда это режим «Р-АВТО»? Можно менять скорость отображения, меняется очень быстро. спасибо, хорошая работа.
Именно то, что я имел в виду, время длительности 2 секунды можно увеличить, чтобы оно не менялось так быстро, Можете ли вы сказать мне, можете ли вы и как это изменить, Спасибо
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();}
if(hour==22&&minute==55){ // disp=dispTab2255[second/10]; // prevTrans=0; // Если режим Авто - дисплей меняется каждые 3 секунды согласно таблице дисплеев } //[
Цитата:
Я пытаюсь добавить этот код, но он не работает, вы можете поместить код, который вы изменили Спасибо
novax1, Опишите пожалуйста, подробно вашу проблему, поскольку у меня такого не было. Есть ли какая то закономерность? Можно даже в личные сообщения писать, так как тема посвящена немного другой прошивке, не очень хочется засорять ее.
novax1, Опишите пожалуйста, подробно вашу проблему, поскольку у меня такого не было. Есть ли какая то закономерность? Можно даже в личные сообщения писать, так как тема посвящена немного другой прошивке, не очень хочется засорять ее.
Цитата:
Здравствуйте, буду еще несколько дней тестировать, если проблема не исчезнет, постараюсь объяснить проблему. Спасибо
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();}
Строчка побежала, но по одной букве, по очереди.
Часы на Arduino NANO + MAX7219 + FM приемник, добавил дни рождения и сам текст выходит за рамки самой матрицы, при этом текст статичный, где это исправи
Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 18
Вы не можете начинать темы Вы не можете отвечать на сообщения Вы не можете редактировать свои сообщения Вы не можете удалять свои сообщения Вы не можете добавлять вложения