littlebot
Published on 2025-04-10 / 10 Visits
0

【源码】基于ESPIDF框架的蜂窝网络通信模块

项目简介

本项目是一个基于ESP-IDF框架的蜂窝网络通信模块,主要展示如何使用ESP32与蜂窝网络模块(如SIM7xxx系列)进行通信。通过ESP32的UART接口和蜂窝网络模块通信,项目提供了初始化、配置、控制等功能的函数库,支持数据的发送和接收。

项目的主要特性和功能

  1. 支持蜂窝网络模块的初始化和配置,包含SIM卡激活和网络注册。
  2. 可通过蜂窝网络模块发送和接收数据,支持加密传输以及与多种云服务(如Azure IoT Hub)集成。
  3. 设备具备低功耗模式,可通过触摸或震动唤醒。
  4. 提供详细日志输出,便于调试和监控设备状态。
  5. 提供预编译的固件,方便用户快速部署和测试。

安装使用步骤

假设用户已经下载了本项目的源码文件,按以下步骤操作: 1. 硬件准备:准备ESP32开发板和蜂窝网络模块(如SIM7xxx系列)。 2. 硬件连接:将蜂窝网络模块通过UART接口连接到ESP32开发板。 3. 编译与烧录:使用ESP-IDF工具链编译源代码,并通过烧录工具将固件烧录到ESP32开发板。 4. 运行与测试:启动设备,设备将自动连接到蜂窝网络并发送数据。可以通过Onomondo平台实时监控数据传输情况。

注意事项

  1. 确保蜂窝网络模块的SIM卡已激活,并且设备能够正常注册到网络。
  2. 确保设备所在区域有良好的蜂窝网络覆盖。
  3. 使用ESP-IDF提供的串口监视器或其他调试工具查看设备日志,以便排查问题。

示例输出

以下是一个示例输出,展示了设备初始化、网络连接和数据发送的过程: bash I (451) main: Cpu freq: 160 MhZ I (451) ACC: Config i2c param I (461) ACC: Install i2c driver I (461) ACC: Reading register.... I (481) main: Temperature: 26.500000 I (481) gpio: GPIO[4]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0 I (481) gpio: GPIO[5]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0 I (491) gpio: GPIO[25]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0 I (511) touch_driver: test init: touch pad [6] val is 686 I (511) uart: queue free spaces: 30 I (511) sim800: PWR pin 27 I (511) gpio: GPIO[27]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0 I (521) AT CMD: AT I (721) AT RESP: OK I (731) sim800: Modem is on! I (751) AT CMD: ATE0 I (761) AT RESP: OK I (761) AT CMD: AT+CGMM I (781) AT RESP: SIMCOM_SIM7070 I (791) AT CMD: AT+CGSN I (791) AT RESP: 861340049970997 I (801) AT CMD: AT+COPS? I (811) AT RESP: +COPS: 1,0,"TDC",7 I (821) AT CMD: AT+CREG? I (831) AT RESP: +CREG: 0,5 I (841) AT CMD: AT+CBANDCFG="CAT-M",3,8,20 I (851) AT RESP: OK I (1341) sim800: Modem INIT OK, 0x3ffbf604 I (1341) AT CMD: AT+IFC=0,0 I (1341) AT RESP: OK I (1351) AT CMD: AT+CREG? I (1361) AT RESP: +CREG: 0,5 I (1371) cellular: Module: SIMCOM_SIM7070 I (1371) cellular: Operator: "TDC" I (1371) cellular: IMEI: 861340049970997 I (1381) AT CMD: AT+CSQ I (1391) AT RESP: +CSQ: 31,99 I (1401) cellular: rssi: 31, ber: 99 I (1411) AT CMD: AT+CEDRXS=1,4,"0010" I (1421) AT RESP: OK I (1431) AT CMD: AT+CEDRXRDP I (1441) AT RESP: +CEDRXRDP: 4,"0010","0010","0000" I (1451) eDRX CHECK: Supported I (1461) AT CMD: AT+CPSMRDP I (1471) AT RESP: +CPSMRDP: 0,20,14400,0,0,3600 I (1481) PSM CHECK: Active: 0 I (1491) AT CMD: AT+CPSI? I (1501) AT RESP: +CPSI: LTE CAT-M1,Online,238-01,0x07D0,12024586,465,EUTRAN-BAND20,6350,5,5,-16,-83,-53,10 I (1511) AT CMD: AT+CPSMRDP I (1521) AT RESP: +CPSMRDP: 0,20,14400,0,0,3600 I (1531) PSM CHECK: Active: 0 I (1541) AT CMD: AT+CGDCONT=1,"IP","onomondo" I (1551) AT RESP: OK I (1561) dce_service: define pdp context ok I (1561) sim800: Working mode is changed! :D I (1561) AT CMD: ATD*99# I (1561) AT RESP: CONNECT 150000000 I (1671) cellular: Modem PPP Started I (1711) esp-netif_lwip-ppp: Connected I (1721) cellular: Modem Connect to PPP Server I (1731) cellular: IP : 100.68.57.55 I (1741) cellular: Netmask : 255.255.255.255 I (1751) cellular: Gateway : 10.64.64.64 I (1761) cellular: Name Server1: 10.85.59.251 I (1771) cellular: Name Server2: 10.85.59.242 I (1781) cellular: GOT ip event!!! I (1791) cellular: Socket created, connecting to 1.2.3.4:4321 I (3161) Transmit: {"battery": 0.284000,"signal": 31.000000,"temperature": 26.625000} 该输出展示了设备初始化、网络连接建立和数据发送的过程。具体的输出可能因模块型号和代码实现而有所不同。

下载地址

点击下载 【提取码: 4003】【解压密码: www.makuang.net】