2

我想创建一个计时器以在嵌入式系统上运行,并且影响尽可能小。我可以选择在 C、C++、bash 或 python 中实现计时器。计时器中的错误可能是 +/- 几秒钟。

我很想在 bash 脚本中创建一个循环,使用“sleep()”命令和“&”在后台启动它。但是,如果以这种方式实施,我担心/不太明白这是否会使系统保持活动/唤醒。

如果它使系统保持活动/唤醒,是否可以使用 C、C++、python 或使用 bash 脚本的其他方式创建一个不这样做的计时器?

4

2 回答 2

1

You can do timers in a number of different ways.

The simplest is just something like

date "+%s"

Which prints out the timestamp of the system. If the system clock is adequate, then getting two timestamps, one at the start and the second at the end, you can find the elapsed time by finding the difference in these two timestamps.

There are equivalent ways to do this on every language, C, C++, Python etc.

If you're timing a process that ends, you could do something like

TIC=$(date "+%s")
./some-script
TOC=$(date "+%s")
DELTA=$((TOC - TIC))
echo $DELTA

Or alternatively in Python.

In any case, I don't think your sleep idea is the best approach.

于 2012-07-03T19:24:41.287 回答
1

如果您担心嵌入式系统中的系统资源或功耗问题,您绝对应该使用 RTC 来实现定时器。

请参考http://linux.die.net/man/4/rtc

并且,检查您正在使用的操作系统的用户手册。也许有一些函数可以调用。

没有必要重新发明定时器相关的功能。

于 2012-07-04T15:00:34.190 回答