今天会介绍到一个满重要的功能,就是函式库,在『Day5 函式(数)介绍』中就有稍微提到函式的部分,其实有些函式在Arduino或Esp32中必没有预设就在,可能特别需要去导入,而这个导入就是include,所以大家应该就了解第一行include的功能了。
汇入函数库可能大家都会觉得我是要讲刚刚讲的include,可是不是,我要讲的是Arduino内建有小部分的函式库,像是AP跟STA模式界都需要用到WiFi这个函式库,但各位应该以为只有开发板有函式库,没想过有些感测器或是一些服务也会需要安装函式库吧,所以今天要交各为如何去找函式库,那其实有两种。
第一种函式库有些没有,但会定期更新
第二种函式库较多,但要自己去看有没有更新
首先先打开Arduino IDE -> 草稿码 -> 汇入程序库 -> 管理程序库
图片取自:使用者拍摄
打开後会像当初找开发板那样,去找自己所需要的函式库
图片取自:使用者拍摄
这边就都不多先这样介绍了,因为後续才会用到,所以这边就稍微浅谈一下,那接下来介绍第二个罗
先到网路上找到要用的函式库,在GitHub上有许多人会放函式库,如何搜寻呢,可以在网页上打arduino libraryname(函数库名称) github,通常这样就可以找到拉,下面为举例。
点击Code -> Download ZIP下载zip档
图片取自:网路
後续一样打开Arduino IDE -> 草稿码 -> 汇入程序库 -> 加入ZIP程序库...,後续找到下载下来档案就可以罗
图片取自:使用者拍摄
那这边就都稍微介绍,也会有应用,那时後会在介绍详细一点,那就开始介绍程序码拉~
void setup(){
Serial.begin(115200);
// Initialize the output variables as outputs
pinMode(output22, OUTPUT);
pinMode(output23, OUTPUT);
// Set outputs to LOW
digitalWrite(output22, LOW);
digitalWrite(output23, LOW);
// Connect to Wi-Fi network with SSID and password
Serial.print("Connecting to ");
Serial.println(ssid);
WiFi.begin(ssid, password);
while (WiFi.status() != WL_CONNECTED) {
delay(500);
Serial.print(".");
}
// Print local IP address and start web server
Serial.println("");
Serial.println("WiFi connected.");
Serial.println("IP address: ");
Serial.println(WiFi.localIP());
server.begin();
}
前几段在前几个篇章都有讲解到,设定鲍率,定义脚位,数位输出状态,那後续比较关键的就是37~41、46及47行,那35、36行只是输出文字给使用者观看而已,那接下来开始讲解。
WiFi.begin(ssid, password);
透过ssid及password,对该基地台做连结,如没连结到会持续连接
while (WiFi.status() != WL_CONNECTED) {
delay(500);
Serial.print(".");
}
查看连结况状,如为连结到进入回圈,并且在监控视窗中输出"."
Serial.println(WiFi.localIP());
等到WiFi成功连到後,会跑到这行,当执行到这行时Esp32s会去抓自己的IP位址在哪里,并且输出在监控视窗中
server.begin();
Esp32s开启网页服务
接下来就是看下面AP mode的程序码啦
void setup() {
Serial.begin(115200);
// Initialize the output variables as outputs
pinMode(output0, OUTPUT);
pinMode(output2, OUTPUT);
// Set outputs to LOW
digitalWrite(output0, LOW);
digitalWrite(output2, LOW);
// Connect to Wi-Fi network with SSID and password
Serial.print("Setting AP (Access Point)…");
// Remove the password parameter, if you want the AP (Access Point) to be open
WiFi.softAP(ssidAP, passwordAP);
delay(500);
IPAddress IP = WiFi.softAPIP();
Serial.print("AP IP address: ");
Serial.println(IP);
server.begin();
}
你们会发现前几行又是跟STA mode相同,都是设置鲍率、定义脚位及设定脚位状态的部分,那我们就跳到第33行。
WiFi.softAP(ssidAP, passwordAP);
WiFi建立连结,可使使用者连结到Esp32s,但这边只做通道的部分,需要注意的是,当passwordAP没设置时,密码不用输入就可连结
IPAddress IP = WiFi.softAPIP();
softAPIP会将得到softAP的IP位址,就是192.168.4.1这IP,最後由Serial.println把IP显示在监控视窗中,其实这边可以省略直接Serial.println(WiFi.softAPIP());直接把IP位址显示出来
好了,今天这篇不知道大家有没有对STA跟AP mode的差别更加了解,如果没有後面几篇也会看到很多次,那下一篇会是讲解Esp32s用AP mode结合Relay(继电器),并控制Relay的开启与关闭,然後也不用很担心函式库汇入不会,因为後续有几篇会讲解到,今天只是稍微提起,那今天就这样罗~明天实作见。
前言 该系列是为了让看过Vue官方文件或学过Vue但是却不知道怎麽下手去重构现在有的网站而去规画的系...
更新 我把从第一天到现在每天的 Home 目录都放上 GitHub 了,README.md 里面有...
前言 ※本篇早先已於 110 年 10 月 15 日发布在我的部落格:[版本更新] 重点速记 ubu...
仔细回想一下,大概是在许多年前,就曾陆续看过 iT 邦帮忙相关广告或分享。但从没想过,这个品牌有一天...
千万不要在毫无准备的状态下奔赴战场! 面试已经是充满未知数的战场,如果你到了战场才发现自己把装备忘...