помогите с переменной

kadir544
Offline
Зарегистрирован: 25.11.2015

пытаюсь вывести часы на семисегмент. приходится рисовать каждую цифру побитно на семисегменте. модуль вы3231 дает переменную типа так

 i : Minutes with leading zeros (00 to 59)

я же не могу рисовать 60 цифр мне легче нарисовать 9 а переменную разделить на две переменные одна покажет десятки а другая еденицы и по одному загонять. а как это сделать? (разделить) заранее благодарю за помощь 

qwone
qwone аватар
Offline
Зарегистрирован: 03.07.2016

х 0..59    х1= х/10; x2=x%10; разумеется int х,х1,х2;

kadir544
Offline
Зарегистрирован: 25.11.2015

qwone пишет:

х 0..59    х1= х/10; x2=x%10; разумеется int х,х1,х2;

красава. спасибо

ЕвгенийП
ЕвгенийП аватар
Offline
Зарегистрирован: 25.05.2015

А ещё лучше тоже самое, но через функцию div.

У контроллера нет ни операции деления, ни операции взятия остатка - и то и другое делается программно. Поэтому, когда нужно и то, и другое, лучше не считать два раза, а вызвать div - она выдаст и то, и другое за один просчёт.

kadir544
Offline
Зарегистрирован: 25.11.2015

теперь прдлема в другом. 

Serial.println(clock.dateFormat("s", DateTime)); эта функция вывдит цифры тоесть секунды. и я ничег не мгу с ними поделать. этот "S" вообще не достать. компилятор т ворчит то что конст чар в инт не пойдет то еще что. делить умножать итд не дает

nik182
Offline
Зарегистрирован: 04.05.2015

http://arduino.ru/Reference/Serial/Print

DateTime нет допустимого формата для данной функции. Надо самому разобрать на составляющие и выводить по очереди.

kadir544
Offline
Зарегистрирован: 25.11.2015

nik182 пишет:

http://arduino.ru/Reference/Serial/Print

DateTime нет допустимого формата для данной функции. Надо самому разобрать на составляющие и выводить по очереди.

а как разобрать ?

kadir544
Offline
Зарегистрирован: 25.11.2015

скачал другую библиотеку. кстати советую sodaq ds3231. там все переменные нормально дружат с int. все норм. жаль только с той проблемой не справился просто перешагнул