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

《K230 从熟悉到...》无线网络

《K230 从熟悉到...》无线网络

  • STA模式

《庐山派 K230 从熟悉到...》无线网络

无线网络中通常是STA(Station,站点)和AP(Access Point,无线接入点)。
STA(站点) 定义:STA是指任何连接到无线网络中的终端设备,如笔记本电脑、智能手机、平板电脑等。
功能:STA通过无线网卡与AP进行通信,实现接入无线网络、访问网络资源等功能。
AP(无线接入点) 定义:AP是无线网络的核心设备,用于创建和管理无线网络,是移动计算机用户进入有线网络的接入点。
功能:AP通过发射无线信号,允许STA连接到无线网络,并提供数据传输和网络访问的功能。AP还可以进行用户认证、安全管理等操作。

在这里插入图片描述

STA模式


import network
import time

SSID = ""        # 路由器名称
PASSWORD = "" # 路由器密码

def sta_test():
    # 初始化STA模式(客户端模式)
    sta = network.WLAN(network.STA_IF)

    # 激活WiFi模块(相当于打开手机WIFI开关)
    if not sta.active():  # 判断是否已激活
        sta.active(True)
    print("WiFi模块激活状态:", sta.active())

    # 查看初始连接状态
    print("初始连接状态:", sta.status())

    # 扫描当前环境中的WIFI
    wifi_list = sta.scan()  # 扫描周围WiFi
    # 打印每个Wi-Fi信息
    for wifi in wifi_list:
        # 访问 rt_wlan_info 对象的属性
        ssid = wifi.ssid       # ssid 属性
        rssi = wifi.rssi       # rssi 属性
        print(f"SSID: {ssid}, 信号强度: {rssi}dBm")

    # 尝试连接路由器
    print(f"正在连接 {SSID}...")
    sta.connect(SSID, PASSWORD)

    # 等待连接结果(最多尝试5次)
    max_wait = 5
    while max_wait > 0:
        if sta.isconnected():  # 检查是否连接成功
            break
        max_wait -= 1
        time.sleep(1)  # 失败了就线休息一秒再说
        sta.connect(SSID, PASSWORD)
        print("剩余等待次数:", max_wait, "次")

    # 如果获取不到IP地址就一直在这等待
    while sta.ifconfig()[0] == '0.0.0.0':
        pass

    if sta.isconnected():
        print("\n连接成功!")
        # 重新获取并打印网络配置
        ip_info = sta.ifconfig()
        print(f"IP地址: {ip_info[0]}")
        print(f"子网掩码: {ip_info[1]}")
        print(f"网关: {ip_info[2]}")
        print(f"DNS服务器: {ip_info[3]}")
    else:
        print("连接失败,请检查密码或信号强度")

sta_test()

while True:
    # 持续死循环,等待用户打断并退出该循环
    time.sleep(0.5)  # 等待0.5秒

在这里插入图片描述

AP

import network
import time

AP_SSID = 'xiayujiang'  # 热点名称
AP_KEY = '12345678'  # 至少8位密码

def ap_test():
    # 初始化AP模式
    ap = network.WLAN(network.AP_IF)

    # 激活AP模式
    if not ap.active():
        ap.active(True)
    print("AP模式激活状态:", ap.active())

    # 配置热点参数
    ap.config(ssid=AP_SSID,key=AP_KEY)
    print("\n热点已创建:")
    print(f"SSID: {AP_SSID}")
    print(f"Channel: {AP_KEY}")

    # 等待热点启动(暂定3秒)
    time.sleep(3)

    # 获取并打印IP信息
    ip_info = ap.ifconfig()
    print("\nAP网络配置:")
    print(f"IP地址: {ip_info[0]}")
    print(f"子网掩码: {ip_info[1]}")
    print(f"网关: {ip_info[2]}")
    print(f"DNS服务器: {ip_info[3]}")

    # 持续监控连接设备
    while True:
        clients = ap.status('stations')
        print(f"\n已连接设备数: {len(clients)}")

        time.sleep(1)

ap_test()

在这里插入图片描述

http://www.dtcms.com/a/113628.html

相关文章:

  • LINUX 4 tar -zcvf -jcvf -Jcvf -tf -uf
  • Transformer+BO-SVM多变量时间序列预测(Matlab)
  • 力扣刷题——508.出现次数最多的子树和
  • Docker存储策略深度解析:临时文件 vs 持久化存储选型指南
  • 每日算法-250405
  • 4. 面向对象程序设计
  • 分布式事务解决方案全解析:从经典模式到现代实践
  • 每天五分钟深度学习框架pytorch:搭建LSTM完成手写字体识别任务?
  • 深入探索 Linux Top 命令:15 个实用示例
  • python中的sort使用
  • 在 macOS 上安装和配置 Aria2 的详细步骤
  • 【数学建模】(时间序列模型)ARIMA时间序列模型
  • tomcat的web三大组件Sciidea搭建web/maven的tomcat项目
  • grep命令: 过滤
  • 基于STM32与应变片的协作机械臂力反馈控制系统设计与实现----2.2 机械臂控制系统硬件架构设计
  • 自托管本地图像压缩器Mazanoke
  • (三)链式工作流构建——打造智能对话的强大引擎
  • 5天速成ai agent智能体camel-ai之第1天:camel-ai安装和智能体交流消息讲解(附源码,零基础可学习运行)
  • linux专题3-----linux上链接远程mysql
  • 深入理解Python元组:从基础到高级应用
  • xss攻击
  • NDK开发:开发环境
  • 2025-04-05 吴恩达机器学习4——逻辑回归(1):基础入门
  • 华为高斯(GaussDB)数据库中 Range、List、Hash三种分区方式 的完整SQL示例及增删改查操作,并附上总结对比表格
  • Linux内核引导内存分配器原理
  • 金仓数据库KCM认证考试介绍【2025年4月更新】
  • PgVectore的使用
  • REASONING THOUGHT和REASONING分别是什么意思,有什么区别
  • C语言:字符串
  • Baklib企业CMS的核心要素是什么?