我的NTP客户端的DIY观看选项

由于在以前的出版物中从未涉及到最终产品,因此我建议使用自己的版本。铁不是我的专业,所以请不要严格判断。

所以,为了。当我对手表的钟爱和确切的时间到达终点时,就决定实现梦想。搜索开始寻找价格实惠的带有以太网的开发板。带有Linux的Rapsberry似乎是“麻雀大炮”,所以我在Netduino论坛上提出了一个问题,因为现在我坐在C#上,在微控制器上运行字节码很有趣。但是可惜,论坛的唯一主持人显然是去度假了,他花了好几个星期才批准并发布了我的第一条信息。不好,不好...在速卖通上订购了Arch Pro板和其他遗失的车身套件。那时,它是最实惠的解决方案。恩智浦LPC1768微控制器安装在板卡本身(Cortex-M3内核)上,另外还安装了LPC11U35(Cortex-M0),以便于与其软件进行通信。制造商本身提供了在线IDE,他们的服务器上也进行了编译,固件被下载并以USB闪存驱动器上的文件形式下载到板上,没有调试器,所以我当然开始使用Keil uVision(一个试用版)开发该项目。固件和调试微控制器仅需要micro-USB电缆。

选择了DS3231作为实时时钟,它以现成的模块通过I2C进行通信的形式出现:

Rtc

出于某种原因,这个神秘的模块仅在逻辑分析仪连接并加电后才能工作(我使用哈尔科夫公司的Logic-U ISL):

经历

在信号线和V +之间应该有10K电阻,该模块使用兆欧姆。我不知道是哪种假人,而不是电阻组件和LED永不点亮。该模块的焊接电阻恢复了,但是总体农场阈值超过了一定限度,因此开发了一个类似于Arduino“屏蔽”的板

屏蔽



方案

分段显示器被用作指示器-这种尺寸(高度为0.8英寸)仅带有白色LED,从其所有文档中看,中国人仅提供了带有引脚排列的吉普车,排除法必须猜出一些难以理解的字符。控制器由著名的MAX7219采用,并通过SPI进行通信。

案例...当然,在新年假期,手头没有3D打印机或激光切割。我本人看到一个8毫米的有机玻璃躺在周围。

最后阶段的绝望时刻:

哎呀

最终产品视图:

结束

时钟通过DHCP接收IP地址(路由器将它们分配给我)。NTP服务器是随机选择的。每25小时要求一次时间(我的提供商在晚上同一时间断开与Internet的连接,因此我不想进入这段时间)。由于时区法规的不断变化,我决定不执行到夏令时和冬令时的过渡,两个按钮只是将UTC的偏移量减少或增加了一个小时。偏移量记录在微控制器的EEPROM中。此外,时钟还由3V锂电池备份,因此电源和互联网中断都不是问题。板上的四个彩色LED用于指示Internet,硬件或运行时错误。

github上固件的源代码:https :

//github.com/sapozhnikov/eclock

Source: https://habr.com/ru/post/zh-CN384127/


All Articles