BC260模块_NB通讯_MQTT

2023-10-14 20:50
文章标签 模块 mqtt 通讯 nb bc260

本文主要是介绍BC260模块_NB通讯_MQTT,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

闲来无事从角落里找出了一个BC260模块,玩了玩发现挺有趣的,于是将调试过程记录下来分享给需要的朋友们。

在这里插入图片描述

1.BC260模块

BC260模块是一款NB-loT无线通讯模块,模块插上物联网SIM卡后可以实现物联网无线通讯功能。
在这里插入图片描述
BC260模块是一款NB-loT无线通讯模块,它使用的是上海移远BC260Y-CN通讯模组。BC260Y-CN 是一款高性能、低功耗且多频段的 LTE Cat NB2 无线通信模块,可支持中国移动 OneNET 平台、中国移动 Andlink 平台、中国电信 AEP 平台和中国电信 IoT 平台等物联网云平台。BC260Y-CN 常被用于烟感、无线抄表、智慧物流、智能停车、智慧路灯、安防、资产追踪、智能家居、可穿戴设备、工业及农业以及其它诸多行业。
在这里插入图片描述
BC260模块使用非常简单,只需要连接5V、GND、TX、RX四个引脚,既可正常工作。最简单的调试方式就是使用一个USB转串口模块连接上述四个引脚,使用串口调试助手就可以正常操作BC260模块。(注意BC260模块的默认波特率,使用正确的波特率)
在这里插入图片描述

2.BC260操作

BC260模块的接口为UART,通过UART口发送AT指令对BC260模块进行操作,AT指令实例如下:

AT+IPR=115200
改指令是将模块的波特率设置为115200
注意指令末尾一定要加上回车换行“\r\n”

本次调试的主要目的是:使用BC260连接MQTT服务器发布消息
注意:连接MQTT服务器的前提是搭建配置好MQTT服务器,服务器的搭建不在本文的描述范围内,感兴趣的朋友可以在网上搜索相关资料
AT指令完整LOGO如下服务器信息不便公开,部分数据被屏蔽):

发→ AT
收← OK发→ ATE0
收← OK发→ AT+QSCLK=0
收← OK发→AT+CSQ=?
收← +CSQ: (0-31,99),(0-7,99)
收← OK发→ AT+CIMI
收←460083501702933
收←OK发→ AT+CGATT?
收← +CGATT: 1
收← OK发→  AT+QMTOPEN=0,"47.109.92.xxx",1883
收←  OK
收← +QMTOPEN: 0,0发→ AT+QMTCONN=0,"liwei_nb","device","devxxx"
收← OK
收← +QMTCONN: 0,0,0发→ AT+QMTPUB=0,0,0,0,"gas/event/31415926",29,"{"id":"31415926","timestamp":"
收← OK
收←  +QMTPUB: 0,0,0

使用串口调试助手经过上述一波指令操作,就可以利用BC260模块连接MQTT服务器,并成功发布一条消息。

3.AT指令说明

通过第二节中的完整AT指令流,就可以连接MQTT服务器发布消息。接下来对关键AT指令进行简单说明。

ATE0
这条指令的作用是关掉模块的回显功能。
AT+CGATT?
这条指令的作用是查询PS域附着状态,必须等待模块完成PS域附着才能进行后续操作
这里必须收到模块回复+CGATT: 1 ,才说明完成PS域附着。
AT+QMTOPEN=0,"47.109.92.xxx",1883
这条指令的作用是连接IP和端口号(服务器信息不便公开部分被屏蔽)
这里必须收到模块回复+QMTOPEN: 0,0 ,才说明正确连接IP
AT+QMTCONN=0,"liwei_nb","device","devxxx"
这条指令的作用是连接MQTT服务器,"device""devxxx"是用户名和密码,这里必须输入正确的用户名和密码。(用户名和密码不便公开部分被屏蔽)
AT+QMTPUB=0,0,0,0,"gas/event/31415926",29,"{"id":"31415926","timestamp":"
这条指令的作用是发布一条消息,"gas/event/31415926"是主题,"{"id":"31415926","timestamp":"是发布的内容。

调试方法
使用串口调试工具对BC260模块进行操作,使用MQTT.fx软件订阅服务器消息。
在这里插入图片描述
我们使用串口调试工具操作BC260模块发布条消息,使用MQTT.fx软件接收消息。
在这里插入图片描述
MQTT.fx软件配置步骤
建立一个新连接
在这里插入图片描述
配置连接名称和服务器地址
在这里插入图片描述

配置用户名和密码
在这里插入图片描述

4.单片机操作流程

本节介绍单片机程序设计。
在这里插入图片描述
创作不易希望朋友们点赞,转发,评论,关注!
您的点赞,转发,评论,关注将是我持续更新的动力!
CSDN:https://blog.csdn.net/li_man_man_man
今日头条:https://www.toutiao.com/article/7149576260891443724

这篇关于BC260模块_NB通讯_MQTT的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/213075

相关文章

python logging模块详解及其日志定时清理方式

《pythonlogging模块详解及其日志定时清理方式》:本文主要介绍pythonlogging模块详解及其日志定时清理方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地... 目录python logging模块及日志定时清理1.创建logger对象2.logging.basicCo

Qt spdlog日志模块的使用详解

《Qtspdlog日志模块的使用详解》在Qt应用程序开发中,良好的日志系统至关重要,本文将介绍如何使用spdlog1.5.0创建满足以下要求的日志系统,感兴趣的朋友一起看看吧... 目录版本摘要例子logmanager.cpp文件main.cpp文件版本spdlog版本:1.5.0采用1.5.0版本主要

Python使用date模块进行日期处理的终极指南

《Python使用date模块进行日期处理的终极指南》在处理与时间相关的数据时,Python的date模块是开发者最趁手的工具之一,本文将用通俗的语言,结合真实案例,带您掌握date模块的六大核心功能... 目录引言一、date模块的核心功能1.1 日期表示1.2 日期计算1.3 日期比较二、六大常用方法详

python中time模块的常用方法及应用详解

《python中time模块的常用方法及应用详解》在Python开发中,时间处理是绕不开的刚需场景,从性能计时到定时任务,从日志记录到数据同步,时间模块始终是开发者最得力的工具之一,本文将通过真实案例... 目录一、时间基石:time.time()典型场景:程序性能分析进阶技巧:结合上下文管理器实现自动计时

如何使用C#串口通讯实现数据的发送和接收

《如何使用C#串口通讯实现数据的发送和接收》本文详细介绍了如何使用C#实现基于串口通讯的数据发送和接收,通过SerialPort类,我们可以轻松实现串口通讯,并结合事件机制实现数据的传递和处理,感兴趣... 目录1. 概述2. 关键技术点2.1 SerialPort类2.2 异步接收数据2.3 数据解析2.

Node.js net模块的使用示例

《Node.jsnet模块的使用示例》本文主要介绍了Node.jsnet模块的使用示例,net模块支持TCP通信,处理TCP连接和数据传输,具有一定的参考价值,感兴趣的可以了解一下... 目录简介引入 net 模块核心概念TCP (传输控制协议)Socket服务器TCP 服务器创建基本服务器服务器配置选项服

Qt 中集成mqtt协议的使用方法

《Qt中集成mqtt协议的使用方法》文章介绍了如何在工程中引入qmqtt库,并通过声明一个单例类来暴露订阅到的主题数据,本文通过实例代码给大家介绍的非常详细,感兴趣的朋友一起看看吧... 目录一,引入qmqtt 库二,使用一,引入qmqtt 库我是将整个头文件/源文件都添加到了工程中进行编译,这样 跨平台

Python利用自带模块实现屏幕像素高效操作

《Python利用自带模块实现屏幕像素高效操作》这篇文章主要为大家详细介绍了Python如何利用自带模块实现屏幕像素高效操作,文中的示例代码讲解详,感兴趣的小伙伴可以跟随小编一起学习一下... 目录1、获取屏幕放缩比例2、获取屏幕指定坐标处像素颜色3、一个简单的使用案例4、总结1、获取屏幕放缩比例from

nginx-rtmp-module模块实现视频点播的示例代码

《nginx-rtmp-module模块实现视频点播的示例代码》本文主要介绍了nginx-rtmp-module模块实现视频点播,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习... 目录预置条件Nginx点播基本配置点播远程文件指定多个播放位置参考预置条件配置点播服务器 192.

多模块的springboot项目发布指定模块的脚本方式

《多模块的springboot项目发布指定模块的脚本方式》该文章主要介绍了如何在多模块的SpringBoot项目中发布指定模块的脚本,作者原先的脚本会清理并编译所有模块,导致发布时间过长,通过简化脚本... 目录多模块的springboot项目发布指定模块的脚本1、不计成本地全部发布2、指定模块发布总结多模