本帖最后由 techff 于 2020-4-21 11:35 编辑

这个小制作是基于ublox6 高精度GPS模块 的手持设备 。

主控是采用的STC12C5A60S2,外设有AD采集和PWM脉冲输出刚好可以用来采集电池电量和调节液晶背光,感觉不错就采用了这个MCU。

采用AT24C64记录轨迹信息,包括日期时间、经度纬度在内的一组信息,可存储512条,自动记录模式下1min/条,可存储8个多小时。

由于GPS的方位信息不实很理想,就加了指南针模块,结果效果也不是很好,硬件电路对其影响过大,下面在详细介绍。

软件加看门狗,增加系统可靠性。。。。。。

按键1:短按:可见卫星信息(为型号和卫星性噪比参数);长按(运行|暂停)。
按键2:短按(记录当前坐标信息);长按(暂停时长按键删除所有数据)。
按键3:短按(无);长按(记录模式切换手动H/自动A90S/A60S/A30S/A10S)
两个侧键是分别背光亮度加和背光亮度建

刚开始的时候做的第一版:(硬件是各种问题)

第一版自己做的的PCB电路

1.jpg
焊接完成等待调试
1.jpg
串口问题,没办法,只好在做个板子粘在上面了。后来发现是电容问题。

由于硬件上出现的各种问题不得不该做第二版了,第一版硬件真是做的太挫了。


第二版PCB
1.jpg
开机中

1.jpg 刚开机读取上次存入的坐标数 2.jpg 1.jpg
用的是手机电池供电,充满电点该能使用5个小时左右吧,系统功耗大概200多mA。
2.jpg
定位数据上传:
1.jpg
上位接收的数据可以生成KML文件,可以直接在Goole earth(谷歌地球)中打开这是我在学校操场记录的数据,在谷歌地球上生成的轨迹:

1.jpg
程序源码是按照自己编程习惯写的,自己还处在学习阶段中间还加有注释所以程序一般有C语言基础的人都能读懂,感兴趣可以DIY一个。
4.jpg
资料下载链接:链接:http://pan.baidu.com/s/1kVnpZdt 密码:w0iz

来源:网络,ndiy