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

物联网AI MicroPython学习之语法 network网络配置模块

学物联网,来万物简单IoT物联网!!在这里插入图片描述

network介绍

  • 模块功能:
    用于管理Wi-Fi和以太网的网络模块
  • 参考用法:
import network 
import time nic = network.WLAN(network.STA_IF) 
nic.active(True) if not nic.isconnected():     nic.connect(ssid, password)     print("Waiting for connection...")     while not nic.isconnected():         time.sleep(1) print(nic.ifconfig())

常量说明

常量说明
network.STA_IF1WLAN STA模式
network.AP_IF2WLAN AP模式
network.STA_STARTED1WLAN已启动
network.STA_GOT_IP2WLAN获得IP
network.STA_LOST_IP3WLAN已丢失IP
network.STA_DISCONNECTED4WLAN已断开连接
network.STA_CONNECTED5WLAN已链接
network.STA_STOPED6WLAN已停用
network.STA_UNKNOWN7未知状态

错误码

typedef enum {AOS_ERR_WIFI_BASE = 0x3000,         /*!< WiFi ERR NUM BASE */AOS_ERR_WIFI_NOT_INIT,              /*!< WiFi driver was not installed by esp_wifi_init */AOS_ERR_WIFI_NOT_STARTED,           /*!< WiFi driver was not started by esp_wifi_start */AOS_ERR_WIFI_NOT_STOPPED,           /*!< WiFi driver was not stopped by esp_wifi_stop */AOS_ERR_WIFI_IF,                    /*!< WiFi interface error */AOS_ERR_WIFI_MODE,                  /*!< WiFi mode error */AOS_ERR_WIFI_STATE,                 /*!< WiFi internal state error */AOS_ERR_WIFI_CONN,                  /*!< WiFi internal control block of station or soft-AP error */AOS_ERR_WIFI_NVS,                   /*!< WiFi internal NVS module error */AOS_ERR_WIFI_MAC,                   /*!< MAC address is invalid */AOS_ERR_WIFI_SSID,                  /*!< SSID is invalid */AOS_ERR_WIFI_PASSWORD,              /*!< Password is invalid */AOS_ERR_WIFI_TIMEOUT,               /*!< Timeout error */AOS_ERR_WIFI_WAKE_FAIL,             /*!< WiFi is in sleep state(RF closed) and wakeup fail */AOS_ERR_WIFI_WOULD_BLOCK,           /*!< The caller would block */AOS_ERR_WIFI_NOT_CONNECT,           /*!< Station still in disconnect status */AOS_ERR_WIFI_POST,                  /*!< Failed to post the event to WiFi task */AOS_ERR_WIFI_INIT_STATE,            /*!< Invalod WiFi state when init/deinit is called */AOS_ERR_WIFI_STOP_STATE,            /*!< Returned when WiFi is stopping */AOS_ERR_WIFI_NOT_ASSOC,             /*!< The WiFi connection is not associated */AOS_ERR_WIFI_TX_DISALLOW,           /*!< The WiFi TX is disallowed */AOS_ERR_TCPIP_ADAPTER_INVALID_PARAMS,AOS_ERR_TCPIP_ADAPTER_IF_NOT_READY,AOS_ERR_TCPIP_ADAPTER_DHCPC_START_FAILED,AOS_ERR_TCPIP_ADAPTER_NO_MEM
} AOS_NETWORK_ERR_E;

接口说明

network.WLAN - 创建一个WLAN实例

  • 函数原型:class network.WLAN(interface_id)
  • 参数说明:

interface_id 可选值为 network.STA_IF 或 network.AP_IF

  • 返回值:
    返回一个wlan实例
  • 参考代码:
wlan = network.WLAN(network.STA_IF)

WLAN.active

  • 函数原型:WLAN.active(is_active)
  • 参数说明:
参数类型必选参数?说明
is_activebool(True, False)激活/反激活

WLAN.connect

  • 函数功能:
    链接Wi-FI
  • 函数原型:WLAN.connect(ssid, pwd)
  • 参数说明:
参数类型必选参数?说明
ssidstringssid名称
pwdstringssid密码

WLAN.disconnect

  • 函数功能:
    断开Wi-Fi链接
  • 函数原型:WLAN.disconnect()
  • 参数说明:无
  • 返回值:

成功返回0,错误返回错误码

WLAN.status

  • 函数功能:
    获取Wi-Fi状态
  • 函数原型:WLAN.status()
  • 参数说明:无
  • 返回值
定义数值说明
network.STA_STARTED1WLAN已启动
network.STA_GOT_IP2WLAN获得IP
network.STA_LOST_IP3WLAN已丢失IP
network.STA_DISCONNECTED4WLAN已断开连接
network.STA_CONNECTED5WLAN已链接
network.STA_STOPED6WLAN已停用
network.STA_UNKNOWN7未知状态

WLAN.isconnected

  • 函数功能:
    查看Wi-Fi是否已链接
  • 函数原型:WLAN.isconnected()
  • 参数说明:无
  • 返回值
    | 类型 | 数值 | 说明 |
    | — | — | — |
    | bool | True | Wi-Fi已连接 |
    | bool | False | Wi-Fi未连接 |

WLAN.ifconfig

  • 函数功能:
    查看/操作Wi-Fi连接参数
  • 函数原型:WLAN.ifconfig([ip, subnet, gateway, dns])
  • 参数说明:

如果不传参数,则获取当前IP配置, 如果传入组合参数,则设定IP信息

参数类型必选参数说明
ip_infotupleip信息

ip_info数据格式说明:

参数类型说明
ipstringip地址
subnetstring子网掩码
gatewaystring网关地址
dnsstringdns地址
  • 返回值

成功返回0,错误返回错误码

WLAN.config

  • 函数功能:

  • 函数原型:WLAN.config()

  • 参数说明:

  • 返回值

WLAN.scan

  • 函数功能:
    扫描附近AP(无线路由器)
  • 函数原型:WLAN.scan()
  • 参数说明:

  • 返回值

返回AP(无线路由器)列表

相关文章:

  • 2010年数据结构408
  • Realistic fault detection of li-ion battery via dynamical deep learning
  • JimuReport积木报表 v1.6.5 版本发布—免费报表工具
  • AIOT数字孪生智慧工地一体化管理平台源码
  • Vue3 源码解读系列(五)——响应式
  • [Socket]Unix socket 运行权限问题
  • 关于跨域问题的个人理解
  • Vue 3.0 + vite + axios+PHP跨域问题的解决办法
  • 【数据结构】顺序表 | 详细讲解
  • 17. 机器学习——SVM
  • 专业的SRM系统全流程管理服务
  • iText v1.8.1(OCR截图文字识别工具)
  • centralwidget 不能布局
  • HarmonyOS 高级特性
  • SpringCloud Alibaba(上):注册中心-nacos、负载均衡-ribbon、远程调用-feign
  • 《Javascript高级程序设计 (第三版)》第五章 引用类型
  • gf框架之分页模块(五) - 自定义分页
  • go append函数以及写入
  • javascript数组去重/查找/插入/删除
  • JS创建对象模式及其对象原型链探究(一):Object模式
  • Koa2 之文件上传下载
  • Leetcode 27 Remove Element
  • Promise面试题,控制异步流程
  • Redis 懒删除(lazy free)简史
  • use Google search engine
  • vue从创建到完整的饿了么(11)组件的使用(svg图标及watch的简单使用)
  • 程序员最讨厌的9句话,你可有补充?
  • 干货 | 以太坊Mist负责人教你建立无服务器应用
  • 基于组件的设计工作流与界面抽象
  • 坑!为什么View.startAnimation不起作用?
  • 视频flv转mp4最快的几种方法(就是不用格式工厂)
  • 微信支付JSAPI,实测!终极方案
  • 智能情侣枕Pillow Talk,倾听彼此的心跳
  • ​ssh免密码登录设置及问题总结
  • #DBA杂记1
  • ()、[]、{}、(())、[[]]命令替换
  • (Redis使用系列) SpringBoot中Redis的RedisConfig 二
  • (ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_READ_ONLY)讲解
  • (二)c52学习之旅-简单了解单片机
  • (接口封装)
  • (论文阅读30/100)Convolutional Pose Machines
  • (转)四层和七层负载均衡的区别
  • (转)一些感悟
  • .[hudsonL@cock.li].mkp勒索加密数据库完美恢复---惜分飞
  • .aanva
  • .net oracle 连接超时_Mysql连接数据库异常汇总【必收藏】
  • .NET Standard 的管理策略
  • .net 程序 换成 java,NET程序员如何转行为J2EE之java基础上(9)
  • .NET下的多线程编程—1-线程机制概述
  • /etc/sudoer文件配置简析
  • @Pointcut 使用
  • @private @protected @public
  • [145] 二叉树的后序遍历 js
  • [Android]如何调试Native memory crash issue
  • [Android]使用Git将项目提交到GitHub