cortex-m4的哪个操作系统提供NTPd或类似功能,以实现与GPS-PPS的时间同步



我收到了这3块木板作为礼物。

STM32F407高性能发现板http://www2.mouser.com/Search/ProductDetail.aspx?R=STM32F4DISCOVERYvirtualkey51120000virtualkey511-stm32f4发现

STMicroelectronics STM32F411 Nucleo板http://www2.mouser.com/Search/ProductDetail.aspx?R=NUCLEO-F411RE虚拟机51120000virtualkey511-NUCLEO-F411RE

STM32F429发现套件板http://www2.mouser.com/Search/ProductDetail.aspx?R=STM32F429I-DISCO虚拟机51120000virtualkey511-STM32F429I-DISCO

他们有这些CPU:

STM32F407@168 MHzSTM32F411@100 MHzSTM32F429@180 MHz

我也有一个很好的GPS模块与串行和PPS输出。我想知道这些CPU/板中是否有一个小型Linux版本,允许我配置NTPd服务,使内部时钟与GPS同步,就像在树莓PI等其他板上看到的那样。

据我所知,NTPd通常也使用网络接口与其他时间服务器连接或在网络上发布信息。这些板没有网络芯片/连接器,实际上我对将它们与外部世界连接不感兴趣。我只会在选择板上使用同步时钟。

作为小型linux版本的替代品,使用不同的嵌入式或实时操作系统,这是否可行?

还是仅使用NTPd端口?

谢谢

添加文本:

我想找到重复使用任何现有代码的最佳方法,从gps获取时间,写入rtc并同步到PPS。

我知道通过串行读取GPS接收时间并写入rtc很容易,但我还需要使用PPS信号的同步逻辑,以在我的预算限制内获得尽可能低的抖动。

我需要省钱,不能买现成的设备。如果我能避免使用操作系统,坚持使用较小的操作系统,比如RTOS、嵌入式或自定义代码。。。我会很高兴的:-)

我提到NTPd是因为它是我唯一知道的(我的局限性)允许这些东西(加上其他东西)的东西。

其他人是否已经"剥离"了PPS同步相关的代码部分?还是它们实际上是NTPd的核心,PPS只是一个插入式的额外来源,就像网络服务器一样?

请注意,我是NTPd内部工作的新手。我只是按照网络可用的说明在树莓派上配置了gps-pps ntpd同步来测试这个概念,但这并不能让我。。。NTPd专家:-)

我想你可以读取GPS输出来获得时间,然后你应该使用GPS接收器的PPS输出作为RTC的触发器-这样你只使用实际的"值"一次,然后每当PPS线上出现边缘时,RTC计时器就会增加。要做到这一点,只需将此信号连接到OSC32_IN输入,将RTC配置为使用"外部时钟"(而不是"外部晶体"!),并将预分频器设置为0。我认为你再准确不过了。。。

最新更新