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

学物联网,来万物简单IoT物联网!!

network介绍

  • 模块功能:
    用于管理Wi-Fi和以太网的网络模块
  • 参考用法:
python 复制代码
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_IF 1 WLAN STA模式
network.AP_IF 2 WLAN AP模式
network.STA_STARTED 1 WLAN已启动
network.STA_GOT_IP 2 WLAN获得IP
network.STA_LOST_IP 3 WLAN已丢失IP
network.STA_DISCONNECTED 4 WLAN已断开连接
network.STA_CONNECTED 5 WLAN已链接
network.STA_STOPED 6 WLAN已停用
network.STA_UNKNOWN 7 未知状态

错误码

python 复制代码
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实例
  • 参考代码:
python 复制代码
wlan = network.WLAN(network.STA_IF)

WLAN.active

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

WLAN.connect

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

WLAN.disconnect

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

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

WLAN.status

  • 函数功能:
    获取Wi-Fi状态
  • 函数原型:WLAN.status()
  • 参数说明:无
  • 返回值
定义 数值 说明
network.STA_STARTED 1 WLAN已启动
network.STA_GOT_IP 2 WLAN获得IP
network.STA_LOST_IP 3 WLAN已丢失IP
network.STA_DISCONNECTED 4 WLAN已断开连接
network.STA_CONNECTED 5 WLAN已链接
network.STA_STOPED 6 WLAN已停用
network.STA_UNKNOWN 7 未知状态

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_info tuple ip信息

ip_info数据格式说明:

参数 类型 说明
ip stringip 地址
subnet string 子网掩码
gateway string 网关地址
dns string dns地址
  • 返回值

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

WLAN.config

  • 函数功能:

  • 函数原型:WLAN.config()

  • 参数说明:

  • 返回值

WLAN.scan

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

  • 返回值

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

相关推荐
霍格沃兹测试开发学社测试人社区4 分钟前
软件测试学习笔记丨Flask操作数据库-数据库和表的管理
软件测试·笔记·测试开发·学习·flask
学习前端的小z6 分钟前
【AIGC】如何通过ChatGPT轻松制作个性化GPTs应用
人工智能·chatgpt·aigc
今天我又学废了20 分钟前
Scala学习记录,List
学习
埃菲尔铁塔_CV算法34 分钟前
人工智能图像算法:开启视觉新时代的钥匙
人工智能·算法
EasyCVR34 分钟前
EHOME视频平台EasyCVR视频融合平台使用OBS进行RTMP推流,WebRTC播放出现抖动、卡顿如何解决?
人工智能·算法·ffmpeg·音视频·webrtc·监控视频接入
打羽毛球吗️40 分钟前
机器学习中的两种主要思路:数据驱动与模型驱动
人工智能·机器学习
王俊山IT44 分钟前
C++学习笔记----10、模块、头文件及各种主题(一)---- 模块(5)
开发语言·c++·笔记·学习
极客小张1 小时前
基于STM32的智能充电桩:集成RTOS、MQTT与SQLite的先进管理系统设计思路
stm32·单片机·嵌入式硬件·mqtt·sqlite·毕业设计·智能充电桩
好喜欢吃红柚子1 小时前
万字长文解读空间、通道注意力机制机制和超详细代码逐行分析(SE,CBAM,SGE,CA,ECA,TA)
人工智能·pytorch·python·计算机视觉·cnn
小馒头学python1 小时前
机器学习是什么?AIGC又是什么?机器学习与AIGC未来科技的双引擎
人工智能·python·机器学习