Arduino 制作gps轨迹记录仪 最详细的制作过程、代码
为什么要自己做现售的专业记录轨迹的设备有很多从几百元到几千元不等智能手机也可以记录轨迹既然可以这么方便的记录轨迹那自己做轨迹记录仪的好处在哪里呢1、智能手机的待机时间是痛点如果设置不当自动管理后台应用的程序会让地图软件休眠导致熄屏的时候没有记录数据。自制设备开机即记录。2、现售的设备存储空间不是很理想且操作需要主机菜单点击存储路点不方便。自制设备一键记录路点。3、买来的东西没有自己做的东西好玩。设想的功能1、没有屏幕不显示时间等信息调试的时候可以使用屏幕最后成品打包的时候拿掉屏幕。2、tf卡读卡器取数据的时候把卡拔出来。3、物理按钮拨动开关0控制电源、微动开关1控制记录路点、微动开关2控制停止操作tf卡4、用几个led显示当前状态led0显示电源接通、led1显示gps信号、led2显示tf卡5、gps数据纯粹记录log文件不做任何解析使用谷歌地球导入文件。需要的模块1、Arduino uno2、gps模块天线3、tf卡模块4、电池目前设想是一节18650到时候还是要看看待机时间。5、led、按钮等。逐步实现的代码思路1. gps是否解析gps数据这是两个思路如果解析那么就只需要写入$GPRMC和 GPGGA按日期为文件名写入tf卡并节省tf卡的空间然而tf卡有32GB完全不需要考虑容量不解析就拿不到日期写入数据的文件就只能按序列编号递增不便于日后查询。根据从易到难的顺序我还是先不解析待调试完毕第二版增加解析的功能。初级目标就是把原始的gps 数据写入。这步的问题在于如何设置适当的缓冲区把串口信息写入tf卡。中间加一个定时器设定写卡的间隔2. tf卡这步没有什么难度按照官方的例程把线插好测试一下读写即可。尽量把串口信息缓冲到内存减少tf卡的频繁操作。卡里放个配置文件配置记录航点的频率。3. 按钮要学一下端口中断保证系统响应到按钮。这步还是设想。初级版本的代码1、gps部分String s1;//缓存串口字符//读取指定长度的串口字符存入s1如果不解析直接把s1写入卡中charst;while(s1.length()maxLength){if(Serial.available()){stSerial.read();s1String(st);}}用习惯了c#回头再用c来编程处理字符串的时候特别吃力指针和字符数组看的头大如果有支持c#的开发板该有多好。还好后来发现arduino支持String类简化了很多。这里不得不说arduino只有2kB内存缓存600B的串口数据就占掉了三分之一。如果减少缓存就要更加频繁的读写tf卡现在看看其他的开发板零知开发板的内存是20kB是uno的10倍操作一下gps肯定是够了nodeMcu的内存是50kB更是让人激动。不知道这两个板子的上手难度如何淘宝都已下单过几天把玩一下。2、tf卡部分File fSD.open(fileWrite,FILE_WRITE);f.print(s1);f.close();if(s1.length()maxLength){s1;}fileWrite是待写入的文件名由下面的函数判读StringtoWriteFile(){//如果默认文件不存在直接返回默认值if(!SD.exists(gps1001.log)){returnString(gps1001.log);}for(inti1001;i9999;i){//根据递增判断目录中的最大号码的文件名String nString(gps)String(i)String(.log);String n2String(gps)String(i1)String(.log);//Serial.println(check...);if(SD.exists(n)(!SD.exists(n2))){//判断当前的最大号码文件的大小如果过大就递增一个号码longmaxSize900000;File fSD.open(n);if(f.size()maxSize){f.close();returnn2;}else{f.close();returnn;}}}}以上代码已调试完毕可以完美的记录gps轨迹啦等新的开发板到货准备把gps信号解析出来只记录有效信息。

相关新闻

TMSpeech:如何在Windows上实现离线实时语音转文字,保护隐私的同时提升工作效率

TMSpeech:如何在Windows上实现离线实时语音转文字,保护隐私的同时提升工作效率

TMSpeech:如何在Windows上实现离线实时语音转文字,保护隐私的同时提升工作效率 【免费下载链接】TMSpeech 腾讯会议摸鱼工具 项目地址: https://gitcode.com/gh_mirrors/tm/TMSpeech 在当今数字化的办公环境中,实时语音识别已成为提升…

2026/7/24 19:57:00 阅读更多 →
ELF文件与库的原理

ELF文件与库的原理

库的制作和原理 1 ELF文件 ELF文件主要包含以下4种: 可重定位文件(xxx.o) 可执行文件 共享目标文件(xxx.so) 内核转储ELF的文件构成: 1.ELF header:用于定位文件的其他部分 2.Program header table:列举了所有有效段及其属性&…

2026/7/24 19:56:00 阅读更多 →
抖音视频下载终极指南:douyin-downloader批量去水印工具完全教程

抖音视频下载终极指南:douyin-downloader批量去水印工具完全教程

抖音视频下载终极指南:douyin-downloader批量去水印工具完全教程 【免费下载链接】douyin-downloader A practical Douyin downloader for both single-item and profile batch downloads, with progress display, retries, SQLite deduplication, and browser fall…

2026/7/24 19:56:00 阅读更多 →

最新新闻

如何实现城通网盘终极加速:ctfileGet免费高速下载方案详解

如何实现城通网盘终极加速:ctfileGet免费高速下载方案详解

如何实现城通网盘终极加速:ctfileGet免费高速下载方案详解 【免费下载链接】ctfileGet 获取城通网盘一次性直连地址 项目地址: https://gitcode.com/gh_mirrors/ct/ctfileGet 还在为城通网盘下载速度慢、验证流程繁琐而烦恼吗?ctfileGet是一款完全…

2026/7/24 20:03:01 阅读更多 →
系统架构设计师考试:高效备考策略与资源推荐

系统架构设计师考试:高效备考策略与资源推荐

639 | 系统架构设计师考试:高效备考策略与资源推荐 考系统架构设计师,就像参加一场马拉松。 不是比谁起跑快,而是比谁能坚持到最后。 一、考试概览 考试信息 ┌───────────────────────────────────────────────────…

2026/7/24 20:03:01 阅读更多 →
如何通过Wand-Enhancer解锁游戏修改新体验:10分钟完整指南

如何通过Wand-Enhancer解锁游戏修改新体验:10分钟完整指南

如何通过Wand-Enhancer解锁游戏修改新体验:10分钟完整指南 【免费下载链接】Wand-Enhancer Advanced UX and interoperability extension for Wand (WeMod) app 项目地址: https://gitcode.com/GitHub_Trending/we/Wand-Enhancer Wand-Enhancer是一款专为Wan…

2026/7/24 20:03:01 阅读更多 →
如何免费激活Beyond Compare 5:3种高效密钥生成方案全解析

如何免费激活Beyond Compare 5:3种高效密钥生成方案全解析

如何免费激活Beyond Compare 5:3种高效密钥生成方案全解析 【免费下载链接】BCompare_Keygen Keygen for BCompare 5 项目地址: https://gitcode.com/gh_mirrors/bc/BCompare_Keygen Beyond Compare 5是一款广受欢迎的文件比较工具,但30天评估期结…

2026/7/24 20:03:01 阅读更多 →
WarcraftHelper:3步解决魔兽争霸III现代兼容性问题

WarcraftHelper:3步解决魔兽争霸III现代兼容性问题

WarcraftHelper:3步解决魔兽争霸III现代兼容性问题 【免费下载链接】WarcraftHelper Warcraft III Helper , support 1.20e, 1.24e, 1.26a, 1.27a, 1.27b 项目地址: https://gitcode.com/gh_mirrors/wa/WarcraftHelper 还在为经典游戏《魔兽争霸3》在新电脑上…

2026/7/24 20:03:01 阅读更多 →
3步搞定实时语音识别:TMSpeech让Windows电脑变身智能字幕机

3步搞定实时语音识别:TMSpeech让Windows电脑变身智能字幕机

3步搞定实时语音识别:TMSpeech让Windows电脑变身智能字幕机 【免费下载链接】TMSpeech 腾讯会议摸鱼工具 项目地址: https://gitcode.com/gh_mirrors/tm/TMSpeech 还在为会议记录手忙脚乱?想要将语音快速转为文字却找不到合适工具?TMS…

2026/7/24 20:02:01 阅读更多 →

日新闻

用Highcharts 创建可拖拽三维散点立方体3D图表

用Highcharts 创建可拖拽三维散点立方体3D图表

该案例基于Highcharts scatter3d 三维散点图实现空间立方体散点可视化,核心特色:三维 X/Y/Z 三轴空间,所有散点分布在 0~10 立方体空间内;散点使用径向渐变实现立体 3D 圆球质感;支持鼠标 / 触屏拖拽画布,…

2026/7/24 0:00:29 阅读更多 →
AppCertDlls:进程创建路径上的 DLL 入口

AppCertDlls:进程创建路径上的 DLL 入口

AppCertDlls:进程创建路径上的 DLL 入口 AppCertDlls 位于 HKLM\System\CurrentControlSet\Control\Session Manager\AppCertDlls。本文的程序功能是只读列出这个键在 64 位和 32 位注册表视图中的全部值,并显示每条值的来源、名称、类型和可安全显示的数…

2026/7/24 0:00:29 阅读更多 →
我的编程之路:第一篇博客

我的编程之路:第一篇博客

大家好,我是一名编程初学者,同时这也是我编程学习之路上的第一篇博客。在这里,我想要向大家介绍我的一些想法和规划。a.自我介绍我是一个刚刚接触编程的新手,目前在学习c语言,我对编程世界充满了强烈的好奇。当然&…

2026/7/24 0:00:29 阅读更多 →

周新闻

Go语言静态资源打包方案对比与实践指南

Go语言静态资源打包方案对比与实践指南

1. 项目背景与核心需求在Go语言开发中,我们经常需要处理静态资源文件的打包问题。无论是Web应用的模板文件、前端资源,还是配置文件、证书等,都需要随程序一起分发。传统做法是将这些文件与编译后的二进制文件放在同一目录下,但这…

2026/7/24 3:59:20 阅读更多 →
Go语言实现高性能LDAP认证服务的架构与实践

Go语言实现高性能LDAP认证服务的架构与实践

1. 项目背景与核心价值LDAP(轻量级目录访问协议)作为企业级身份认证的黄金标准,已经服务了超过80%的财富500强公司。我在金融科技领域实施统一认证体系时,发现传统Java方案存在启动慢、内存占用高等痛点。而Go语言凭借其协程并发模…

2026/7/24 1:23:39 阅读更多 →
【AI面试官实战指南】:用ChatGPT模拟10类高频技术岗面试,3天提升应答精准度92%

【AI面试官实战指南】:用ChatGPT模拟10类高频技术岗面试,3天提升应答精准度92%

更多请点击: https://intelliparadigm.com 第一章:AI面试官实战指南的核心价值与适用场景 AI面试官并非替代人类HR的“黑箱工具”,而是以可解释、可审计、可迭代的方式,赋能招聘全链路的关键基础设施。其核心价值在于将主观经验沉…

2026/7/24 18:52:18 阅读更多 →

月新闻