LCD 1602 и DS 1303 изменить формат отображаемых цифр

Pavelkp
Offline
Зарегистрирован: 11.07.2019

Добрый день Уважаемые форумчане! Пожалуйста подскажите кто знает: Суть в следующем - подключил к arduino nano модуль часов реального времени SD 1302 с выводом на дисплей LCD 1602 (подключен по I2C шине) . Все работатет, но возникла одна заморочка и я никак не могу почему, что нужно добавить или зменить - когда выводятся  часы, минуты, секунды меньше 10, то на дисплее отображается например 1, 5,3, 4, итд. а надо 01, 02, 03, итд т.е должен быть впереди если число менее 10... Так вот как этот ноль добавить, почему так выводиться? Вчем проблема, может дисплей такой или библиотека корявая(была еще одна библиотека для LCD1602 I2C? но с ней вообще только один символ на экран выводился). 

Заранее огромное спасибо все кто ответит.

sadman41
Offline
Зарегистрирован: 19.10.2016
if (10 > minutes) { LCD.print('0'); }

 

b707
Offline
Зарегистрирован: 26.05.2017

Pavelkp пишет:

может дисплей такой или библиотека корявая

это программист такой (то есть ты) - безрукий :)

этот ноль нужно самому добавлять, библиотека этого за тебя не сделает.

 

DetSimen
DetSimen аватар
Offline
Зарегистрирован: 25.01.2017
void DisplayTime(void) {
char *buf = alloca(8);
sprintf(buf, "%02d:%02d", RTC.getHours(), RTC.getMinutes());
Serial.println(buf);
}

Получение часов и минут уточни в своей биб-ке

sadman41
Offline
Зарегистрирован: 19.10.2016

DetSimen, всё плохому детей учишь... Нет бы просто char buf[8] забацать.

DetSimen
DetSimen аватар
Offline
Зарегистрирован: 25.01.2017

sadman41 пишет:

DetSimen, всё плохому детей учишь... Нет бы просто char buf[8] забацать.

Вот сейчас прям стыдно было... 

Мня оправдывает, что я из своего проекта стянул копипастой. :) 

negavoid
Offline
Зарегистрирован: 09.07.2016

А мне нравится malloc(), пусть лучше 8 байт туда-сюда дёргается, может ещё где пригодятся :)

DetSimen
DetSimen аватар
Offline
Зарегистрирован: 25.01.2017

а ты для начала найди 1 отличие malloc()  от alloca()

sadman41
Offline
Зарегистрирован: 19.10.2016

Вот-вот. Недоучите на свою голову, потом люди аллоки от маллоков отличить не могут и целые деревни на газовых котлах отправляются сажать яблони на Марсе ;))

DetSimen
DetSimen аватар
Offline
Зарегистрирован: 25.01.2017

самое страшное - вместе с котами.  Котиков - жалка. 

Pavelkp
Offline
Зарегистрирован: 11.07.2019

Ранее стаким же дисплеем и модулем часов работал и таких проблем не было....все было ок, а может конечно я и подзабыл ....

"это программист такой (то есть ты) - безрукий :)" - давайте обойдемся без перехода на личности и желательно на "Вы". Да, я, программист пока еще вообще никакой, поэтому прошу совета и помощи.

Pavelkp
Offline
Зарегистрирован: 11.07.2019

Спасибо большое. 

b707
Offline
Зарегистрирован: 26.05.2017

Pavelkp пишет:

"это программист такой (то есть ты) - безрукий :)" - давайте обойдемся без перехода на личности и желательно на "Вы". Да, я, программист пока еще вообще никакой, поэтому прошу совета и помощи.

это не переход на личности, это реакция на твою фразу "наверно дисплей глючит или библиотека кривая".

Если ты сам знаешь. что "программист никакой" - при любых проблемах всегда в первую очередь предполагай, что это ты накосячил и ищи свои ошибки, а не списывай проблемы на железо и библиотеки. Библиотеки в большинстве своем написаны людьми, понимающими в коде заведомо больше тебя, всегда помни об этом.

negavoid
Offline
Зарегистрирован: 09.07.2016

DetSimen пишет:
а ты для начала найди 1 отличие malloc()  от alloca()

Хм, а если найду? malloc() берёт память из кучи и без free() не освободит память по выходу, а alloca() на стэке, и соответственно, освободит.

Почему здесь все такие придирчивые и не понимают аллюзий, аллегорий, упрощений и приближений?

DetSimen
DetSimen аватар
Offline
Зарегистрирован: 25.01.2017

negavoid пишет:

Почему здесь все такие придирчивые и не понимают аллюзий, аллегорий, упрощений и приближений?

Злые патамуш, с перманентного пахмелья. Да и котиков жалка. :) 

DetSimen
DetSimen аватар
Offline
Зарегистрирован: 25.01.2017

negavoid, ты только, ради Бога, ниабижайся, мой пост не про тебя лично. 

negavoid
Offline
Зарегистрирован: 09.07.2016

Ни-ни, деда, я-то знаю разницу, и даже различия с calloc() и valloc() :)

Просто тут и правда все придираются ко всем по незначительным мелочам, ну вот нафига же ж ))

andriano
andriano аватар
Offline
Зарегистрирован: 20.06.2015

Pavelkp пишет:

"это программист такой (то есть ты) - безрукий :)" - давайте обойдемся без перехода на личности...

Вы сами это спровоцировали, обвинив людей, которые знают и умеют много поболее Вашего, в написании кривой библиотеки.