搜索
热搜: ROHM 模拟 车载
查看: 1160|回复: 0

[分享] NB连网过程简介

[复制链接]

该用户从未签到

1347

主题

6657

帖子

0

精华

论坛元老

最后登录
2020-7-26
发表于 2020-4-15 11:24:34 | 显示全部楼层 |阅读模式


本文简要介绍一下基于BC-95 B8的NB模块的UDP联网流程。本文通过串口对模块进行AT指令的传输与控制。

    1.串口的设置:

      波特率为:9600;停止位:1位;奇偶校验位:无;数据位:8位;流控:不进行流控

    2、AT指令的发送流程

        (1)先发送AT:先将指令“AT\r\n”发送给NB模块,待接收到“OK”,表示与模块同步成功;

        (2)发送指令(AT+CGMR\r\n),可接收到模块内部的软件版本号以及”OK“字符,用于确认模块的软件版本是否符合所需求;

         (3)发送指令(AT+NBAND?\r\n),用于确认模块的Bands;

         (4)发送指令(AT+CIMI\r\n),便可获得与模块上SIM卡相关的IMSI号码,可用于确认SIM卡情况;

        (5)发送指令(AT+CFUN?\r\n),用于询问模块是否已开启RF电路来进行无线数据传输,如果返回(+CFUN:0),

则发送指令(”AT+CFUN=1\r\n“)启动模块的RF功能,再发送一次指令(AT+CFUN?\r\n)。直到发送指令(AT+CFUN?\r\n)后返回的是(+CFUN:1)

        (6)发送指令(AT+CSQ\r\n),用于确认当前的信号强度;

        (7)发送指令(AT+CGDCONT=1,"IP","CMCC"\r\n),用于指定对应的APN(此处以移动的为例)

        (8)发送指令(AT+CGATT?\r\n),用于询问模块是否连上对应的运营商网络,如果返回(+CGATT:0),

则发送指令(AT+CGATT=1\r\n)用于启动模块联网功能,然后再发送指令(AT+CGATT?\r\n)询问系统是否已启动联网功能(可每隔2s左右查询多次,直到返回(+CGATT:1),一般重复20次左右)。

        (9)发送指令(AT+CGPADDR\r\n),用于查询模块被分配的IP,用于确认模块已连上运营商网络;

        (10)成功连上运营商网络后,便可发送指令(AT+NSOCR=DGRAM,17,”模块端口号“,1\r\n)来创建socket,等返回打开的socket编号,这里假设打开的是0socket;

       (11)发送指令(AT+NSOST=0,”服务器IP“,”服务器端口号“,”要发送的数据长度“,”要发送的数据“\r\n)来进行数据的发送;

      (12)当模块接收到远程的信号后,模块会自动往串口输出字符串(”+NSONMI:0,”接收到的数据长度“);//0为接收信息的socket

       (13)根据先前接收到的字符串,使用指令(AT+NSORF=0,"接收的数据长度"\r\n)来接收数据;

       (14)如果不使用网络功能,则可以选择通过指令(AT+NSOCL=0\r\n)关闭socket。

      以上便是NB联网传输数据的大致流程。




回复

使用道具 举报

您需要登录后才可以回帖 注册/登录

本版积分规则

关闭

站长推荐上一条 /2 下一条

Archiver|手机版|小黑屋|罗姆半导体技术社区

GMT+8, 2024-5-14 09:20 , Processed in 0.095274 second(s), 12 queries , MemCache On.

Powered by Discuz! X3.4

Copyright © 2001-2024, Tencent Cloud.

快速回复 返回顶部 返回列表