Tinygps库中的millis()函数溢出

时间:2014-02-24 06:05:22

标签: c++ c gps arduino

我正在制作GPS设备,可以运行大约一年而无需重新启动。我正在使用TinyGPS+库。我注意到库中有millis()个函数。所以他们可以溢出。有没有办法避免它?

2 个答案:

答案 0 :(得分:1)

但是你需要知道自节目开始以来的时间或间隔时间。

unsigned long start = millis();
...
// Long running actions....
...
unsigned long stop = millis();
unsigned long interval = stop-start;

只要开始和结束时间不超过49天,这仍然有效。我怀疑你需要计算从程序启动到计数器溢出的间隔。

另见:http://forum.arduino.cc/index.php?topic=122413.0

答案 1 :(得分:1)

您可以使用millis()和long int变量来计算每天的时间,并使用另一个变量来计算每天,然后重置计时器而不是arduino。

有了这个,你不必担心溢出并继续正常工作。