野牛NBIOT 环境监测项目---BC35/BC95模块联网收发数据(三)

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/weixin_43459881/article/details/83243015

经过前面两个章节的介绍,如果认真看的同学们对本项目以及NBIOT的操作应该有一点基础了,从这里开始,走上实战操作快车道,一步一步的安装例程做即可
步骤一、将配套的移动卡插入背面的卡槽内,插入的方式见下图:
在这里插入图片描述
步骤二、将开发板用Micro USB线连接到电脑,通电前请将SIM卡插入。首次使用可能需要安装串口驱动,驱动文件在《6.软件工具\USB-CH340驱动》文件夹下,安装驱动的界面如下:
在这里插入图片描述
点击安装,之后弹出预安装成功,表示完成!
步骤三、打开串口工具,这里推荐选择正点原子的XCOM,用下来还不错,资料的路径为《6.软件工具\串口工具\XCOM(正点原子 推荐使用)》。由于该软件是基于.net做的,如果电脑中没有安装 .net Framework 4.0,需要先安装《dotNetFx40_Full_x86_x64.exe》文件,安装流程就是双击,一路默认选项即可
步骤四、串口设置,打开的界面如下:在这里插入图片描述
串口选择下拉框选择USB-SERIAL CH340,具体哪个COM依据设备不同而不同,波特率选9600,停止位选1,数据位选8,这就是我们常说的串口配置,9600 8N1,之后打开点击"打开串口"按钮即可。
这里再啰嗦几句,有些初学者不知道串口选哪个,经常选COM1,目前有些电脑(特别是老一点的台式机)自带一个串口,默认是COM1,我们要选的是CH340 USB串口对于的COM口,对于小白的话,其实可以拔掉,看下拉框哪个少了哪个,之后再插上就选择哪个。
步骤五、开发板上为了方便用户调试NBIOT,故通过两个开关来选择NBIOT的串口接到MCU上还是板载的CH340 USB转串口上,如果是接在MCU上,用户通过STM32L4的串口操作NBIOT;如果是接在CH340上,那么可以通过PC的上位机串口工具操作NBIOT,这里我们先通过上位机串口工具来操作NBIOT,具体拨动位置见下图:
在这里插入图片描述
步骤六、串口下发AT指令,先发送"AT"指令,如果在串口工具接收区界面看到OK,那么模块工作正常。这里需要注意点,发送前需要勾选发送新行选项。
步骤七、连接网络
1、依次发送如下指令

AT指令 含义说明
AT+CIMI 获取SIM卡的IMSI号,正确返回表示SIM工作正常
AT+CMEE=1 启用报告ME 错误码
AT+CSQ 获取信号强度,正常情况下返回+CSQ:21,99,其中的21该值表示信号强度,每个地方是不一样的,正常的值是2到31。如果小于12,表示信号不是非常好,存在数据发送或者接收失败的可能性
AT+CEREG? 查看注网是否成功,这里需要返回0,1表示成功,其他值表示失败,特别是在模块复位(包括上下电)之后一段时间内需要等待模块注网成功,大约5~20秒时间不等。

2、通过私有云服务器建立TCP服务
云服务器推荐阿里云,用来下不错。这里需要强调一点,目前电信不支持任意IP地址连接,所以不能连接到私有的服务器上
在服务器端用工具软件PortHelper.exe《6.软件工具\网络调试软件》创建一个TCP服务端socket,端口号可以任意指定(0到65535),比如8888
在这里插入图片描述
到此网络服务创建成功。
这里需要注意的两点是,一、阿里云的服务器端,有一个网络安全组(类似防火墙),默认情况下是把这些端口都关闭掉了,如果使用自定义的端口号(如8888),需要在安全组里面把这个打开,不然NBIOT连接是会失败的;二,这个软件是运行在云端服务器上,对于没了解过云端服务器的同学们,可以加群进行交流。
3、通过AT指令TCP SOCKET发送数据

AT指令 含义说明
AT+NSOCR=STREAM,6,35000,1 创建TCP Socket指令,其中第一个参数为Socket type,DGRAM表示UDP,STREAM表示TCP;返回Socket id号,下一条指令会用到
AT+NSOCO=Socket id,IP 地址,port号 与远端服务器建立TCP建立指令,这里的Socket id是AT+NSOCR返回的,数值,比如有多个Socket的时候,通过这个id来唯一标识,IP地址就是服务器的地址,port号就是8888,例如:AT+NSOCO=2,106.14.XXX.XXX,8888
AT+NSOSD=2,17,48656C6C6F2059654E697520494F540D0A 发送数据指令,同样第一个参数为Socket id号,第二个参数为后续发送数据的长度,注意这里是10进制,而且是字符串ASCII码字节长度;第三个参数,表示ASCII码数据,比如这里发送的内容是Hello YeNiu IOT,发送成功后,在云端服务器上的PortHelper软件即可看到收到的数据。

4、通过AT指令取数据
服务器可以向NB设备端发送数据,紧接着上一个步骤,在服务器端向NBIOT设备发送数据,设备端会收到“+NSONMI:2,7”其中第一个参数2表示前面的Socket id,7表示收到7个字节数据,然后我们需要用如下指令获取

AT指令 含义说明
AT+NSORF=socket,req_length 其中第一个参数表示socket id,第二个参数表示取数据的长度,可以不一次性取完,只要复位/下电前取都可以。

到此,通过串口助手操作NBIOT,进行TCP收发数据介绍完毕,同学们有问题的,可以加后面的群,群主将为你解答


有问题可以加入QQ群或者淘宝店铺旺旺联系:
野牛物联网
QQ交流群:897268542
淘宝店铺(点击跳转链接)

猜你喜欢

转载自blog.csdn.net/weixin_43459881/article/details/83243015