楼主: 驴友花雕
|
[项目] 【Arduino】168种传感器系列实验(209)---移远 BC20 NB+GNSS模块 |
【Arduino】168种传感器模块系列实验(资料代码+仿真编程+图形编程) 实验二百零九:Gravity: I2C & UART BC20 NB-IoT & GNSS通信模块 NB-IoT广域低功耗无线通信 GPS/北斗精准定位 户外物联网必备 项目之五:通过NB模块的LED灯的闪烁来判断信号强度 实验开源代码
|
配置BC20模块的通信接口 开头都有下面一段用于配置通信接口的代码,配合物理接线可配置I2C、UART(硬件)和UART(软件)串口三种不同的通信接口。若不作任何修改,默认使用I2C接口,地址0x33。
|
使用I2C接口时,若出现IIC地址冲突,可修改下面一条语句中的参数0x33以改变IIC地址。可使用的I2C地址共有4个,拨动模块上的拨码开关,调整A0和A1,并修改如下相应I2C地址,复位程序完成修改。 0x30:(A0=0,A1=0) 0x31:(A0=0,A1=1) 0x32:(A0=1,A1=0) 0x33:(A0=1,A1=1) 默认
使用UART(硬件)接口时,波特率为115200,如下取消#define USE_HSERIAL注释,注释掉另外两个宏定义#define,完成硬串口的配置。
使用UART(软件)接口时,波特率为9600,如下取消#define USE_HSERIAL,注释掉另外两个宏定义#define,完成软串口的配置。
调整UART(软件)接口管脚,修改如下两个宏定义#define PIN_TXD和#define PIN_RXD的值,前者配置主控的发送端TXD(与模块的接收端相连),后者配置主控的接收端RXD(与模块的发送端相连)。
|
【Arduino】168种传感器模块系列实验(资料代码+仿真编程+图形编程) 实验二百零九:Gravity: I2C & UART BC20 NB-IoT & GNSS通信模块 NB-IoT广域低功耗无线通信 GPS/北斗精准定位 户外物联网必备 项目之七:获取物理位置精简版(在串口监视器上看到部分卫星信息) 实验开源代码
|
本帖最后由 驴友花雕 于 2021-9-6 08:53 编辑 实验串口返回情况 GNSS定位需要一定时间进行寻星,首次上电通常需要30s以上才能获取有效的定位信息(建议通电3分钟)。 程序通过串口打印GNSS定位的关键信息: 时间(Time): 0:20:38表示当地时间为8时20分38秒(北京时间)**。需要注意的是,这里7时是指格林尼治时间GMT+0,北京时间为GMT+8,需要用户额外加上8小时才能得到北京时间,也可以自行根据经纬度计算出当地时区,从而自动换算出当地时间。 纬度坐标(Latitude):26.088882° N 表示北纬26.088882°,精确到小数点后6位。南纬用S表示。 经度坐标(Longitude):119.323715° E 表示东经119.323715°,精确到小数点后6位。西经用W表示。 海拔高度(Altitude):单位m。WGS84 椭球面为基准。 定位状态(Fix Status):为DGPS或者GNSS时,代表成功定位。 水平精度因子(HDOP):水平分量的相对误差,为纬度和经度等误差平方和的开根号值。数值越小,代表经纬坐标精度越高,一般小于3比较理想。 |
本帖最后由 驴友花雕 于 2021-9-6 09:26 编辑 实验串口返回情况 实验注意事项 1、GPS适用于室外使用,在室内效果很差,窗户边有时也可以使用(实际效果打点折扣)。 2、GPS刚通电时,需要短暂时间用以寻星,刚开始不能准确定位,属于正常。 3、物联网卡在使用时,插入SIM卡时,要注意大小,不需要剪卡,直接扣下来的卡片大小就是合适的。 4、物联网SIM卡不能用于手机、平板、2G/3G/4G模组等非NB-IoT设备,否则会导致SIM卡停机。已机卡绑定的SIM卡不能插入其它设备内进行通信,否则会导致SIM卡停机。物联网SIM卡仅能数据传输,无语音通信和短信功能。 5、注意你使用的板子的内存大小。 |
本帖最后由 驴友花雕 于 2021-9-6 10:15 编辑 【Arduino】168种传感器模块系列实验(资料代码+仿真编程+图形编程) 实验二百零九:Gravity: I2C & UART BC20 NB-IoT & GNSS通信模块 NB-IoT广域低功耗无线通信 GPS/北斗精准定位 户外物联网必备 项目之九:在串口监视器上看到所有完整的卫星信息 (说明:由于UNO内存偏小,有可能出错) 实验开源代码
|
【Arduino】168种传感器模块系列实验(资料代码+仿真编程+图形编程) 实验二百零九:Gravity: I2C & UART BC20 NB-IoT & GNSS通信模块 NB-IoT广域低功耗无线通信 GPS/北斗精准定位 户外物联网必备 项目之十:通过 USB 串口向 BC20 模块发送 AT 命令 实验开源代码
|
常用的AT命令: AT - AT 命令测试 AT+QRST=1 - 重置 BC20 ATI - 固件版本的修订 AT+CSQ - 信号质量报告 0 - <=-113 dBm 1 - -111 dBm 2 - -109 dBm 3 - -107 dBm ... ... 30 - -53 dBm 31 - >-51 dBm 99 - 未知或无法检测 AT+CGATT - PS 附加或分离。查询网络连接状态。 0 - 与网络断开连接 1 - 已连接到网络 AT+CGATT=1 - 连接到网络 AT+CGATT=0 - 断开网络连接 AT+CIMI - 查询BC20的IMSI号 AT+CGSN=1 - 查询BC20的IMEI。 AT+CGSN=0 - 查询 BC20 的 SN(序列号)。 AT+QCCID - USIM 卡标识 (ICCID)。这通常用于检查 SIM 卡状态。 AT+CCLK - 返回当前日期和时间 AT+QPOWD=0 - 关闭模块电源。(使用“myBC20.powerOn()”打开模块电源) 以下 AT 命令用于 GNSS: AT+QGNSSC - 查询GNSS电源状态 0 - GNSS 电源关闭 1 - GNSS 开机 AT+QGNSSC=1 - 打开 GNSS AT+QGNSSC=0 - 关闭 GNSS AT+QGNSSRD - 获取所有 GNSS 信息 更多详情请参考《移远通信BC20 AT指令手册》 或“BC20 GNSS AT 命令手册” |
© 2013-2024 Comsenz Inc. Powered by Discuz! X3.4 Licensed