DIY编程器网

 找回密码
 注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 401|回复: 0
打印 上一主题 下一主题

PIC WWVB时钟设计

[复制链接]
跳转到指定楼层
楼主
发表于 2012-1-18 00:18:42 | 只看该作者 回帖奖励 |正序浏览 |阅读模式
有很多DIY WWVB在网络上的时钟设计的版本。商业的“原子”的钟表价格便宜和广泛使用,但我想试试我的手,在设计一个获得接收到WWVB的洞察和了解一点点编程PIC单片机。我的版本是不是最简单的,但它工作得很好,我认为它提供了一些独特的功能。
  WWVB时钟功能
  接收时间播出WWVB,堡垒Collins,COWWVB时间自动同步与内部时间WWVB信号丢失时保持本地时间这个版本是太平洋标准时间,并自动检测/纠正Daylignt储蓄时间6位数字显示小时,分钟,秒使用1“七段LED显示WWVB同步指示器时间显示在12小时格式的PIC 16F628单片机用C语言编写的软件所有的工具(原理图编辑器,C编译器,PCB布局软件,PIC的程序员都是免费的,在网络上可供下载。
  WWVB信号播出时间为60 kHz载波AM调制代码框架,是每分钟更新一次。数据传输速率是一个比特每秒。随着时间码信息,还包含数据帧同步位,日历数据,UT1之校正,闰年,闰秒的数据 。这里介绍的时钟设计只解码数据的时间和夏令时的校正数据 。该软件可以很容易地被修改,包括其他信息位解码,如果需要的话。的低频率WWVB的信号强度弱,可以接收问题 。信号采集时间是可变的,位置和大气条件而定 。接待处是通常情况下,最好在晚上八时至晚上-上午04时。要使用的时钟,只要接通电源,并等待接收WWVB信号 。时钟接收到一个完整的无差错的数据帧时,它会自动复位,以显示正确的时间显示 。在最初的时间校正,时钟将保持一段时间,即使失去WWVB接待。
  硬件描述
  




  如在原理图所示,时钟的核心是一个PIC 16F628微控制器运行在4 MHz 。解码的实时数据是按顺序输出至七段解码器/驱动程序上的4位数据总线的微控制器(RA0 - RA3)。数据输出顺序秒,分,秒,分钟,小时和10小时10秒10。微控制器输出(RB1,RB2,RB3)路由10微秒stroble的脉冲RB4的出每个七段解码器/驱动程序,在适当的时间锁存数据总线值。秒和10秒显示值每秒更新一次。分钟,10分钟,小时和10小时每分钟更新一次。显示由1“橘红色的LED七段显示器上显示的小数点是用来形成冒号分开秒,分钟,小时,10秒和10分钟显示安装倒挂形成上部结肠点。WWVB接收的C - MAX模型CMMR - 6是从Digi - Key的一部分561 - 1014 - ND完成loopstick天线。从接收器的数据输出采样RB0的微控制器。
  
  



                          
                       
                          
                               
我已经建立了两个时钟,一个使用点,以点布线和使用PCB。两个版本都表现良好。只要保持接收器远离噪声源和电线/走线长度尽可能短,以减小电感。我发现接收器是由电源产生的磁场也很敏感。我用一个9V,200毫安,而不是一个内部电源“壁疣”,以消除这个问题。既包含了主板和一个单一的布局,以节省两个单独的电路板成本上的显示板。从PCB 发送Gerber文件和使用他们的“裸骨”的过程 。“裸骨”的过程中,不包括阻焊也不丝印。切断主电路板显示板,并安装直角到主板和它们连接在一起使用的垫提供 。
  




  




  软件简介
  我用C编译器的源升压开发软件。,从PIC定时器2模块。基本时序设置为接收器采样和内部时间传播提供32个中断/秒。接收到的数据进行采样,每秒32样本。软件交叉关联存储的“理想”样本一,零,和同步模式的输入样本。确定在连续两个连续的同步比特的数据帧的开始。当检测到这种模式,秒的数据被重置为零,后续位或零的提取分钟和小时的数据检测。只有时间显示有关的数据进行解码。内的数据帧不包含时间数据位被忽略。31出的32位检测互相关算法需要接收到的数据和存储的“理想”的同步模式之间的样本协定。开启时同步检测和关闭时同步丢失秒位数的小数点。位和零的检测需要28 32接收到的数据和存储的“理想”的模式之间的样本协议。如果检测到的任何位不符合或超过相关的阈值,整个画面被丢弃,并启动一个新的帧同步搜索。当成功地检测到同步和所有的一帧的时间内数据是,数据被修正为太平洋标准时间和夏令时。该软件必须改变为其他时区的正确更正。还纠正一个WWVB在每个数据帧开始的有效时间所造成的偏移分钟的时间。完全矫正的时间转换为一个12小时的格式,然后更新内部的时间值。如果WWVB信号丢失,内部时间继续从它是依赖PIC晶体振荡器传播时间WWVB,直到下一个数据帧接收和验证。




                          
                       
                          
                               
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友 微信微信
收藏收藏 分享分享 支持支持 反对反对
您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|文字版|手机版|DIY编程器网 ( 桂ICP备14005565号-1 )

GMT+8, 2025-7-20 05:35 , 耗时 0.087698 秒, 19 个查询请求 , Gzip 开启.

各位嘉宾言论仅代表个人观点,非属DIY编程器网立场。

桂公网安备 45031202000115号

DIY编程器群(超员):41210778 DIY编程器

DIY编程器群1(满员):3044634 DIY编程器1

diy编程器群2:551025008 diy编程器群2

QQ:28000622;Email:libyoufer@sina.com

本站由桂林市临桂区技兴电子商务经营部独家赞助。旨在技术交流,请自觉遵守国家法律法规,一旦发现将做封号删号处理。

快速回复 返回顶部 返回列表