当前位置: 首页 > wzjs >正文

可信网站是什么南昌市会做网站有哪几家

可信网站是什么,南昌市会做网站有哪几家,苏州网络公司工作室,南京比较好的网络策划公司从您最新的日志来看,PPP 流程已经走到启动阶段并且成功进入了 “STAGE_START_PPP”,但在 “STAGE_WAIT_IP” 阶段没有拿到 IP,约 60 s 后就报了 “Connection lost”: I (11161) modem_board: Modem state STAGE_START_PPP, Succ…

从您最新的日志来看,PPP 流程已经走到启动阶段并且成功进入了 “STAGE_START_PPP”,但在 “STAGE_WAIT_IP” 阶段没有拿到 IP,约 60 s 后就报了 “Connection lost”:

I (11161) modem_board: Modem state STAGE_START_PPP, Success!
I (11361) modem_board: Modem state STAGE_WAIT_IP, Start
W (11361) modem_board: Modem event! 0
I (71361) esp-netif_lwip-ppp: Connection lost

这通常是因为没有正确激活 PDP context(即没有拿到运营商下发的 IP)导致 LCP 握手机制超时。排查思路和改进方案如下:


一、先检查并手动配置 APN

在启动 PPP 之前,务必先执行:

// 假设 dce 为 esp_modem_dce_t*,代表 DCE 操作句柄
// 1. 配置 PDP 上下文(APN),请将 "your.apn.here" 替换成真实运营商 APN
esp_modem_dte_generic_command(dce, "AT+CGDCONT=1,\"IP\",\"your.apn.here\"\r", NULL, 0);// 2. 激活 PDP 上下文(部分网络需要显式启动)
esp_modem_dte_generic_command(dce, "AT+CGACT=1,1\r", NULL, 0);// 再启动 PPP
esp_err_t err = esp_modem_dce_start_ppp(dce);
ESP_ERROR_CHECK(err);

如果不先设置或激活 PDP,运营商就不会分配 IP,PPP 会一直等到超时。


二、订阅并打印 PPP 事件

在创建 PPP Network Interface 时,注册 IP 事件回调,查看到底有没有收到 IP。

// 在 app_main 或初始化函数中:
ESP_ERROR_CHECK(esp_event_handler_register(IP_EVENT, IP_EVENT_PPP_GOT_IP, &on_ppp_got_ip, NULL));
ESP_ERROR_CHECK(esp_event_handler_register(PPP_EVENT, ESP_EVENT_ANY_ID, &on_ppp_event, NULL));// 回调示例:
static void on_ppp_got_ip(void* arg, esp_event_base_t event_base, int32_t event_id, void* event_data) {ip_event_got_ip_t* info = (ip_event_got_ip_t*) event_data;ESP_LOGI(TAG, ">>> PPP GOT IP: " IPSTR ", gw: " IPSTR,IP2STR(&info->ip_info.ip), IP2STR(&info->ip_info.gw));
}static void on_ppp_event(void* arg, esp_event_base_t event_base, int32_t event_id, void* event_data) {ESP_LOGI(TAG, ">>> PPP event: %ld", event_id);
}

这样能够精确知道是否有 IP_EVENT_PPP_GOT_IP 事件触发。


三、配置 LCP Keepalive(可选)

默认情况下,如果长时间没收到对端 LCP Echo 回应,PPP 会断开。可以调大 LCP echo 检测阈值:

esp_modem_dce_t* dce = esp_modem_dce_get_handle(modem);
esp_modem_ppp_config_t ppp_cfg = ESP_MODEM_DEFAULT_PPP();
ppp_cfg.lcp_echo_interval_ms = 10000;    // 每 10s 发送一次 LCP Echo Request
ppp_cfg.lcp_echo_failure = 5;            // 连续 5 次超时再判定为掉线
esp_modem_dce_set_ppp_config(dce, &ppp_cfg);

四、完整参考代码片段

// … 初始化 NVS、网络、esp_netif 等 …// 1. 获取 DCE 操作句柄
esp_modem_dce_t* dce = esp_modem_dce_get_handle(modem);// 2. 配置 APN 并激活 PDP
esp_modem_dte_generic_command(dce, "AT+CGDCONT=1,\"IP\",\"cmnet\"\r", NULL, 0);
esp_modem_dte_generic_command(dce, "AT+CGACT=1,1\r",       NULL, 0);// 3. 注册 PPP 事件
esp_event_handler_register(IP_EVENT, IP_EVENT_PPP_GOT_IP, &on_ppp_got_ip, NULL);
esp_event_handler_register(PPP_EVENT, ESP_EVENT_ANY_ID,    &on_ppp_event,  NULL);// 4. (可选)调整 LCP Keepalive
esp_modem_ppp_config_t ppp_cfg = ESP_MODEM_DEFAULT_PPP();
ppp_cfg.lcp_echo_interval_ms = 10000;
ppp_cfg.lcp_echo_failure     = 5;
esp_modem_dce_set_ppp_config(dce, &ppp_cfg);// 5. 启动 PPP 拨号
esp_err_t err = esp_modem_dce_start_ppp(dce);
if (err != ESP_OK) {ESP_LOGW(TAG, "PPP 启动失败,错误码 %d,尝试手动拨号", err);esp_modem_dte_generic_command(dce, "ATD*99#\r", NULL, 0);
}// 6. 后续在回调中观察 IP 或断开事件

通过以上步骤,您可以:

  1. 确保 APN 正确,令运营商分配 IP。

  2. 清晰可见 PPP 是否成功拿到 IP(IP_EVENT_PPP_GOT_IP)。

  3. 调整超时策略,避免保活丢失导致过早断开。

如果仍然不能拿到 IP,请贴出 AT+CGDCONT / AT+CGACT 的执行结果,以及 PPP 回调中所有事件 ID 和日志。这样可以进一步定位问题。

http://www.dtcms.com/wzjs/543442.html

相关文章:

  • 采购网站排名临清做网站推广
  • 住房和城乡建设部网站城市稽查阿里云官网登录入口
  • 网站源代码下载工具明年做那个网站致富
  • 企业网站建设及推广清河网站建设
  • 可以做系统同步时间的网站微博登录网站开发
  • 九千营销工作室介绍网站排名乐云seo
  • 河东做网站设计一个网站的步骤
  • 寻找杭州做网站软件人设计好看的网站
  • 制作公司主页网站网页制作教程步骤视频讲解
  • 有关优化网站建设的书籍开通微信公众号要钱吗
  • 网页设计做音乐网站论坛建站哪个比较好
  • 沭阳网站制作wordpress+联动筛选
  • php网站有哪些做视频网站利润如何
  • 电商设计师联盟网站wordpress 08影院
  • 医学网站建设风格电商的网站怎么做的
  • 做俄罗斯网站网站建设管理流程
  • php 网站部署到服务器网站选择语言怎么做
  • 网站内容发布平台源码山东省建设部网站
  • 番禺区建设局网站开发app和微网站有哪些功能
  • 中国品牌建设促进会网站网络营销推广技术
  • 景区网站建设策划石家庄官网设计及搭建
  • 修改wordpress登录地址wordpress自带主题优化
  • html手机版网站义乌做网站
  • 我的世界查建筑网站蔬菜基地做网站合适吗
  • 网站设置默认主页建设信息网怎么进入
  • 南宁网站设计公司排名东营新闻综合频道在线直播
  • wordpress分类信息 模板下载宝安网站 建设seo信科
  • 中卫网站推广外包服务上海营业执照查询系统
  • 资金盘网站开发公司哪里好用dw怎麼做网站
  • 网站开发感想wordpress ldap