之前发布了第一版的GPS收音机时钟,虽然主控跟FM收音机是在一个板上,喇叭也在上面,但是板太大,GPS模块也贵,在网店还要买100多
所以就动起改版的念头,顺便把程序整理了一下,程序在source目录里面,原理图及PCB在Hardware目录下,Gerber里面就是给PCB板厂的资料/
此次,线路及PCB也自己动手,但是不会画PCB,之前第1版是请人画的。这次就想自己动手,所以就用PROTEUS做线路及PCB。
话说Proteus虽然是用来仿真的,但是也能画线路及PCB,基本的功能都有。虽然我自己也建了几个器件,不过就将就看吧。
Keil部分也做了些改动,头文件放在Lib里面,程序放在Source里面,HEX放在Output里面。
制作经验:
做了第一版后由于体积太大,就想着要改版,某日在淘宝上看到合适的主控版,就想借用这块主板来做我需要的功能。
顺便把GPS模块改为体积小,价格便宜的UBLOX NEO-6M
由于我第2版的时钟IC把DS1302改成PCF8563,所以程序上就需在I2C通讯上加些控制。刚开始时会时钟不会跑,后来参考网上资料改了下,就能显示了
这次的GPS也是第一次使用,UBLOX的NEO-6M模块,这个模块体积小,价格便宜,也有I2C及UART的输出,只不过我可能I2C没弄好,有时显示的时间会有问题。
在拿到GPS后还蛮开心的,很小的一个模块,就在焊好后却发现我的GPS有问题,只输出类似这样的讯息
$GPRMC,,V,,,,,,,,,,N*53
$GPVTG,,,,,,,,,N*30
$GPGGA,,,,,,0,00,99.99,,,,,,*48
$GPGSA,A,1,,,,,,,,,,,,,99.99,99.99,99.99*30
$GPGSV,1,1,00*79
$GPGLL,,,,,,V,N*64
原本失望的觉得是GPS问题,问了买家,卖家说是没定位,可我明明接了天线了,摆了一整晚还是一样的输出。百度跟谷歌都没用。
后来才发现我用的是有源天线,需要加上电源,所以又问了卖家才知道这个模块除了8,9要接一起之外如果用有源天线,还需要从这两脚经过电阻跟电感到天线。
改完之后...突然时间就捕获到了,顿时一阵高兴。后来又发现我的PCF8563在断电后无法记忆,就飞了线。顺便在PCB档上也修改了。
程序及相关资料
|