大家好,欢迎来到IT知识分享网。
EC20使用记录
EC20模块介绍
EC20 内嵌了 TCP/IP 协议栈, Host 直接通过 AT 命令可以方便的访问 internet, Host 可以减少对 PPP和 TCP/IP协议栈的依赖,实现低成本的设计。UC20提供TCP Client、UDP Client、TCP Server、UDP Service这些内置的 socket 服务功能。
首先是EC20 4G模块:
参考:Quectel_EC20_R2.0_硬件设计手册_V1.2.pdf
链接:LTE EC20 R2.1 | 移远通信 (quectel.com)
EC20 是移远通信推出的 LTE Cat 4 无线通信模块,采用 LTE 3GPP Rel.11 技术,支持最大下行速率 150Mbps 和最大上行速率 50Mbps。能在 LTE-FDD、LTE-TDD、DC-HSPA+、WCDMA、EDGE 及 GPRS 等多种网络制式中进行数据通信;同时在封装上兼容移远通信 UMTS/HSPA+ UC200T 系列模块以及多网络制式 LTE Standard EC20 R2.1/EG25-G/ EG21-G/EC21 系列/EC25 系列/EC200T 系列模块,实现了 3G 网络与 4G 网络之间的无缝切换。
EC20 系列模块包含 EC20-A、EC20-C、EC20-CE 和 EC20-E 四个版本,使其能够向后兼容现存的 EDGE 和 GSM/GPRS 网络,以确保在缺乏 3G 和 4G 网络的偏远地区也能正常工作。
EC20 支持多输入多输出技术(MIMO),即在发射端和接收端分别使用多个发射天线和接收天线,使信号通过发射端与接收端的多个天线传送和接收,从而降低误码率,改善通信质量。同时,它结合了高速无线连接与内置多星座高精度定位 GPS+GLONASS 接收器。
EC20 内置丰富的网络协议,集成多个工业标准接口,并支持多种驱动和软件功能(如 Windows XP,Windows Vista, Windows 7/8/8.1/10,Linux,Android 等操作系统下的 USB 驱动,eCall* 等),极大地拓展了其在 M2M 领域的应用范 围,如 CPE、路由器、数据卡、平板电脑、车载、安防以及工业级 PDA 等。
连接流程
连接阿里云服务器
串口1初始化完成 AT ce20_rev: OK ATE 0 ce20_rev: OK AT+CSQ ce20_rev: +CSQ: 27,99 OK AT+CPIN? ce20_rev: +CPIN: READY OK AT+CPIN? ce20_rev: +CPIN: READY OK ATI ce20_rev: Quectel EC20F Revision: EC20CEFILGR06A05M1G OK AT+QICSGP=1,1,"UNINET","","",1 ce20_rev: OK AT+CREG? ce20_rev: +CREG: 0,1 OK AT+CGATT=1 ce20_rev: OK AT+CGATT? ce20_rev: +CGATT: 1 OK AT+QMTCFG="aliauth",0,"ips7DFCvssg","D001","b88a91c3cc52840a3e3fe13fe1142d0a" ce20_rev: OK AT+QMTOPEN=0,"139.196.135.135",1883 ce20_rev: +QMTOPEN: 0,0 AT+QMTCONN=0,"D001" AT+QMTCONN=0,"D001" is error!! ce20_rev: OK AT+QGPSCFG="nmeasrc",1 ce20_rev: OK
透明传输(透传安信可服务器)
串口1初始化完成 AT ce20_rev: OK AT OK ATE 0 ce20_rev: OK AT+CSQ ce20_rev: +CSQ: 28,99 OK AT+CPIN? ce20_rev: +CPIN: READY OK AT+CPIN? ce20_rev: +CPIN: READY OK ATI ce20_rev: Quectel EC20F Revision: EC20CEFILGR06A05M1G OK AT+QICSGP=1,1,"UNINET","","",1 ce20_rev: OK AT+CREG? ce20_rev: +CREG: 0,1 OK AT+CGATT=1 ce20_rev: OK AT+CGATT? ce20_rev: +CGATT: 1 OK AT+QICLOSE=0 ce20_rev: OK AT+QIOPEN=1,0,"TCP","122.114.122.174",42652,0,2 ce20_rev: CONNECT //只要服务器返回CONNECT,即可发送数据到服务器 //以下为发送函数,发送的内容是:HELLO ANXIKE!!! SendNetCMD((uint8_t*)"HELLO ANXIKE!!!",strlen("HELLO ANXIKE!!!"),"NULL",100);
指令部分
关于EC20中使用的AT指令集,我们在此处就不一一介绍了(主要是太多了,有好多我们也用不上,而且网上基本都可以找到),我们只介绍第二小节中使用到的指令集,因此可以对应第二节内容进行分析。
- AT指令–我一般称为测试指令,测试单片机和EC20是否连通
单片机发送:AT+换行
EC20回复:OK (证明连接正确)
AT ce20_rev: OK
- ATE 0–关闭回显,需要回显可以打开,不过在此建议关闭,我们只要EC20回复的信息即可
ATE 0 ce20_rev: OK
- 查看EC20模块信息
ATI ce20_rev: Quectel EC20F Revision: EC20CEFILGR06A05M1G OK
- 查看卡片(电话卡)EC20是否可以识别
AT+CPIN? ce20_rev: +CPIN: READY OK
- AT+CSQ–查看信号质量
AT+CSQ ce20_rev: +CSQ: 28,99 //这个信号质量还是很不错的
- AT+QICSGP–设置电话卡属性
AT+QICSGP=1,1,"UNINET","","",1 ce20_rev: OK
- AT+CREG?–检查是否注册到网络
AT+CREG? ce20_rev: +CREG: 0,1
- AT+CGATT=1–模块连接到基站(附着网络)
AT+CGATT=1 ce20_rev: OK
- AT+QICLOSE=0关闭服务器
一般在我们连接服务器通信完毕之后,需要首先发送“+++”,断开客户端和服务器的连接,之后关闭服务器开辟的端口号,就是使用此条指令的;
但是目前我们是EC20初始化的初始化,我们为了避免服务器端口未关闭,导致本次链接不上服务器,所以需要首先关闭服务器端口,再次进行连接。
AT+QICLOSE=0 ce20_rev: OK
正常情况下,断开服务器连接需要按照以下流程进行
单片机发送:+++ (注意此次没有换行)–断开服务器连接
单片机再次发送:AT+QICLOSE=0 –服务器端关闭端口号
透明传输(透传连接安信可服务器)
10.1. 打开服务器
AT+QIOPEN=1,0,"TCP","122.114.122.174",42652,0,2 ce20_rev: CONNECT
当我们接收到”CONNECT”字符串,代表客户端和服务器已经连接上了,接下来就可以愉快的发送数据了
10.2. 发送数据
SendNetCMD((uint8_t*)"HELLO ANXINKE!!!",strlen("HELLO ANXINKE!!!"),"NULL",100);
此时我们就可以再安信可透传云平台上看到我们发送的数据:HELLO ANXINKE!!!
采用MQTT方式连接阿里云平台
需要首先获取连接网络平台的三要素(如何连接阿里云,以及MQTT协议在此不在讲解,大家可以去网上看看很多的)
- 连接流程概述:
- 阿里云设备状态:
免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://haidsoft.com/126176.html