WiFi的AP模式和STA模式


前言

本篇文章的学习内容是参考亿联电子的开发板,来讲解关于WiFi的基础知识,使用的是ESP32芯片。更详细具体的学习内容请参考亿研开发板和乐鑫官网。这里仅仅用于记录自己学习的过程以及心得感受

一、AP模式和STA模式

AP模式就是指开发板能够开启热点被手机连接上。STA模式就是指开发板能够主动去连接指定的热点。

二、代码讲解

对于应用开发我们需要做的就是熟悉应用层的接口的原理使用场景来完成相应的业务逻辑。至于底层是如何调用的可以后续在慢慢深入研究,想要研究到底层应用层也得比较熟悉使用。

AP模式

WiFi的AP模式和STA模式
首先,这里有两个比较关键的步骤,第一个就是进行tcp/ip的初始化,因为我们涉及到网络编程,所以必须得使用tcp/ip协议。第二个就是设置wifi的事件回调函数,当设备启动了AP热点、被手机连接上、手机断开了AP连接,这些过程都会触发wifi的回调函数。
WiFi的AP模式和STA模式
接着,这里还有几个比较关键的接口,wifi的初始化,设置工作模式,配置AP的参数、最后启动wifi。
WiFi的AP模式和STA模式
最后,我们来看看相应的回调函数,他们都哪些相对应的事件可以触发和调用。有启动AP,被设备连接上,设备断开连接等。

STA模式

WiFi的AP模式和STA模式
从这里我们可以看到STA模式和AP模式的调用方法是相类似的,无非就是参数不一样而已。
WiFi的AP模式和STA模式
接着就是比较重要的一点了,就是STA的相关回调函数,在这里我们看到回调有STA的启动、STA连接到了相应的AP,STA断开连接、STA取得IP。在这里需要再次说明下,如果STA连接路由器成功了以后,这个时候我们用电脑也去连接相应的路由器只要能够获取到开发板所分配的IP,这个时候我们就可以使用ping命令来检测开发板与电脑之间网络是否连通。

smartconfig配置

这里我们在来说一下smartconfig的STA模式,在这个模式下STA可以比较灵活的去配置指定的路由,根据获取到的SSID和路由器的密码即可。
WiFi的AP模式和STA模式
在这里我们看到创建了一个smartconfig的任务线程
WiFi的AP模式和STA模式
在这个任务线程里面又创建了一个回调函数
WiFi的AP模式和STA模式
在这个回调函数里面又判断了几个事件,总的来说就是我们的手机程序连接上热点以后并且把相应的热点的SSID和密码发送发送出去,我们的开发板设备捕捉到相应的SSID和密码之后就可以连接上相应的路由设备了,这样便实现了智能化连接路由的过程。这个场景对于智能家居的设备有着很大的应用。我们这样便可以指定我们的设备连接上指定的路由。

三、心得体会

最后,我来说一下自己学习过程中的一些心得体会吧,如今的我已经不再是大学生了,到今为止已经步入职场2个月多了,从学生到社会人的转变了,我们从小学中学大学都是以学生的身份在学习各种专业和基础知识,有老师培养我们,我们也需要交学费给学校。如今到了职场,我们拿钱,我们干活,所以和学校是有着非常大的差距的。我个人认为无论是在学校还是职场,最重要需要训练的就是专业化的能力,也就是如何让自己能够快速的在自己所处的领域内变得专业。而专业化的能力的培养最关键的方式就是能够不断的去解决问题,这是让一个人变得专业的重要方式,你就能够解决某一类问题你自然的就能够变得专业。在职场中所面临的困境和学校其实会一些类似,但是相比较而言,职场会更加的残酷。因此,当你遇到困境的时候遇到麻烦的时候,一定要选择迎难而上进一步的锻炼自己专业化的能力。不要选择逃避隐忍,一定要面对它,逃避是没有用的。当你能够面对的时候无论做出任何决定都是能够起到改变,而选择逃避是根本难以解决问题的,只会让你越来越糟糕。所以说如果再职场中遇到困难那最好就是拿出反脆弱的能力让自己快速的专业和强大。在战斗中,在解决问题中不断的学习是让你快速成长和专业的关键方式。