DS3231 Time on Serial Monitor skips 00 when 59 sec arrives -- why?

It is all very well writing code without using a library and I have done that for a DS3231 for a personal project to extend my knowledge. However, if I were to write code that needed maintenance or amendment by someone else I would be more likely to use a library as it almost certainly makes the code easier to understand and update

If you are writing a tutorial on the use of the DS3231 then it would probably be interesting to show how to use it both with and without a library

The matter of not using libraries wasn't my point, my point was:- what is the point of all this? Surely, it has all been done, so isn't this a case of reinventing the wheel and making a square one?

As things are, I'm not advocating dispensing with a library, it just happened to be the first method that worked for me, and I have stuck with it ever since. The code is more efficient, but I don't think there is much in it.

The matter of not using libraries wasn't my point, my point was:- what is the point of all this? Surely, it has all been done, so isn't this a case of reinventing the wheel and making a square one?

Galileo had no idea of telescope. He heard that someone in Europe had made a telescope. He could wait for that gadget to appear; instead, he acknowledged the possibility of making a telescope and he made his own one. What was the point for Galileo to undertake such a painful job of building a telescope from scratch - this was just to enjoy the beauty of the implementation of creative imagination?

There are many Libraries to handle I2CLCD and yet some people are making new libraries. Are they re-inventing the wheel or taking the pain to enjoy the beauty of creation by adding a little bit extra feature?

Let the world be more enjoyable having have more varieties of instances.

The change to checking if the seconds was different as opposed to checking for a difference of exactly 1 (erroneously at that) is similar to

checking for going beyond a value, not meeting it exactly, even if you can see right in front of you that the target value will not be skipped.

and

checking for going beyond a value, not meeting it exactly, like when you might miss an exact millisecond being counted off by millis(); or exactly 12:00:00.

There must be a name for that kind of (sometimes merely defensive) programming.

@GM "Let the world be more enjoyable having have more varieties of instances."

+ 0x1!

a7

This topic was automatically closed 120 days after the last reply. New replies are no longer allowed.