你有没有想过,家里墙上那块钟,为什么从来不用调? 欧洲很多家庭的钟上印着"Radio controlled"几个字。它不靠网络,也不靠手机对时,而是接收一个来自德国的长波时间信号—— DCF77 。这个信号在 77.5 kHz 上,覆盖整个欧洲,用低速数字格式把时间广播出去。 信号不难收,难的是有人愿意认真做 低速数字格式意味着什么?意味着解码它不需要多强的硬件。一颗小小的单片机就能轻松搞定,而 ATtiny 几乎是这类任务里最小的选择之一。 有个叫 kwolf1909 的人,就用 ATtiny 做了一个 DCF77 解码器。它从接收器拿到 DCF77 的比特流,然后把时间显示在一块 I2C 屏幕上。整套东西不复杂,但该做的事一件不落。 接收器本身不在这个项目里。不过单频长波接收器并不是什么难造的东西——这句话的分量在于,它把门槛说清楚了:不是高不可攀,只是需要你动手。 一个按键,两种操作 整个交互只有一个按键,逻辑却分得很清楚: 短按:在显示模式之间循环切换 长按:触发 DCF77 重置 如果用的是引脚足够多的 ATtiny,它还支持外接温度传感器和实时时钟模块。也就是说,这个小小的解码器留了扩展的余地,但没有为了扩展而把基础功能做复杂。 不是所有设备都需要一颗猛兽级处理器 这个项目最让人舒服的地方,恰恰是它的克制。它简单,只把一件事做好。 我们太习惯给每个设备塞进越来越强的芯片了。一块钟、一个传感器、一个只需要对时的场景,真的需要吗?ATtiny 给出的答案是不需要。它用最小的资源完成了任务,而且完成得干净。 如果你有兴趣自己做一个,之前已经有人对 DCF77 信号做过深入拆解,可以顺着往下看。信号本身是公开的,硬件门槛也不高,剩下的只是你想不想动手。 有时候,精准不来自算力,来自你选对了那颗刚刚好的芯片。 特别