标签:thread 引脚 sim7670 低功耗 修改 sim76xx 软件包 device GPS
AT Device神器简介
AT device 软件包是由 RT-Thread AT 组件针对不同 AT 设备的移植文件和示例代码组成,目前支持的 AT 设备有:ESP8266、ESP32、M26、MC20、RW007、MW31、SIM800C、W60X 、SIM76XX、A9/A9G、BC26 、AIR720、ME3616、M6315、BC28、EC200X、M5311、L610系列设备等,目前上述设备都完成对 AT socket 功能的移植,及设备通过 AT 命令实现标准 socket 编程接口,完成 socket 通讯的功能。
开发之前推荐先阅读官方AT命令部分的官方文档,对整体概念和开发方法有个整体的了解。
AT Device开启步骤
AT Device软件包自带SIM76XX的支持,开启方法如下:
1、在scons --dist命令生成的dist目录中运行menuconfig,选中软件包。
建议不选择Enable sample,sample文件名为at_sample_sim76xx.c,随后可以自己打开参考。后续我们会在port目录下建立port_sim76xx.c用于向at系统注册设备,采用我们自定义的名称和引脚。
2、运行pkgs --update自动下载软件包
3、运行scons --target=mdk5生成工程
4、参考软件保重sim76xx的例子,添加注册代码,并加入工程。
针对官方驱动,我们做了哪些修改
1、修改了电源管理引脚的定义。
官方手册上这样定义上电时序,对于低功耗应用通常我们会控制VBAT,因此就是三个控制引脚。VBAT、PWRKEY、STATUS。因此我们修改struct at_device_sim76xx结构的控制引脚为三个,并修改上下此电时序以满足手册要求。
同时支持不配置电源引脚,不配置status引脚的情况。
2、sim76xx_netdev_set_info函数中获取IP地址时增加重试,避免网络条件不好的时候获取IP地址慢导致整体失败
3、修改sim76xx_init_thread_entry注释掉AT+CREG?过程,直接使用AT+CGREG?检测网络状态,电信卡来说AT+CREG总是失败
4、修改sim76xx_init_thread_entry把设置PDP context放在检查网络状态之前
5、增加控制GPS电源开关和获取GPS坐标的代码
GPS采用模块内部控制的方式,这样才能利用模块内部的GPS热启动、AGPS等功能。
新增GPS上下电的命令字。
实现GPS上电代码
实现GPS断电代码
如果GPS已经开启,优先从GPS获取坐标,不成功或没有开启则采用基站定位。
标签:thread,引脚,sim7670,低功耗,修改,sim76xx,软件包,device,GPS 来源: https://www.cnblogs.com/lishen2/p/15864499.html
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。