C#开发ESP32E(3)Wifi配置使用

这篇具有很好参考价值的文章主要介绍了C#开发ESP32E(3)Wifi配置使用。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

1.安装Wifi配置库(nanoFramework.System.Device.Wifi)

C#开发ESP32E(3)Wifi配置使用

1.1 nanoFramework.System.Device.Wifi介绍

API预览--地址:https://docs.nanoframework.net/api/System.Device.Wifi.html

C#开发ESP32E(3)Wifi配置使用

该库可配置ESP32使用Wifi模块进行通信
与Wifi建立连接有如下步骤:

  1. 创建Wifi适配器
  2. 扫描Wifi列表
  3. 建立连接

1.2 核心API介绍

查找适配器列表(静态)
WifiAdapter.FindAllAdapters()

扫描Wifi完成事件
WifiAdapter.AvailableNetworksChanged

异步扫描Wifi列表(实例)
WifiAdapter.ScanAsync()

连接与断开连接(实例)
WifiAdapter.Connect()&&WifiAdapter.Disconnect()

1.3 完整代码

public class Program
    {
        const string _wifiId = "you_WifiName";
        const string _wifiPassword = "you_WifiPassword";
        public static void Main()
        {
            Debug.WriteLine("Hello from nanoFramework!");

            try
            {
                //Wifi适配器
                WifiAdapter wifi = WifiAdapter.FindAllAdapters()[0];

                //注册扫描Wifi列表完成事件
                wifi.AvailableNetworksChanged += Wifi_AvailableNetworksChanged;

                //Wait,等待初始化完成
                Thread.Sleep(10_000);

                //30s扫描一次
                while (true)
                {

                    try
                    {
                        Debug.WriteLine("starting Wi-Fi scan");
                        //异步扫描WiFi列表
                        //触发WifiAdapter.AvailableNetworksChanged事件。
                        //AvailableNetworksChanged事件中,使用WifiAdapter.NetworkReport检索可用的Wi-Fi网络列表。
                        wifi.ScanAsync();
                    }
                    catch (Exception ex)
                    {
                        Debug.WriteLine($"Failure starting a scan operation: {ex}");
                    }

                    Thread.Sleep(30000);
                }
            }
            catch (Exception ex)
            {
                Debug.WriteLine("message:" + ex.Message);
                Debug.WriteLine("stack:" + ex.StackTrace);
            }
            Thread.Sleep(Timeout.Infinite);

        }

        private static void Wifi_AvailableNetworksChanged(WifiAdapter sender, object e)
        {
            Debug.WriteLine("Wifi_AvailableNetworksChanged - get report");

            // 获取所有Wifi报告
            WifiNetworkReport report = sender.NetworkReport;

            // 遍历所有网络
            foreach (WifiAvailableNetwork net in report.AvailableNetworks)
            {
                //SSID:Wifi名称
                //BSSID:设备Mac地址 
                //Rssi:信号强度
                //Signal:表示信号强度的条数
                Debug.WriteLine($"Net SSID :{net.Ssid},  BSSID : {net.Bsid},  Rssi : {net.NetworkRssiInDecibelMilliwatts.ToString()},  Signal : {net.SignalBars.ToString()}");

                // Wifi名一致,尝试连接
                if (net.Ssid == _wifiId)
                {
                    // 如果连接则断开
                    sender.Disconnect();

                    //尝试连接
                    WifiConnectionResult result = sender.Connect(net, WifiReconnectionKind.Automatic, _wifiPassword);

                    // 显示连接状态
                    if (result.ConnectionStatus == WifiConnectionStatus.Success)
                    {
                        Debug.WriteLine("Connected to Wifi network");
                    }
                    else
                    {
                        Debug.WriteLine($"Error {result.ConnectionStatus.ToString()} connecting o Wifi network");
                    }
                }
            }

        }
    }

参考文档:https://github.com/nanoframework/Samples/blob/main/samples/Wifi/ScanWiFi/Program.cs文章来源地址https://www.toymoban.com/news/detail-542081.html

到了这里,关于C#开发ESP32E(3)Wifi配置使用的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 使用 ESP32 Arduino 和机器学习实现WIFI室内定位

      在这个 Arduino 机器学习项目中,我们将使用附近的 WiFi 接入点来定位我们所在的位置。为了使该项目正常运行,您需要一块配备 WiFi 的板,例如 ESP8266、ESP32 或 MKR WiFI 1010。 什么是室内定位? 我们都习惯了 GPS 定位,我们的设备将使用卫星来跟踪我们在地球上的位置。GPS 工

    2024年02月14日
    浏览(45)
  • STM32通过串口2使用ESP8266WIFI模块连接新大陆云平台

    目录 使用硬件: 分步骤:配置TCP连接,连接WIFI 1.使用ESP8266的复位引脚进行复位 2.发送基本AT指令 3.连接新大陆 4.新大陆云平台显示在线及上传数据测试成功 5.串口显示 5.涉及的函数 发生AT检测WIFI模块错误,如图,代码运行停留在了.AT,在while中一直循环,没有往下跑了,这种

    2024年04月24日
    浏览(53)
  • 【雕爷学编程】Arduino智慧校园之使用ESP32连接WiFi并上传温度数据到服务器

    Arduino是一个开放源码的电子原型平台,它可以让你用简单的硬件和软件来创建各种互动的项目。Arduino的核心是一个微控制器板,它可以通过一系列的引脚来连接各种传感器、执行器、显示器等外部设备。Arduino的编程是基于C/C++语言的,你可以使用Arduino IDE(集成开发环境)来

    2024年03月18日
    浏览(53)
  • 【雕爷学编程】Arduino智能家居之使用Arduino Uno和ESP32模块连接到WiFi网络

    Arduino是一个开放源码的电子原型平台,它可以让你用简单的硬件和软件来创建各种互动的项目。Arduino的核心是一个微控制器板,它可以通过一系列的引脚来连接各种传感器、执行器、显示器等外部设备。Arduino的编程是基于C/C++语言的,你可以使用Arduino IDE(集成开发环境)来

    2024年01月19日
    浏览(51)
  • ESP32开发(二)——GPIO管脚配置

            在VSCode中搭建完ESP32的开发环境后,就可以开始快乐编程了。在进行ESP32开发前,我们需要对它的API有个基本了解。 一.资料下载          授人以鱼不如授人以渔,学会找学习资料很重要。在乐鑫的官网上,给出了各种型号的技术支持,点击支持,技术文档。    

    2024年02月10日
    浏览(34)
  • ESP32开发(1)----Espressif-IDE开发环境配置

    最近得到一块ESP32-WROOM-32的开发板,没有原理图,但板子走线比较简单,看着板子上的布线大致猜一猜连接,然后试玩了一下,这里写下教程,整体来说,ESP32全部开源,支持蓝牙、WIFI,价格不算太贵,开发简单,好上手。 这里讲述下如何搭建开发环境,ESP32开发环境大致有

    2024年02月12日
    浏览(40)
  • Win10下运行ESP32 WiFi iperf例程(ESP32-S3 WiFi吞吐量测试)

    在win10平台下使用iperf工具及ESP32 iperf例程测试WiFi吞吐量 ESP32硬件:ESP32-S3-DevKitM-1(乐鑫官方ESP32-S3-MINI开发板) ESP IDF版本:IDF 4.4 iperf版本:iPerf 2.0.9    选择对应的CP2102串口号。  一键自动完成。 确保电脑已连入WiFi。(或可以由电脑开启热点。) 在cmd中运行: 运行后可以

    2023年04月09日
    浏览(72)
  • ESP32 直接使用WIFI进行UDP通信, 将光敏电阻传感器数值, 显示在OLED上 - 米思齐/Arduino

    ESP32主: 读取光敏传感器数值, 并通过UDP发送 ESP32从: 读取主机发送的数值, 并显示在OLED显示屏上 左边为ESP32, 连接OLED, 为STA模式从机 右边为ESP32, 连接光敏传感器, 为AP+STA主机, 可连接外网和连接从机

    2024年02月13日
    浏览(169)
  • 快速入门ESP32——开发环境配置Arduino IDE

     最近这段时间刚好在捣鼓ESP32,遇到了挺多大大小小的坑,所以我将自己的配置过程和注意要点写出来分享给大家,希望对你们有帮助。  ESP32系列单片机可以用 MicroPython 和 C ++进行编程,在这里我主要介绍C++编程语言下的两种常用的开发环境: Arduino IDE :Arduino 相信很多

    2024年02月03日
    浏览(48)
  • 四、ESP32链接WIFI

    Wi-Fi 是基于 IEEE 802.11 标准的无线网络技术 让联网设备以无线电波的形式,加入采用 TCP/IP 通信协议的网络 Wi-Fi 网络环境通常有两种设备 Access Point( AP ) 无线接入点,提供无线接入的设备,家里的光猫就是结合WiFi和internet路由功能的AP。AP和AP可以相互连接。 Station( STA ) 无线终

    2024年02月14日
    浏览(26)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包