分享

教你制作带显示屏的GPS无线同步校时母钟

 leafcho 2019-04-06
(此处已添加圈子卡片,请到今日头条客户端查看)

这个母钟的主要特点是:增加了显示部分;为了缩小体积,选定了2款型号的GPS模块。

显示模块的选择

我在选择使用什么来做显示时,也煞费苦心。为了使显示的信息尽量直观、明了,设置尽量方便,首先考虑使用点阵型液晶屏,这样可以显示汉字信息。测试了几款液晶屏,虽然显示没什么问题,但总觉得差点什么,直到有一天我看到OLED显示屏的显示效果后,立即就让我产生了“舍它其谁”的念头。

教你制作带显示屏的GPS无线同步校时母钟

图27.1 OLED屏正面

教你制作带显示屏的GPS无线同步校时母钟

OLED屏反面

OLED,即有机发光二极管(Organic Light-Emitting Diode),又称为有机电激光显示(Organic Electroluminesence Display, OELD),其显示技术与传统的LCD显示方式不同,无需背光灯,具备轻薄、省电等特性。从2003年开始,这种显示屏在一些小型数码产品中广泛使用。最终我找到一款单蓝色的128像素×32像素分辨率的OLED屏(见图27.1),笔者使用的这个1.11英寸的OLED屏内部绑定的是PT6866驱动芯片,其驱动指令和SSD1305兼容,但其外围电路不同,如图27.2所示。

31个引脚定义如表27.1所示。

教你制作带显示屏的GPS无线同步校时母钟

表27.1

OLED屏一般需要外接驱动高压,本制作使用的这个屏需要7.5~12V的直流高压,电流10mA以内,并使用了PT1301做DC-DC变换,电压输出在9V左右,具体元件参数选择可以参考PT1301的数据手册进行计算。在驱动方式上,为了使电路连接简单,使用了串行数据驱动,最终电路如图27.3所示,最终设计出的PCB见图27.4。制作该电路所需的元件明细见表27.2。

看OLED屏的实物图我们会发现,其连接方式是那种比较娇气的柔性PCB焊接方式,每个焊脚之间的间距是1mm。在焊接时要非常注意,先将屏反面的双面不干胶保护纸揭去,对准PCB上的焊盘后小心地贴上去固定,再仔细快速地焊接,以免损坏焊脚而报废。为了防止在调试过程中因为外力造成引脚连接断裂,使用一种柔软透明的硅胶将引脚进行了加固,效果不错(见图27.5)。

GPS模块的选择

教你制作带显示屏的GPS无线同步校时母钟

图27.2 PT6866驱动电路

在综合价格、体积、性能等因素后,选择了采用丽台的LR9808或者天宝的Lassen SQ/IQ GPS模块,因为此 PCB的设计可以兼容二者,任选其一焊上去即可,通信速率固定在9600bit/s。

教你制作带显示屏的GPS无线同步校时母钟

表27.2 显示驱动电路元器件列表

LR 9808 是Leadtek(丽台)公司推出的一款功能强大、性能卓越的OEM模块。使用的是SIRF II 7451芯片,具有结构小巧、性能优良等特点,低功耗12通道并行接收。接口采用串行TTL电平,数据格式可支持标准的NMEA-0183,不需电平转换即可与MCU直接连接。该模块的外部有金属屏蔽盖保护,在嘈杂环境下可保证最佳性能。外形尺寸为 24mm×20mm×5mm,功耗为215mW,供电电压3.3V。

GPS9808的引脚排列如图27.6所示,各引脚的功能如表27.3所示。

教你制作带显示屏的GPS无线同步校时母钟

图27.3 显示驱动及供电电路

教你制作带显示屏的GPS无线同步校时母钟

表27.3

Lassen SQ/IQ 是美国 Trimble(天宝)公司生产的商用GPS模块,接口采用串行TTL 电平,数据格式可支持标准的NMEA-0183,该模块的外部也有金属屏蔽盖保护,内置有天线短路检测和保护电路。模块外形尺寸为26mm×26mm×6mm,功耗仅为120 mW,供电电压3.3V。

教你制作带显示屏的GPS无线同步校时母钟

图27.4 显示驱动及供电电路PCB

教你制作带显示屏的GPS无线同步校时母钟

图27.5 焊接完成的显示驱动及供电电路板

IQ在性能上比SQ要好,最大的区别是:IQ是并行12通道,SQ是并行8通道。如果拆开就会发现,他们使用的芯片是不一样的,见图27.7。

SQ和IQ的外部尺寸、引脚排列都是一样的,可以完全兼容(见图27.8)。各引脚的功能如表27.4所示。

教你制作带显示屏的GPS无线同步校时母钟

表27.4

教你制作带显示屏的GPS无线同步校时母钟

图27.6 GPS9808的引脚排列

控制电路规划设计

控制电路系统规划如下。

(1)因为使用128×32OLED显示屏来显示,考虑到一些汉字的点阵信息需要占用不少空间,MCU选择AVR的ATmega32L,为了保证MCU和GPS模块串口通信的准确、可靠,使用外部11.0592MHz晶体振荡器。

(2)OLED使用时间长了会有光衰的现象,为了尽量延长OLED屏的使用寿命,在程序菜单里可以对显示亮度进行16级调整,同时增加3组自动开关显示时段设置。比如可以这样设置:07点开显示—08点关显示、11点开显示—14点关显示、17点开显示—23点关显示。

(3)正常状态下,屏幕用大数字显示所设置时区的时间信息,右边用小字符显示同步卫星数量、时区、是否同步、发射次数等信息。

教你制作带显示屏的GPS无线同步校时母钟

图27.7 美国Trimble商用GPS模块

教你制作带显示屏的GPS无线同步校时母钟

图27.8 SQ和IQ的引脚排列相同

(4)程序菜单里可以对同步发送间隔进行设置,范围为1~99min。

(5)程序菜单里可对24时区进行设置。

(6)安排4个按键,方便设置、操作。

设计的控制电路原理如图27.9所示,制作这个电路所需的元器件见表27.5。

教你制作带显示屏的GPS无线同步校时母钟

表27.5 控制电路元器件列表

整体安装、调试

在绘制PCB的过程中,我也为这款母钟找了一个小的铝合金外壳(见图27.10),仔细量好尺寸后,确定PCB的结构、外形尺寸,以保证最终制作好的成品PCB刚好能插入外壳的导槽内。

在绘制好的PCB上(见图27.11),左边放置4个操作按键,右边放置一个外接电源插座。使用游标卡尺仔细测量好开孔尺寸后,通过ArtCAM Pro软件(见图27.12)生产刀路,导入MACH3控制雕刻机在铝板上铣出外壳两边的侧盖板以及侧盖板上的按键孔和天线、电源插孔(见图27.13)。

教你制作带显示屏的GPS无线同步校时母钟

图27.9 控制电路原理图

教你制作带显示屏的GPS无线同步校时母钟

图27.11 控制电路的PCB

同时还要使用雕刻机在面板上铣出一个方孔,以便安装OLED屏(见图27.14)。将焊接好驱动的OLED显示屏测试无误后(见图27.15),对准铣好的方孔安装在前面板上,使用透明的硅胶将它固定好(见图27.16)。

接下来,将主电路板焊接好后就可以组装起来了(见图27.17)。OLED显示屏驱动板和主板之间是通过8芯的柔性FPC排线连接,拆卸、安装比较灵活、方便,连好排线后,将外壳和面板安装起来(见图27.18)就大功告成,可以通电测试了。组装好后的实际效果见图27.19。

教你制作带显示屏的GPS无线同步校时母钟

图27.10 我找到的铝合金外壳

教你制作带显示屏的GPS无线同步校时母钟

图27.12 使用ArtCAM Pro软件生成刀路

教你制作带显示屏的GPS无线同步校时母钟

图27.13 用雕刻机在铝板上铣出外壳需要的孔

教你制作带显示屏的GPS无线同步校时母钟

图27.14 用雕刻机在面板上铣出一个方孔

教你制作带显示屏的GPS无线同步校时母钟

图27.15 测试焊接好驱动的OLED显示屏

教你制作带显示屏的GPS无线同步校时母钟

图27.16 将OLED显示屏对准方孔装上

制作注意事项

(1)该母钟供电是直流稳压5V,不要超过5.5V,外接电源插座是3.5mm规格,电源极性是内正外负。

(2)GPS外接有源天线接口选择内镙内针的SMA规格,供电电压为3~5V。因为该母钟是金属外壳,能屏蔽所有的无线射频信号,所以CC1101模块也是采用的外接天线。为了和GPS天线接口区分,防止插错,CC1101模块的433MHz外接天线选择的是内镙内孔的SMA规格。笔者选择的是一种吸盘式螺旋天线,电缆长度3m,见图27.20。

教你制作带显示屏的GPS无线同步校时母钟

图27.17 将系统各部分组装起来

(3)OLED显示屏比较娇气,在安装、焊接的过程一定要轻拿轻放,快速焊接,以免损坏。

子母钟同步测试

将母钟放在窗边,GPS有源外接天线放在窗户边或者窗外,若条件允许,尽量让天线所在位置的可视天空多一些,这样可以大大加快GPS模块的定位速度。经实际测试,有时1min就可以与卫星同步了,有时可能需要20min才能与卫星同步,这与所在地当时天空的卫星所处的位置以及天线放置的环境都有很大关系,不过这对子母钟的工作没有什么影响。CC1101的外接天线可以随便放置,放置离地面高些,效果会好点。图27.21、图27.22是2个LED子钟和一个母钟在同步和未同步时的实物照片。

教你制作带显示屏的GPS无线同步校时母钟

图27.18 将外壳和面板安装起来

系统编程总结及改进

大家可以在今后自己的时钟制作中加入CC1101接收模块,使之成为一个跟随母钟同步校时的子钟。笔者也制作了一大一小两款LED点阵显示的子钟,测试效果非常不错,在小区楼房密集的环境中,实际同步距离可达150m,达到了设计目标。说简单点,子钟只是在普通时钟的基础上增加了一个CC1101模块,程序上做了一点简单处理而已。没有同步信号时,其显示和手动调节功能等与一般的时钟大同小异,这里不再赘述。最后,我重点总结、归纳一下母钟的GPS数据接收、CC1101同步数据发送,以及子钟CC1101同步数据接收模块的程序编制要点和改进思路,方便大家参考制作。

1.母钟程序编制要点

(1)GPS时间数据接收处理部分。GPS时间数据采用串口中断接收,中断可以保证对数据的及时接收处理,避免发生缓冲区溢出而丢失数据包。串口中断每触发一次,就可以从UDR寄存器接收一个字节。

(2)1PPS脉冲信号处理部分。对于1PPS脉冲信号,采用INT0中断进行处理。当此中断触发时,意味着时间的整秒时刻到达。此中断的处理逻辑比较简单,就是将由$GPRMC数据包中解析出的日期时间调整到下一个整秒,这样调整过后的时间更为精确。

例如:由最近一次$GPRMC数据包解析出的时间是2011/07/03 11:10:00.520,当INT0中断触发时,将此时间调整到2011/07/03 11:10:01.000。

(3)CC1101时间同步数据发送部分。从理论上来说,最佳的发送时刻为1PPS脉冲触发整秒中断之后,也就是在INT0中断处理程序中,但为了避免中断处理占用CPU时间过长而影响系统其他部分(例如显示)的正常运行,把同步数据的发送相关代码放在母钟的主函数main中。

教你制作带显示屏的GPS无线同步校时母钟

图27.19 组装好后的实际效果

教你制作带显示屏的GPS无线同步校时母钟

图27.20 吸盘式螺旋天线

教你制作带显示屏的GPS无线同步校时母钟

图27.21 未同步状态

教你制作带显示屏的GPS无线同步校时母钟

图27. 22 同步状态

为了让时间尽可能准确,程序中对发送同步包的时刻进行控制,确保同步包的发送时刻位于最近一次的1PPS脉冲触发中断后的某个时间范围之内(例如50ms),这样子、母钟的时间误差就能始终处于一个较小的可控范围之内(例如:50ms+CC1101传输延迟),为未来进一步进行补偿校正以提高时间精度提供了可能。

CC1101发送数据包采用的是变长格式,而且带CRC校验字节。

2.子钟程序编制要点

子钟程序重点是CC1100时间同步数据接收部分。CC1100时间同步数据的接收也采用中断方式实现,由CC1100接收模块的GDO引脚提供中断源,实际中采用了INT0中断,这种方式确保了在第一时间就能接收和处理同步数据。

3.程序方面可能的改进

(1)可靠性。经过长达几个月的测试,在实际工作中,CC1101在长期的工作中可能会存在偶尔死机的现象,今后可以考虑采取如下方法改进。

母钟:定期对CC1100进行复位,以提高系统长期工作的可靠性。

子钟:定期或超过一定时间没有接收到母钟的同步数据后,对CC1100接收模块进行复位。

(2)时间精度。母钟:通过定时器精确测量发送时刻和1PPS脉冲触发中断时刻的间隔,并将此间隔作为同步包中的毫秒字段进行传送(目前未使用毫秒字段)。

子钟:对CC1100传输延迟进行计算、估计,然后对时间予以补偿,以进一步减小时间误差。

(3)扩展信息。在母钟上接入温度、湿度、风力、风向、雨水等传感器,可以很简单地将其功能进行扩展,将子母钟系统打造成一个小小的无线气象站。

相关源程序可到qq群657864614进行下载。

划重点:现收集整理了1300G电子技术资料,一口价68元,需要的朋友可以点击我的头像,私信我!

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多