gpt4 book ai didi

c - 在 GPIO 上使用 GPS PPS 在嵌入式 Linux 中设置系统时间

转载 作者:太空宇宙 更新时间:2023-11-04 10:58:42 25 4
gpt4 key购买 nike

我在运行 2.6.37 的非联网嵌入式 Linux 板上的 GPIO 上有一个带有 PPS 的 GPS。

我正在努力使系统时钟尽可能准确(最好优于 20us 的准确度)。我已将时间设置在与串行端口 GPS 相差几毫秒的范围内,并希望使用 PPS 来控制时钟(这是正确的术语吗?)

我已经设置了一个捕获 PPS 的中断。

我的中断处理例程是这样的:

struct timeval tv;
do_gettimeofday(&tv);
..check that we're really close to a second mark and adjust tv to the nearest second...
do_settimeofday(&tv);

问题:

执行 do_gettimeofday/do_settimeofday 是否需要大量时间?

这是一种可以接受的计时方式吗?

我知道有 NTP 和 Linux-PPS,但我不想要开销,除非有其他我不知道的微妙的考虑来设置系统时间。

非常感谢。

最佳答案

如果您需要准确可靠的同步,您应该将 ntpd 与 PPS 一起使用。 ntpd 使用经过测试的算法,在编写时考虑到了可靠性。开销可以忽略不计。

关于c - 在 GPIO 上使用 GPS PPS 在嵌入式 Linux 中设置系统时间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27829702/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com