{"id":17354,"date":"2022-09-12T16:23:00","date_gmt":"2022-09-12T08:23:00","guid":{"rendered":"https:\/\/www.circuspi.com\/?p=17354"},"modified":"2023-10-30T13:36:14","modified_gmt":"2023-10-30T05:36:14","slug":"esp32-automatic-watering-plants-2","status":"publish","type":"post","link":"https:\/\/www.circuspi.com\/index.php\/2022\/09\/12\/esp32-automatic-watering-plants-2\/","title":{"rendered":"ESP32 \u5c08\u984c(\u4e8c) \u667a\u6167\u690d\u683d \u2013 \u81ea\u52d5\u6f86\u704c\u88dd\u7f6e(\u4e0b)"},"content":{"rendered":"\n<p><style>\n\/* ###\u5be6\u9a57\u4e0b\u4e00\u5217### *\/\n\na:link {color:#0695e4\n;}    \/* \u8a2d\u5b9a\u5c1a\u672a\u9ede\u95b1\u904e\u7684\u9023\u7d50\u6a23\u5f0f *\/\na:visited {color:#0695e4\n;} \/* \u8a2d\u5b9a\u904e\u53bb\u66fe\u7d93\u95b1\u904e\u7684\u9023\u7d50 *\/\na:hover {color:#0695e4\n;}   \/* \u8a2d\u5b9a\u6ed1\u9f20\u6e38\u6a19\u6307\u5728\u9023\u7d50\u4f4d\u7f6e\u4e0a\u7684\u6a23\u5f0f *\/\na:active {color:#0000BB;}  \/* \u8a2d\u5b9a\u4e0a\u9ede\u64ca\u904e\u7684\u9023\u7d50\u6a23\u5f0f *\/\n<\/style><\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"1500\" height=\"791\" src=\"https:\/\/www.circuspi.com\/wp-content\/uploads\/2022\/09\/V2B.jpg\" alt=\"\" class=\"wp-image-17544\"\/><\/figure>\n\n\n\n<p>\u5728 ESP32 \u5c08\u984c(\u4e8c) \u667a\u6167\u690d\u683d &#8211; \u81ea\u52d5\u6f86\u704c\u88dd\u7f6e(\u4e0a)\u4e2d\uff0c\u6211\u5011\u5df2\u7d93\u8a8d\u8b58\u4e86\u81ea\u52d5\u6f86\u704c\u88dd\u7f6e\u7684\u7d44\u88dd\u65b9\u5f0f\u548c\u904b\u4f5c\u539f\u7406\u4e86\uff0c\u73fe\u5728\u5c31\u8ddf\u8457\u6211\u5011\u66f4\u9032\u4e00\u6b65\u5f9e\u7a0b\u5f0f\u8a2d\u8a08\u5230\u7db2\u9801\u7684\u4f7f\u7528\u4ecb\u9762\u8a2d\u8a08\uff0c\u4e00\u8d77\u628a\u81ea\u52d5\u6f86\u704c\u88dd\u7f6e\u5b8c\u6210\u5427\uff01<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">\u4e5d\u3001\u7a0b\u5f0f\u8a2d\u8a08<\/h2>\n\n\n\n<p>\u6240\u6709\u7a0b\u5f0f\u78bc\u53ef\u5f9e <a href=\"https:\/\/github.com\/CIRCUSPi\/Smart_Sprinkler\" target=\"_blank\" rel=\"noreferrer noopener\">CIRCUSPi \/Smart_Sprinkler<\/a> \u53d6\u5f97\u3002<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">1. Arduino\u3000\u76f8\u95dc\u7a0b\u5f0f\u8aaa\u660e<\/h3>\n\n\n\n<p>Arduino \u7a0b\u5f0f\u4e3b\u8981\u57f7\u884c\u4ee5\u4e0b\u5de5\u4f5c\uff1a<\/p>\n\n\n\n<p>(1) \u555f\u7528 Wi-Fi<\/p>\n\n\n\n<p>(2) \u555f\u7528 OTA<\/p>\n\n\n\n<p>(3) \u555f\u7528 WebServer<\/p>\n\n\n\n<p>(4) \u904b\u884c\u4e3b\u908f\u8f2f\u7a0b\u5f0f<\/p>\n\n\n\n<p><strong>(1) \u555f\u7528 Wi-Fi<\/strong><\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"1291\" height=\"399\" src=\"https:\/\/www.circuspi.com\/wp-content\/uploads\/2022\/09\/16-1.png\" alt=\"ESP32 \u5c08\u984c(\u4e8c) \u667a\u6167\u690d\u683d - \u81ea\u52d5\u6f86\u704c\u88dd\u7f6e\" class=\"wp-image-17305\"\/><\/figure><\/div>\n\n\n<p>\u5728\u7a0b\u5f0f\u521d\u59cb\u5316\u57f7\u884c\uff0c\u9810\u8a2d\u6703\u5148\u4f7f\u7528 STA Mode \u9023\u7dda\uff0c\u82e5\u9023\u7dda\u5931\u6557\u5247\u6539\u7528 AP Mode \u9023\u7dda\u65b9\u5f0f\u3002<\/p>\n\n\n\n<p><strong>(2) \u555f\u7528 OTA<\/strong><\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"1272\" height=\"244\" src=\"https:\/\/www.circuspi.com\/wp-content\/uploads\/2022\/09\/17-1.png\" alt=\"ESP32 \u5c08\u984c(\u4e8c) \u667a\u6167\u690d\u683d - \u81ea\u52d5\u6f86\u704c\u88dd\u7f6e\" class=\"wp-image-17306\"\/><\/figure>\n\n\n\n<p>\u5728 Wi-Fi \u9023\u7dda\u5b8c\u6210\u5f8c\u57f7\u884c\uff0cOTA\uff08Over-the-air programming\uff09\uff0c\u610f\u601d\u662f\u300c\u7a7a\u4e2d\u7de8\u7a0b\u300d\uff0c\u53ef\u5229\u7528 Wi-Fi \u7121\u7dda\u4e0a\u50b3\u7a0b\u5f0f\u78bc\uff0c\u4e0d\u518d\u9700\u8981\u5c07\u88dd\u7f6e\u62c6\u958b\u6216\u9810\u7559\u71d2\u9304\u4ecb\u9762\u5373\u53ef\u5feb\u901f\u66f4\u65b0\u7a0b\u5f0f\u3002<\/p>\n\n\n\n<p><strong>(3) \u555f\u7528 WebServer<\/strong><\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"1269\" height=\"552\" src=\"https:\/\/www.circuspi.com\/wp-content\/uploads\/2022\/09\/18.png\" alt=\"ESP32 \u5c08\u984c(\u4e8c) \u667a\u6167\u690d\u683d - \u81ea\u52d5\u6f86\u704c\u88dd\u7f6e\" class=\"wp-image-17307\"\/><\/figure><\/div>\n\n\n<p>\u5728 OTA \u9806\u5229\u521d\u59cb\u5316\u5f8c\uff0c\u6211\u5011\u5c07\u904b\u884c WebServer\uff0c\u6210\u529f\u555f\u7528\u5f8c\u5c07\u8a3b\u518a\u6240\u6709 HTTP Handler\u3002<\/p>\n\n\n\n<p><strong>\u2027 HTTP API List<\/strong><\/p>\n\n\n\n<p>\u4e0b\u8868\u5217\u51fa\u9019\u6b21\u6703\u7528\u5230\u7684 HTTP API\u3002<\/p>\n\n\n\n<figure class=\"wp-block-table aligncenter\">\n<table style=\"height: 270px; width: 100%; border-color: #cccccc;\">\n<tbody>\n<tr style=\"height: 37px;\">\n<td style=\"width: 18.125%; height: 38px; text-align: center;\"><strong>URL<\/strong><\/td>\n<td style=\"width: 21.1458%; height: 38px; text-align: center;\"><strong>Method<\/strong><\/td>\n<td style=\"width: 30.7291%; height: 38px; text-align: center;\"><strong>Handler<\/strong><\/td>\n<td style=\"width: 29.7917%; height: 38px; text-align: center;\"><strong>\u8aaa\u660e<\/strong><\/td>\n<\/tr>\n<tr style=\"height: 37px;\">\n<td style=\"width: 18.125%; height: 37px; text-align: center;\">\/<\/td>\n<td style=\"width: 21.1458%; height: 37px; text-align: center;\">GET<\/td>\n<td style=\"width: 30.7291%; height: 37px; text-align: center;\">GetMainPage<\/td>\n<td style=\"width: 29.7917%; height: 37px; text-align: center;\">\u53d6\u5f97\u4e3b\u9801\u9762<\/td>\n<\/tr>\n<tr style=\"height: 10px;\">\n<td style=\"width: 18.125%; height: 10px; text-align: center;\">\/waterVal<\/td>\n<td style=\"width: 21.1458%; height: 10px; text-align: center;\">GET<\/td>\n<td style=\"width: 30.7291%; height: 10px; text-align: center;\">GetWaterVal_handler<\/td>\n<td style=\"width: 29.7917%; height: 10px; text-align: center;\">\u53d6\u5f97\u6c34\u5206\u767e\u5206\u6bd4\u8207\u539f\u59cbADC\u6578\u503c<\/td>\n<\/tr>\n<tr style=\"height: 37px;\">\n<td style=\"width: 18.125%; height: 37px; text-align: center;\">\/setVal<\/td>\n<td style=\"width: 21.1458%; height: 37px; text-align: center;\">GET<\/td>\n<td style=\"width: 30.7291%; height: 37px; text-align: center;\">GetSetVal_handler<\/td>\n<td style=\"width: 29.7917%; height: 37px; text-align: center;\">\u53d6\u5f97\u6240\u6709\u5df2\u8a2d\u5b9a\u53c3\u6578<\/td>\n<\/tr>\n<tr style=\"height: 37px;\">\n<td style=\"width: 18.125%; height: 37px; text-align: center;\">\/save<\/td>\n<td style=\"width: 21.1458%; height: 37px; text-align: center;\">POST<\/td>\n<td style=\"width: 30.7291%; height: 37px; text-align: center;\">SetSave_handler<\/td>\n<td style=\"width: 29.7917%; height: 37px; text-align: center;\">\u8a2d\u5b9a\u5132\u5b58\u76ee\u524d\u53c3\u6578<\/td>\n<\/tr>\n<tr style=\"height: 37px;\">\n<td style=\"width: 18.125%; height: 37px; text-align: center;\">\/bumpOn<\/td>\n<td style=\"width: 21.1458%; height: 37px; text-align: center;\">GET<\/td>\n<td style=\"width: 30.7291%; height: 37px; text-align: center;\">SetBumpON_handler<\/td>\n<td style=\"width: 29.7917%; height: 37px; text-align: center;\">\u555f\u52d5\u62bd\u6c34\u99ac\u9054<\/td>\n<\/tr>\n<tr style=\"height: 37px;\">\n<td style=\"width: 18.125%; height: 37px; text-align: center;\">\/bumpOff<\/td>\n<td style=\"width: 21.1458%; height: 37px; text-align: center;\">GET<\/td>\n<td style=\"width: 30.7291%; height: 37px; text-align: center;\">SetBumpOFF_handler<\/td>\n<td style=\"width: 29.7917%; height: 37px; text-align: center;\">\u95dc\u9589\u62bd\u6c34\u99ac\u9054<\/td>\n<\/tr>\n<tr style=\"height: 37px;\">\n<td style=\"width: 18.125%; height: 37px; text-align: center;\">\/mode<\/td>\n<td style=\"width: 21.1458%; height: 37px; text-align: center;\">POST<\/td>\n<td style=\"width: 30.7291%; height: 37px; text-align: center;\">SetMode_handler<\/td>\n<td style=\"width: 29.7917%; height: 37px; text-align: center;\">\u8a2d\u5b9a\u7576\u524d\u6a21\u5f0f<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/figure>\n\n\n\n<p><strong>\u2027 HTTP API \u53c3\u6578\u8aaa\u660e\u5982\u4e0b<\/strong><\/p>\n\n\n\n<p>\u2027 \u4e3b\u9801\u9762 API \u53c3\u6578<\/p>\n<table style=\"width: 99.9983%; border-color: #cccccc;\">\n<tbody>\n<tr>\n<td style=\"width: 106.868%;\" colspan=\"2\">\n<p style=\"text-align: center;\"><b>\/&nbsp; \u53d6\u5f97\u4e3b\u9801\u9762\uff08GET\uff09\uff0cFormat\uff1aNone<\/b><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"width: 48.9583%; text-align: center;\">\n<p><b>Name<\/b><\/p>\n<\/td>\n<td style=\"width: 57.9098%; text-align: center;\">\n<p><b>Description<\/b><\/p>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>\u2027 waterVal API \u53c3\u6578<\/p>\n<table style=\"height: 256px; width: 100%; border-color: #cccccc;\">\n<tbody>\n<tr style=\"height: 64px;\">\n<td style=\"width: 99.1667%; height: 64px;\" colspan=\"2\">\n<p style=\"text-align: center;\"><b>\/waterVal &nbsp; &nbsp; \u53d6\u5f97\u6c34\u5206\u767e\u5206\u6bd4\u8207\u539f\u59cbADC\u6578\u503c\uff08GET\uff09\uff0cFormat\uff1aJSON<\/b><\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 64px;\">\n<td style=\"width: 47.8125%; height: 64px; text-align: center;\">\n<p><b>Name<\/b><\/p>\n<\/td>\n<td style=\"width: 51.3542%; height: 64px; text-align: center;\">\n<p><b>Description<\/b><\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 64px;\">\n<td style=\"width: 47.8125%; height: 64px; text-align: center;\">\n<p><span style=\"font-weight: 400;\">valP<\/span><\/p>\n<\/td>\n<td style=\"width: 51.3542%; height: 64px; text-align: center;\">\n<p><span style=\"font-weight: 400;\">\u7d93\u904e\u4e0a\u4e0b\u9650\u8a2d\u5b9a\u5f8c\u8a08\u7b97\u51fa\u7684\u6c34\u5206\u767e\u5206\u6bd4<\/span><\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 64px;\">\n<td style=\"width: 47.8125%; height: 64px; text-align: center;\">\n<p><span style=\"font-weight: 400;\">raw<\/span><\/p>\n<\/td>\n<td style=\"width: 51.3542%; height: 64px; text-align: center;\">\n<p><span style=\"font-weight: 400;\">\u611f\u6e2c\u5668\u539f\u59cbADC\u6578\u503c<\/span><\/p>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>\u2027 setVal API \u53c3\u6578<\/p>\n<table style=\"height: 511px; width: 100%; border-color: #cccccc;\">\n<tbody>\n<tr style=\"height: 64px;\">\n<td style=\"height: 64px; width: 99.1667%; text-align: center;\" colspan=\"2\">\n<p style=\"text-align: center;\"><b>\/setVal &nbsp; &nbsp; \u53d6\u5f97\u6240\u6709\u5df2\u8a2d\u5b9a\u53c3\u6578\uff08GET\uff09\uff0cFormat\uff1aJSON<\/b><\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 63px;\">\n<td style=\"height: 63px; width: 48.0208%; text-align: center;\">\n<p><b>Name<\/b><\/p>\n<\/td>\n<td style=\"height: 63px; width: 51.1458%; text-align: center;\">\n<p><b>Description<\/b><\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 64px;\">\n<td style=\"height: 64px; width: 48.0208%; text-align: center;\">\n<p><span style=\"font-weight: 400;\">mode<\/span><\/p>\n<\/td>\n<td style=\"height: 64px; width: 51.1458%; text-align: center;\">\n<p><span style=\"font-weight: 400;\">\u7576\u524d\u8a2d\u5b9a\u6a21\u5f0f<\/span><\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 64px;\">\n<td style=\"height: 64px; width: 48.0208%; text-align: center;\">\n<p><span style=\"font-weight: 400;\">highVal<\/span><\/p>\n<\/td>\n<td style=\"height: 64px; width: 51.1458%; text-align: center;\">\n<p><span style=\"font-weight: 400;\">\u7576\u524d\u8a2d\u5b9a\u6700\u9ad8\u6c34\u91cf\u6578\u503c<\/span><\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 64px;\">\n<td style=\"height: 64px; width: 48.0208%; text-align: center;\">\n<p><span style=\"font-weight: 400;\">lowVal<\/span><\/p>\n<\/td>\n<td style=\"height: 64px; width: 51.1458%; text-align: center;\">\n<p><span style=\"font-weight: 400;\">\u7576\u524d\u8a2d\u5b9a\u6700\u4f4e\u6c34\u91cf\u6578\u503c<\/span><\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 64px;\">\n<td style=\"height: 64px; width: 48.0208%; text-align: center;\">\n<p><span style=\"font-weight: 400;\">lowLimit<\/span><\/p>\n<\/td>\n<td style=\"height: 64px; width: 51.1458%; text-align: center;\">\n<p><span style=\"font-weight: 400;\">\u7576\u524d\u8a2d\u5b9a\u81ea\u52d5\u6f86\u6c34\u4e0b\u9650\u6c34\u5206\u767e\u5206\u6bd4<\/span><\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 64px;\">\n<td style=\"height: 64px; width: 48.0208%; text-align: center;\">\n<p><span style=\"font-weight: 400;\">interval<\/span><\/p>\n<\/td>\n<td style=\"height: 64px; width: 51.1458%; text-align: center;\">\n<p><span style=\"font-weight: 400;\">\u7576\u524d\u8a2d\u5b9a\u5b9a\u6642\u6f86\u6c34\u6642\u9593\u9593\u9694<\/span><\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 64px;\">\n<td style=\"height: 64px; width: 48.0208%; text-align: center;\">\n<p><span style=\"font-weight: 400;\">waterSec<\/span><\/p>\n<\/td>\n<td style=\"height: 64px; width: 51.1458%; text-align: center;\">\n<p><span style=\"font-weight: 400;\">\u7576\u524d\u8a2d\u5b9a\u5b9a\u6642\u6f86\u6c34\u6301\u7e8c\u79d2\u6578<\/span><\/p>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>\u2027 save API \u53c3\u6578<\/p>\n<table style=\"height: 449px; width: 100%; border-color: #cccccc;\">\n<tbody>\n<tr style=\"height: 64px;\">\n<td style=\"width: 99.1667%; height: 64px; text-align: center;\" colspan=\"2\">\n<p style=\"text-align: center;\"><b>\/save &nbsp; &nbsp; \u8a2d\u5b9a\u5132\u5b58\u76ee\u524d\u53c3\u6578\uff08POST\uff09\uff0cFormat\uff1aJSON<\/b><\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 64px;\">\n<td style=\"width: 48.0208%; height: 64px; text-align: center;\">\n<p><b>Name<\/b><\/p>\n<\/td>\n<td style=\"width: 51.1458%; height: 64px; text-align: center;\">\n<p><b>Description<\/b><\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 65px;\">\n<td style=\"width: 48.0208%; height: 65px; text-align: center;\">\n<p><span style=\"font-weight: 400;\">highVal<\/span><\/p>\n<\/td>\n<td style=\"width: 51.1458%; height: 65px; text-align: center;\">\n<p><span style=\"font-weight: 400;\">\u8a2d\u5b9a\u6700\u9ad8\u6c34\u91cf\u6578\u503c<\/span><\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 64px;\">\n<td style=\"width: 48.0208%; height: 64px; text-align: center;\">\n<p><span style=\"font-weight: 400;\">lowVal<\/span><\/p>\n<\/td>\n<td style=\"width: 51.1458%; height: 64px; text-align: center;\">\n<p><span style=\"font-weight: 400;\">\u8a2d\u5b9a\u6700\u4f4e\u6c34\u91cf\u6578\u503c<\/span><\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 64px;\">\n<td style=\"width: 48.0208%; height: 64px; text-align: center;\">\n<p><span style=\"font-weight: 400;\">lowLimit<\/span><\/p>\n<\/td>\n<td style=\"width: 51.1458%; height: 64px; text-align: center;\">\n<p><span style=\"font-weight: 400;\">\u8a2d\u5b9a\u81ea\u52d5\u6f86\u6c34\u4e0b\u9650\u6c34\u5206\u767e\u5206\u6bd4<\/span><\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 64px;\">\n<td style=\"width: 48.0208%; height: 64px; text-align: center;\">\n<p><span style=\"font-weight: 400;\">interval<\/span><\/p>\n<\/td>\n<td style=\"width: 51.1458%; height: 64px; text-align: center;\">\n<p><span style=\"font-weight: 400;\">\u8a2d\u5b9a\u5b9a\u6642\u6f86\u6c34\u6642\u9593\u9593\u9694<\/span><\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 64px;\">\n<td style=\"width: 48.0208%; height: 64px; text-align: center;\">\n<p><span style=\"font-weight: 400;\">waterSec<\/span><\/p>\n<\/td>\n<td style=\"width: 51.1458%; height: 64px; text-align: center;\">\n<p><span style=\"font-weight: 400;\">\u8a2d\u5b9a\u5b9a\u6642\u6f86\u6c34\u6301\u7e8c\u79d2\u6578<\/span><\/p>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>\u2027 bumpOn API \u53c3\u6578<\/p>\n<table style=\"height: 192px; width: 100%; border-color: #cccccc;\">\n<tbody>\n<tr style=\"height: 64px;\">\n<td style=\"height: 64px; width: 99.1667%; text-align: center;\" colspan=\"2\">\n<p style=\"text-align: center;\"><b>\/bumpOn &nbsp; &nbsp; \u555f\u52d5\u62bd\u6c34\u99ac\u9054\uff08GET\uff09\uff0cFormat\uff1aNone<\/b><\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 64px;\">\n<td style=\"height: 64px; width: 48.125%; text-align: center;\">\n<p><b>Name<\/b><\/p>\n<\/td>\n<td style=\"height: 64px; width: 51.0417%; text-align: center;\">\n<p><b>Description<\/b><\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 64px;\">\n<td style=\"width: 48.125%; text-align: center; height: 64px;\">\n<p><b>&nbsp;<\/b><\/p>\n<\/td>\n<td style=\"width: 51.0417%; text-align: center; height: 64px;\">\n<p><b>&nbsp;<\/b><\/p>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>\u2027 bumpOff API \u53c3\u6578<\/p>\n<table style=\"height: 155px; width: 100.104%; border-color: #cccccc;\">\n<tbody>\n<tr style=\"height: 64px;\">\n<td style=\"height: 64px; width: 99.2709%; text-align: center;\" colspan=\"2\">\n<p><b>\/bumpOff &nbsp; &nbsp; \u95dc\u9589\u62bd\u6c34\u99ac\u9054\uff08GET\uff09 \uff0cFormat\uff1aNone<\/b><\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 64px;\">\n<td style=\"height: 64px; width: 48.125%; text-align: center;\">\n<p><b>Name<\/b><\/p>\n<\/td>\n<td style=\"height: 64px; width: 51.1459%; text-align: center;\">\n<p><b>Description<\/b><\/p>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>\u2027 mode API \u53c3\u6578<\/p>\n<table style=\"height: 192px; width: 100%; border-color: #cccccc;\">\n<tbody>\n<tr style=\"height: 64px;\">\n<td style=\"width: 99.1667%; height: 64px; text-align: center;\" colspan=\"2\">\n<p><b>\/mode &nbsp; &nbsp; \u8a2d\u5b9a\u7576\u524d\u6a21\u5f0f\uff08POST\uff09 \uff0cFormat\uff1aRaw Text<\/b><\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 64px;\">\n<td style=\"width: 48.125%; height: 64px; text-align: center;\">\n<p><b>Name<\/b><\/p>\n<\/td>\n<td style=\"width: 51.0417%; height: 64px; text-align: center;\">\n<p><b>Description<\/b><\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 64px;\">\n<td style=\"width: 48.125%; height: 64px; text-align: center;\">\n<p><span style=\"font-weight: 400;\">mode<\/span><\/p>\n<\/td>\n<td style=\"width: 51.0417%; height: 64px; text-align: center;\">\n<p><span style=\"font-weight: 400;\">\u6a21\u5f0f\uff080\uff1a\u81ea\u52d5\uff0c1\uff1a\u624b\u52d5\uff0c2\uff1a\u5b9a\u6642\uff09<\/span><\/p>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n\n\n\n<p><strong>(4) \u904b\u884c\u4e3b\u908f\u8f2f\u7a0b\u5f0f<\/strong><\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full is-resized\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.circuspi.com\/wp-content\/uploads\/2022\/09\/19-1.png\" alt=\"\" class=\"wp-image-17381\" width=\"812\" height=\"502\"\/><\/figure><\/div>\n\n\n<p>\u4e3b\u7a0b\u5f0f\u4e3b\u8981\u6703\u6839\u64da\u7576\u524d\u6a21\u5f0f\u57f7\u884c\u5404\u9805<strong>\u6f86\u6c34\u52d5\u4f5c<\/strong>\uff0c\u5206\u5225\u6709\u300c\u81ea\u52d5\u300d\u3001\u300c\u624b\u52d5\u300d\u3001\u300c\u5b9a\u6642\u300d\u4e09\u7a2e\u6a21\u5f0f\u53ef\u4ee5\u8a2d\u5b9a\uff0c\u4e09\u7a2e\u6a21\u5f0f\u52d5\u4f5c\u8aaa\u660e\u5982\u4e0b\uff1a<\/p>\n\n\n\n<ul>\n<li><strong>\u81ea\u52d5<\/strong>\uff1a\u6b64\u6a21\u5f0f\u6703\u6839\u64da\u4f7f\u7528\u8005\u8a2d\u5b9a\u7684\u300c\u81ea\u52d5\u6f86\u6c34\u4e0b\u9650\u767e\u5206\u6bd4\u300d\u8207\u571f\u58e4\u7576\u524d\u6c34\u5206\u767e\u5206\u6bd4\u6bd4\u5c0d\u4e26\u81ea\u52d5\u6f86\u6c34\uff0c\u5176\u4e2d\u6709\u7528\u5230\u6a21\u7cca\u63a7\u5236\u6f14\u7b97\u6cd5\uff0c\u6bd4\u4f8b\u70ba 10%\u3002<\/li>\n\n\n\n<li><strong>\u624b\u52d5<\/strong>\uff1a\u6b64\u6a21\u5f0f\u5b8c\u5168\u4ea4\u7531\u4f7f\u7528\u8005\u624b\u52d5\u64cd\u4f5c\u958b\u555f\u6216\u505c\u6b62\u6f86\u6c34\u3002<\/li>\n\n\n\n<li><strong>\u5b9a\u6642<\/strong>\uff1a\u6b64\u6a21\u5f0f\u6703\u6839\u64da\u4f7f\u7528\u8005\u8a2d\u5b9a\u7684\u300c\u5b9a\u6642\u6f86\u6c34\u9593\u9694\u300d\u8207\u300c\u6f86\u6c34\u6301\u7e8c\u79d2\u6578\u300d\u5b9a\u6642\u6f86\u6c34\u3002<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">2. Web(HTML\u3001CSS\u3001JavaScript)<\/h3>\n\n\n\n<p>Web\u7a0b\u5f0f\u4e3b\u8981\u57f7\u884c\u4ee5\u4e0b\u5de5\u4f5c\uff1a<\/p>\n\n\n\n<p>(1) \u6e32\u67d3 UI\uff08HTML\uff09<\/p>\n\n\n\n<p>(2) \u8a2d\u5b9a\u5143\u4ef6\u6a23\u5f0f\uff08CSS\u8a2d\u5b9a\uff09<\/p>\n\n\n\n<p>(3) \u6839\u64da\u9078\u64c7\u6a21\u5f0f\u5207\u63dbUI\u5143\u4ef6\uff08JavaScript\uff09<\/p>\n\n\n\n<p>(4) \u900f\u904e\u7570\u6b65HTTP\u767c\u9001\u5c0d\u61c9\u8acb\u6c42\uff08JavaScript\uff09<\/p>\n\n\n\n<p>(5) \u5b9a\u6642\u8acb\u6c42\u8cc7\u6599\uff08JavaScript\uff09<\/p>\n\n\n\n<p><strong>(1) \u6e32\u67d3 UI<\/strong><\/p>\n\n\n\n<p>\u4f7f\u7528 HTML \u8a2d\u8a08\u6211\u5011\u9700\u8981\u7684\u5143\u4ef6\uff0c\u7a0b\u5f0f\u5982\u4e0b\uff1a<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full is-resized\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.circuspi.com\/wp-content\/uploads\/2022\/09\/20-1.png\" alt=\"\" class=\"wp-image-17382\" width=\"741\" height=\"707\"\/><\/figure><\/div>\n\n\n<p><strong>(2) \u8a2d\u5b9a\u5143\u4ef6\u6a23\u5f0f<\/strong><\/p>\n\n\n\n<p>\u4f7f\u7528 CSS \u8a2d\u5b9a\u6211\u5011\u7684\u5143\u4ef6\u6a23\u5f0f\uff0c\u8b93\u5143\u4ef6\u5916\u89c0\u66f4\u4f73\u7f8e\u89c0\uff0c\u7a0b\u5f0f\u5982\u4e0b\uff1a<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"472\" height=\"599\" src=\"https:\/\/www.circuspi.com\/wp-content\/uploads\/2022\/09\/21.png\" alt=\"ESP32 \u5c08\u984c(\u4e8c) \u667a\u6167\u690d\u683d - \u81ea\u52d5\u6f86\u704c\u88dd\u7f6e\" class=\"wp-image-17310\"\/><\/figure><\/div>\n\n\n<p><strong>(3) \u6839\u64da\u9078\u64c7\u6a21\u5f0f\u5207\u63db UI \u5143\u4ef6<\/strong><\/p>\n\n\n\n<p>\u6839\u64da\u4f7f\u7528\u8005\u6240\u9078\u7684\u6a21\u5f0f\u5207\u63db\u8981\u986f\u793a\u7684\u5143\u4ef6\uff0c\u7a0b\u5f0f\u5982\u4e0b\uff1a<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"780\" height=\"288\" src=\"https:\/\/www.circuspi.com\/wp-content\/uploads\/2022\/09\/22-1.png\" alt=\"ESP32 \u5c08\u984c(\u4e8c) \u667a\u6167\u690d\u683d - \u81ea\u52d5\u6f86\u704c\u88dd\u7f6e\" class=\"wp-image-17312\"\/><\/figure><\/div>\n\n\n<p><strong>(4) \u900f\u904e\u7570\u6b65 HTTP \u767c\u9001\u5c0d\u61c9\u8acb\u6c42<\/strong><\/p>\n\n\n\n<p>\u900f\u904e\u7570\u6b65 HTTP XMLHttpRequest \u767c\u9001\u6307\u5b9a Json \u8cc7\u6599\u5230 Server \u7aef\uff0c\u7a0b\u5f0f\u5982\u4e0b\uff1a<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"714\" height=\"328\" src=\"https:\/\/www.circuspi.com\/wp-content\/uploads\/2022\/09\/23.png\" alt=\"ESP32 \u5c08\u984c(\u4e8c) \u667a\u6167\u690d\u683d - \u81ea\u52d5\u6f86\u704c\u88dd\u7f6e\" class=\"wp-image-17313\"\/><\/figure><\/div>\n\n\n<p><strong>(5) \u5b9a\u6642\u8acb\u6c42\u8cc7\u6599<\/strong><\/p>\n\n\n\n<p>\u900f\u904e setInterval \u65b9\u6cd5\uff0c\u6bcf 2 \u79d2\u5b9a\u6642\u547c\u53eb function GetWaterVal \uff0c\u53d6\u5f97\u6700\u65b0\u8cc7\u6599\uff0c\u7a0b\u5f0f\u5982\u4e0b\uff1a<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter\"><img decoding=\"async\" src=\"https:\/\/lh4.googleusercontent.com\/qEbHx_gnEE2jRlSTi0jF4F4WDIqJFqtjyVMmZfK-56nhW-yqubP1UNAsFD7lOnfD6-NqQmiPWFRTxj1KMthsDOBsYR8H_4yK_Kv327GrdJovWku5zxBLwhSQOaPUsrPMpRLF0Iuy_Y9OOZADzzkXO16RyyH6AJy-XWHa1-6azbFDLSligKlRae9MwA\" alt=\"ESP32 \u5c08\u984c(\u4e8c) \u667a\u6167\u690d\u683d - \u81ea\u52d5\u6f86\u704c\u88dd\u7f6e\"\/><\/figure><\/div>\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter\"><img decoding=\"async\" src=\"https:\/\/lh4.googleusercontent.com\/ih_ecpSHNW4JpYO_PoNuCYH2KeCq4dSYiYSfmOaEjbY1EkZb3U981B8GCjC9817pCXJTBEKnlt7UttDpccyZefRs84jD6v9F2-f6czIgyt8jaSFBdHo4diwEdtOSfh-NNVilYoLwQt61kfcLUEnsFRCi_--hB-GoU7Nf_FF8t_ghlYrA41coVQqpTg\" alt=\"ESP32 \u5c08\u984c(\u4e8c) \u667a\u6167\u690d\u683d - \u81ea\u52d5\u6f86\u704c\u88dd\u7f6e\"\/><\/figure><\/div>\n\n\n<h2 class=\"wp-block-heading\">\u5341\u3001\u71d2\u9304\u7a0b\u5f0f<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\">1. \u5b89\u88dd\u958b\u767c\u677f<\/h3>\n\n\n\n<p>\u5f9e Arduino IDE \u958b\u767c\u677f\u7ba1\u7406\u54e1\u5b89\u88dd\u300cM5Stack\u300d\u7cfb\u5217\u958b\u767c\u677f\uff0c\u5176\u4e2d\u5305\u542b\u6211\u5011\u9019\u6b21\u6703\u7528\u5230\u7684\u300cSTAMP-PICO\u300d\u958b\u767c\u677f\u3002<\/p>\n\n\n\n<ul>\n<li>M5Stack ( V2.0.4 )<\/li>\n<\/ul>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full is-resized\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.circuspi.com\/wp-content\/uploads\/2022\/09\/24.png\" alt=\"ESP32 \u5c08\u984c(\u4e8c) \u667a\u6167\u690d\u683d - \u81ea\u52d5\u6f86\u704c\u88dd\u7f6e\" class=\"wp-image-17314\" width=\"855\" height=\"481\"\/><\/figure><\/div>\n\n\n<h3 class=\"wp-block-heading\">2. \u5b89\u88dd Library<\/h3>\n\n\n\n<p>\u81ea\u52d5\u6f86\u704c\u88dd\u7f6e\u6703\u9700\u8981\u4f7f\u7528\u5230\u4e0b\u5217 Library\uff0c\u53ef\u5f9e Arduino Library Manager \u5b89\u88dd\u3002<\/p>\n\n\n\n<ul>\n<li><a href=\"https:\/\/arduinojson.org\/?utm_source=meta&amp;utm_medium=library.properties\" target=\"_blank\" rel=\"noreferrer noopener\">ArduinoJson <\/a>( V6.19.4 )<\/li>\n\n\n\n<li><a href=\"https:\/\/github.com\/m5stack\/STAMP-PICO\" target=\"_blank\" rel=\"noreferrer noopener\">STAMP-PICO<\/a> ( V0.0.2 )<\/li>\n\n\n\n<li><a href=\"https:\/\/github.com\/FastLED\/FastLED\" target=\"_blank\" rel=\"noreferrer noopener\">FastLED<\/a> ( V3.5.0 )<\/li>\n\n\n\n<li><a href=\"https:\/\/github.com\/tzapu\/WiFiManager\" target=\"_blank\" rel=\"noreferrer noopener\">WiFiManager<\/a> ( V2.0.12-beta )<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">3. \u6709\u7dda\u71d2\u9304<\/h3>\n\n\n\n<p>\u521d\u6b21\u71d2\u9304\u6216\u7a0b\u5f0f\u5167\u6c92\u6709 OTA \u66f4\u65b0\u7a0b\u5e8f\uff0c\u5c31\u9700\u8981\u85c9\u7531\u6709\u7dda\u71d2\u9304\u7684\u65b9\u5f0f\uff0c\u900f\u904e USB \u8f49 TTL \u5de5\u5177\u71d2\u9304\u7a0b\u5f0f\uff0c\u8a73\u7d30\u71d2\u9304\u8acb\u4f9d\u7167\u4e0b\u5217\u6d41\u7a0b\uff1a<\/p>\n\n\n\n<p>(1) \u6e96\u5099\u300cCP2102 \u6a21\u7d44USB\u8f49TTL\u300d\u6a21\u7d44\uff0c\u4f9d\u7167\u4e0b\u5217\u5c0d\u7167\u8868\u63a5\u7dda\u3002<\/p>\n\n\n\n<figure class=\"wp-block-table aligncenter\"><table><tbody><tr><td class=\"has-text-align-center\" data-align=\"center\"><strong>M5Stamp-PICO<\/strong><\/td><td class=\"has-text-align-center\" data-align=\"center\"><strong>CP2102\u6a21\u7d44<\/strong><\/td><\/tr><tr><td class=\"has-text-align-center\" data-align=\"center\">+5V<\/td><td class=\"has-text-align-center\" data-align=\"center\">5V<\/td><\/tr><tr><td class=\"has-text-align-center\" data-align=\"center\">GND<\/td><td class=\"has-text-align-center\" data-align=\"center\">G<\/td><\/tr><tr><td class=\"has-text-align-center\" data-align=\"center\">RXD<\/td><td class=\"has-text-align-center\" data-align=\"center\">G1<\/td><\/tr><tr><td class=\"has-text-align-center\" data-align=\"center\">TXD<\/td><td class=\"has-text-align-center\" data-align=\"center\">G3<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full is-resized\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.circuspi.com\/wp-content\/uploads\/2022\/09\/25-2.jpg\" alt=\"ESP32 \u5c08\u984c(\u4e8c) \u667a\u6167\u690d\u683d - \u81ea\u52d5\u6f86\u704c\u88dd\u7f6e\" class=\"wp-image-17385\" width=\"557\" height=\"742\"\/><\/figure><\/div>\n\n\n<p>(2) \u6e96\u5099\u4e00\u500b\u300c\u77ed\u8def\u8df3\u5e3d\u300d\uff0c\u5c07\u300cG0\u300d\u63a5\u5730\uff08\u8207 GND \u9023\u63a5\uff09\uff0c\u5982\u4e0b\u5716\u6240\u793a\uff1a<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full is-resized\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.circuspi.com\/wp-content\/uploads\/2022\/09\/26-1.jpg\" alt=\"ESP32 \u5c08\u984c(\u4e8c) \u667a\u6167\u690d\u683d - \u81ea\u52d5\u6f86\u704c\u88dd\u7f6e\" class=\"wp-image-17386\" width=\"597\" height=\"448\"\/><\/figure><\/div>\n\n\n<p>(3) \u900f\u904e Arduino IDE \u958b\u555f\u7a0b\u5f0f\u300cSmart_Sprinkler.ino\u300d\u4e26\u4e0a\u50b3\uff0c\u5982\u4e0b\u5716\u6240\u793a\uff1a<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full is-resized\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.circuspi.com\/wp-content\/uploads\/2022\/09\/27-1.png\" alt=\"ESP32 \u5c08\u984c(\u4e8c) \u667a\u6167\u690d\u683d - \u81ea\u52d5\u6f86\u704c\u88dd\u7f6e\" class=\"wp-image-17387\" width=\"619\" height=\"685\"\/><\/figure><\/div>\n\n\n<p>(4) \u79fb\u9664\u300c\u77ed\u8def\u8df3\u5e3d\u300d\u4e26\u91cd\u65b0\u4e0a\u96fb\u555f\u52d5\u3002<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">4. \u7121\u7dda\u71d2\u9304<\/h3>\n\n\n\n<p>\u7121\u7dda\u71d2\u9304\u5fc5\u9808\u8981\u5728\u7a0b\u5f0f\u5167\u90e8\u4e8b\u5148\u57cb\u597d OTA \u71d2\u9304\u7684\u7a0b\u5f0f\uff0c\u521d\u6b21\u62ff\u5230\u5957\u4ef6 M5Stamp-PICO \u6642\uff0c\u5167\u90e8\u4e0d\u6703\u6709 OTA \u71d2\u9304\u7a0b\u5f0f\uff0c\u5fc5\u9808\u5148\u4f7f\u7528\u6709\u7dda\u71d2\u9304\uff0c\u5728\u7a0b\u5f0f\u78bc\u5167\u52a0\u5165 OTA \u71d2\u9304\u7684\u7a0b\u5f0f\u5f8c\uff0c\u5373\u53ef\u4f7f\u7528 OTA \u7121\u7dda\u71d2\u9304\uff0c\u8a73\u7d30\u71d2\u9304\u8acb\u4f9d\u7167\u4e0b\u5217\u6d41\u7a0b\uff1a<\/p>\n\n\n\n<p>(1) \u5c07\u300cM5Stamp-PICO\u300d\u4e0a\u96fb\uff0c\u300cG1\u3001G3\u300d\u53ef\u4e0d\u63a5\uff0c\u7121\u9808\u63d2\u5165\u300c\u77ed\u8def\u8df3\u5e3d\u300d\u3002<\/p>\n\n\n\n<p>(2) \u4f7f\u7528 Wi-Fi \u5c07\u96fb\u8166\u9023\u63a5\u5230\u300cSmart_Sprinkler_AP\u300d\u6216\u8207\u5b83\u8655\u65bc\u76f8\u540c\u5340\u57df\u7db2\u8def\u3002<\/p>\n\n\n\n<p>(3) \u95dc\u9589\u96fb\u8166\u300cPublic network\u300d\u9632\u706b\u7246\uff0c\u5982\u4e0b\u5716\u6240\u793a\uff0c\u9032\u884c\u76f8\u95dc\u52d5\u4f5c\uff1a<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full is-resized\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.circuspi.com\/wp-content\/uploads\/2022\/09\/28-1.png\" alt=\"ESP32 \u5c08\u984c(\u4e8c) \u667a\u6167\u690d\u683d - \u81ea\u52d5\u6f86\u704c\u88dd\u7f6e\" class=\"wp-image-17388\" width=\"566\" height=\"139\"\/><\/figure><\/div>\n\n\n<p>(4) \u958b\u555f Arduino IDE\uff0c\u9078\u64c7\u76ee\u6a19 \u300cNetwork ports\u300d\u71d2\u9304\u5e8f\u5217\u57e0\u88dd\u7f6e IP\u3002<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full is-resized\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.circuspi.com\/wp-content\/uploads\/2022\/09\/29-1.png\" alt=\"ESP32 \u5c08\u984c(\u4e8c) \u667a\u6167\u690d\u683d - \u81ea\u52d5\u6f86\u704c\u88dd\u7f6e\" class=\"wp-image-17389\" width=\"618\" height=\"549\"\/><\/figure><\/div>\n\n\n<p>(5) \u5982\u540c\u4e00\u822c\u71d2\u9304\u904e\u7a0b\uff0c\u5176\u4e2d\u82e5\u4e2d\u9593\u8981\u6c42\u8f38\u5165\u5bc6\u78bc\u8acb\u8f38\u5165\u300c12345678\u300d\uff08\u4f7f\u7528\u8005\u53ef\u81ea\u884c\u900f\u904e\u7a0b\u5f0f\u4fee\u6539\uff09\u3002<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full is-resized\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.circuspi.com\/wp-content\/uploads\/2022\/09\/30.png\" alt=\"ESP32 \u5c08\u984c(\u4e8c) \u667a\u6167\u690d\u683d - \u81ea\u52d5\u6f86\u704c\u88dd\u7f6e\" class=\"wp-image-17320\" width=\"450\" height=\"262\"\/><\/figure><\/div>\n\n\n<p>(6) \u7b49\u5f85\u4e0a\u50b3\u5b8c\u7562\u5373\u53ef\u3002<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full is-resized\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.circuspi.com\/wp-content\/uploads\/2022\/09\/31.png\" alt=\"ESP32 \u5c08\u984c(\u4e8c) \u667a\u6167\u690d\u683d - \u81ea\u52d5\u6f86\u704c\u88dd\u7f6e\" class=\"wp-image-17321\" width=\"777\" height=\"170\"\/><\/figure><\/div>\n\n\n<h2 class=\"wp-block-heading\">\u5341\u4e00\u3001\u8a2d\u5b9a Wi-Fi<\/h2>\n\n\n\n<p>\u81ea\u52d5\u6f86\u704c\u88dd\u7f6e\u9023\u7dda\u6a21\u5f0f\u5206\u6210\u300cAP Mode\u300d\u3001\u300cSTA Mode\u300d\u5169\u7a2e\uff0c\u4f7f\u7528\u60c5\u5883\u4e0d\u540c\uff0c\u8a73\u7d30\u4ecb\u7d39\u53ca\u64cd\u4f5c\u65b9\u5f0f\u8acb\u53c3\u8003\u4e0b\u5217\u8aaa\u660e\uff1a<\/p>\n\n\n\n<p><strong>1. AP Mode \u8aaa\u660e<\/strong><\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full is-resized\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.circuspi.com\/wp-content\/uploads\/2022\/09\/32-2.png\" alt=\"ESP32 \u5c08\u984c(\u4e8c) \u667a\u6167\u690d\u683d - \u81ea\u52d5\u6f86\u704c\u88dd\u7f6e\" class=\"wp-image-17391\" width=\"754\" height=\"289\"\/><\/figure><\/div>\n\n\n<ul>\n<li>\u81ea\u52d5\u6f86\u704c\u88dd\u7f6e\u672c\u8eab\u6703\u7576\u4f5c AP\uff08Access Point\uff0cWi-Fi \u4f86\u6e90\uff09\uff0c\u4f7f\u7528\u8005\u9700\u8981\u81ea\u884c\u958b\u555f Wi-Fi \u9023\u5230\u6b64\u88dd\u7f6e\u3002<\/li>\n\n\n\n<li>\u82e5\u88dd\u7f6e\u958b\u6a5f\u6642\u7121\u6cd5\u9023\u63a5\u5230\u6307\u5b9a AP \u5c07\u81ea\u52d5\u5207\u63db\u70ba AP Mode\u3002<\/li>\n\n\n\n<li>\u6b64\u6a21\u5f0f\u9069\u5408\u5728\u7121\u4efb\u4f55 Wi-Fi \u74b0\u5883\u4e0b\u4f7f\u7528\u3002<\/li>\n\n\n\n<li>\u9810\u8a2d SSID \u70ba\u300cSmart_Sprinkler_AP\u300d\uff0c\u7121\u5bc6\u78bc\u3002<\/li>\n\n\n\n<li>\u9023\u63a5 IP \u70ba\u300c192.168.4.1\u300d\u3002<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">2. STA Mode \u8aaa\u660e<\/h3>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full is-resized\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.circuspi.com\/wp-content\/uploads\/2022\/09\/33-2.png\" alt=\"ESP32 \u5c08\u984c(\u4e8c) \u667a\u6167\u690d\u683d - \u81ea\u52d5\u6f86\u704c\u88dd\u7f6e\" class=\"wp-image-17393\" width=\"749\" height=\"286\"\/><\/figure><\/div>\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full is-resized\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.circuspi.com\/wp-content\/uploads\/2022\/09\/34.png\" alt=\"ESP32 \u5c08\u984c(\u4e8c) \u667a\u6167\u690d\u683d - \u81ea\u52d5\u6f86\u704c\u88dd\u7f6e\" class=\"wp-image-17326\" width=\"750\" height=\"286\"\/><\/figure><\/div>\n\n\n<ul>\n<li>\u4f7f\u7528\u8005\u53ef\u5c07\u81ea\u52d5\u6f86\u704c\u88dd\u7f6e\u9023\u5230\u6307\u5b9aWi-Fi \uff08\u8def\u7531\u5668\uff09\uff0c\u4f7f\u7528\u8005\u88dd\u7f6e\uff08\u96fb\u8166\u6216\u79fb\u52d5\u88dd\u7f6e\uff09\u53ea\u9700\u8981\u5728\u540c\u4e00\u5340\u7db2\u5373\u53ef\u76f8\u4e92\u9023\u63a5\u5b58\u53d6\u3002<\/li>\n\n\n\n<li>\u6309\u4e0b\u81ea\u52d5\u6f86\u704c\u88dd\u7f6e\u4e0a\u7684\u300cWi-Fi \u8a2d\u5b9a\u6309\u9215\u300d\u5373\u53ef\u9032\u5165STA Mode Wi-Fi \u8a2d\u5b9a\u6a21\u5f0f\u3002<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">3. STA Mode Wi-Fi \u8a2d\u5b9a\u6d41\u7a0b<\/h3>\n\n\n\n<p>(1) \u6309\u4e0b\u81ea\u52d5\u6f86\u704c\u88dd\u7f6e\u4e0a\u7684\u300c Wi-Fi \u8a2d\u5b9a\u6309\u9215\u300d\uff0c\u4e26\u9023\u63a5\u5230\u300cSmart_Sprinkler_AP\u300dWi-Fi\u71b1\u9ede\u3002<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full is-resized\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.circuspi.com\/wp-content\/uploads\/2022\/09\/35-1.png\" alt=\"ESP32 \u5c08\u984c(\u4e8c) \u667a\u6167\u690d\u683d - \u81ea\u52d5\u6f86\u704c\u88dd\u7f6e\" class=\"wp-image-17394\" width=\"405\" height=\"449\"\/><\/figure><\/div>\n\n\n<p>(2) \u9023\u4e0a\u5f8c\u6703\u81ea\u52d5\u958b\u555f\u700f\u89bd\u5668\u8f49\u5230\u8a2d\u5b9a\u9801\u9762\uff0c\u82e5\u6c92\u6709\u81ea\u52d5\u8f49\u8df3\u5247\u81ea\u884c\u958b\u555f\u700f\u89bd\u5668\u8f38\u5165 IP \u300c192.168.4.1\u300d\u3002<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full is-resized\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.circuspi.com\/wp-content\/uploads\/2022\/09\/36-1.png\" alt=\"ESP32 \u5c08\u984c(\u4e8c) \u667a\u6167\u690d\u683d - \u81ea\u52d5\u6f86\u704c\u88dd\u7f6e\" class=\"wp-image-17395\" width=\"385\" height=\"535\"\/><\/figure><\/div>\n\n\n<p>Wi-Fi Manager \u63d0\u4f9b\u56db\u500b\u64cd\u4f5c\u9078\u9805\uff1a<\/p>\n\n\n\n<ul>\n<li>Configure Wi-Fi\uff1a\u8a2d\u5b9a Wi-Fi<\/li>\n\n\n\n<li>Info\uff1a\u53d6\u5f97\u7cfb\u7d71\u8cc7\u8a0a<\/li>\n\n\n\n<li>Exit\uff1a\u96e2\u958b<\/li>\n\n\n\n<li>Update\uff1a\u66f4\u65b0\u97cc\u9ad4<\/li>\n<\/ul>\n\n\n\n<p>(3) \u9078\u64c7\u300cConfigure Wi-Fi\u300d\uff0c\u9078\u64c7\u76ee\u6a19 Wi-Fi \u4f86\u6e90\uff0c\u8f38\u5165\u5bc6\u78bc\u5f8c\u6309\u4e0b\u300cSave\u300d\u5b58\u6a94\u3002<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full is-resized\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.circuspi.com\/wp-content\/uploads\/2022\/09\/37-1.png\" alt=\"ESP32 \u5c08\u984c(\u4e8c) \u667a\u6167\u690d\u683d - \u81ea\u52d5\u6f86\u704c\u88dd\u7f6e\" class=\"wp-image-17396\" width=\"383\" height=\"532\"\/><\/figure><\/div>\n\n\n<p>(4) \u5b58\u6a94\u5f8c\u5c07\u81ea\u52d5\u6f86\u704c\u88dd\u7f6e\u5c07\u6703\u958b\u59cb\u9023\u7dda\u5230\u6307\u5b9a Wi-Fi\u3002<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full is-resized\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.circuspi.com\/wp-content\/uploads\/2022\/09\/38-1.png\" alt=\"ESP32 \u5c08\u984c(\u4e8c) \u667a\u6167\u690d\u683d - \u81ea\u52d5\u6f86\u704c\u88dd\u7f6e\" class=\"wp-image-17397\" width=\"387\" height=\"538\"\/><\/figure><\/div>\n\n\n<h3 class=\"wp-block-heading\">4. AP Mode Wi-Fi \u8a2d\u5b9a\u6d41\u7a0b<\/h3>\n\n\n\n<p>\u9810\u8a2d\u6703\u5728\u6b64\u6a21\u5f0f\uff0c\u82e5\u60f3\u5f9e STA \u6a21\u5f0f\u5207\u63db\u81f3 AP \u6a21\u5f0f\u53ea\u9808\u6e05\u9664\u5df2\u8a18\u9304\u7684 Wi-Fi \u4f86\u6e90\uff0c\u8a73\u7d30\u6b65\u9a5f\u8acb\u4f9d\u7167\u4e0b\u5217\u64cd\u4f5c\u65b9\u5f0f\uff1a<\/p>\n\n\n\n<p>(1) \u4f9d\u7167\u300cSTA Mode Wi-Fi \u8a2d\u5b9a\u6d41\u7a0b\u300d1~2 \u6d41\u7a0b\u64cd\u4f5c\u3002<\/p>\n\n\n\n<p>(2) \u300cSTA Mode Wi-Fi \u8a2d\u5b9a\u6d41\u7a0b\u300d\u7b2c\u4e8c\u6b65\u9a5f\u6539\u9078\u300cInfo\u300d\uff0c\u6ed1\u5230\u4e0b\u65b9\u9078\u64c7\u300cErase Wi-Fi Config\u300d\u6e05\u9664 Wi-Fi \u8a2d\u5b9a\u3002<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full is-resized\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.circuspi.com\/wp-content\/uploads\/2022\/09\/39-1.png\" alt=\"ESP32 \u5c08\u984c(\u4e8c) \u667a\u6167\u690d\u683d - \u81ea\u52d5\u6f86\u704c\u88dd\u7f6e\" class=\"wp-image-17398\" width=\"397\" height=\"551\"\/><\/figure><\/div>\n\n\n<p>(3) \u6e05\u9664\u5f8c\u88dd\u7f6e\u5c07\u6703\u81ea\u52d5\u91cd\u65b0\u555f\u52d5\uff0c\u6b64\u6642\u5c07\u6c92\u6709\u5df2\u8a18\u9304\u7684 Wi-Fi \u4f86\u6e90\uff0c\u88dd\u7f6e\u5c07\u6703\u81ea\u52d5\u5207\u63db\u5230 AP \u6a21\u5f0f\u3002<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full is-resized\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.circuspi.com\/wp-content\/uploads\/2022\/09\/40-1.png\" alt=\"ESP32 \u5c08\u984c(\u4e8c) \u667a\u6167\u690d\u683d - \u81ea\u52d5\u6f86\u704c\u88dd\u7f6e\" class=\"wp-image-17399\" width=\"402\" height=\"559\"\/><\/figure><\/div>\n\n\n<h3 class=\"wp-block-heading\">5. Wi-Fi IP \u67e5\u770b\u65b9\u5f0f<\/h3>\n\n\n\n<p>\u5c07\u81ea\u52d5\u6f86\u704c\u88dd\u7f6e\u9023\u63a5\u5230 CP2102 \u6a21\u7d44\uff0c\u4e26\u900f\u904e\u4efb\u610f\u5e8f\u5217\u57e0\u5de5\u5177\uff08ex:Arduino IDE Serial Monitor\uff09\u958b\u555f\u5373\u53ef\u53d6\u5f97\u76ee\u524d IP \u4f4d\u7f6e\u3002<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full is-resized\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.circuspi.com\/wp-content\/uploads\/2022\/09\/41-1.png\" alt=\"ESP32 \u5c08\u984c(\u4e8c) \u667a\u6167\u690d\u683d - \u81ea\u52d5\u6f86\u704c\u88dd\u7f6e\" class=\"wp-image-17400\" width=\"732\" height=\"374\"\/><\/figure><\/div>\n\n\n<h2 class=\"wp-block-heading\"><strong>\u5341\u4e8c\u3001\u71c8\u865f\u8aaa\u660e<\/strong><\/h2>\n\n\n\n<p>\u70ba\u4e86\u5373\u6642\u4e86\u89e3\u76ee\u524d\u88dd\u7f6e\u9023\u7dda\u65b9\u5f0f\uff0c\u6211\u5011\u5229\u7528 M5Stamp Pico \u5167\u5efa\u7684 RGB LED \u4f86\u4f5c\u70ba\u72c0\u614b\u6307\u793a\u71c8\uff0c\u4e0b\u8868\u70ba\u5404\u500b\u71c8\u865f\u5c0d\u61c9\u7684\u9023\u7dda\u72c0\u614b\u3002<\/p>\n\n\n\n<figure class=\"wp-block-table aligncenter\"><table><tbody><tr><td class=\"has-text-align-center\" data-align=\"center\"><strong>\u71c8\u865f<\/strong><\/td><td class=\"has-text-align-center\" data-align=\"center\"><strong>\u72c0\u614b<\/strong><\/td><\/tr><tr><td class=\"has-text-align-center\" data-align=\"center\"><strong><span style=\"color:#cf2e2e\" class=\"tadv-color\">RED<\/span><\/strong><\/td><td class=\"has-text-align-center\" data-align=\"center\">Wi-Fi \u8a2d\u5b9a\u4e2d<\/td><\/tr><tr><td class=\"has-text-align-center\" data-align=\"center\"><strong><span style=\"color:#00d084\" class=\"tadv-color\">GREEN<\/span><\/strong><\/td><td class=\"has-text-align-center\" data-align=\"center\">STA Mode<\/td><\/tr><tr><td class=\"has-text-align-center\" data-align=\"center\"><strong><span style=\"color:#0693e3\" class=\"tadv-color\">BLUE<\/span><\/strong><\/td><td class=\"has-text-align-center\" data-align=\"center\">AP Mode<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>\u5341\u4e09\u3001\u7db2\u9801\u64cd\u4f5c<\/strong><\/h2>\n\n\n\n<h3 class=\"wp-block-heading\">1. \u9023\u7dda\u65b9\u5f0f<\/h3>\n\n\n\n<p>\u4f9d\u7167\u300cWi-Fi IP\u67e5\u770b\u65b9\u5f0f\u300d\u53d6\u5f97\u88dd\u7f6e IP\uff0c\u88dd\u7f6e\u64cd\u4f5c\u5c07\u6703\u9700\u8981\u900f\u904e\u700f\u89bd\u5668\u9023\u5165\u6307\u5b9a IP \u7db2\u9801\uff0c\u4f9d\u7167\u4e0a\u9762\u7bc4\u4f8b\uff0c\u6211\u7684\u88dd\u7f6e IP \u70ba\u300c192.168.1.55\u300d\uff0c\u82e5\u88dd\u7f6e\u8655\u65bc AP \u6a21\u5f0f\u5247\u88dd\u7f6e IP \u56fa\u5b9a\u70ba\u300c192.168.4.1\u300d\u3002<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">2. \u6c34\u91cf\u767e\u5206\u6bd4\u6821\u6b63<\/h3>\n\n\n\n<p>\u82e5\u8981\u5f97\u5230\u6e96\u78ba\u7684\u6c34\u91cf\u767e\u5206\u6bd4\uff0c\u9700\u8981\u5148\u6839\u64da\u5be6\u969b\u74b0\u5883\u91cf\u6e2c\u4e26\u8a2d\u5b9a\u300c\u6700\u4f4e\u6c34\u91cf\u6578\u503c\u300d\uff08\u571f\u58e4\u6700\u4e7e\u71e5\u7684\u5be6\u969b\u6578\u503c\uff09\u3001\u300c\u6700\u9ad8\u6c34\u91cf\u6578\u503c\u300d\uff08\u571f\u58e4\u6700\u6fd5\u6f64\u7684\u5be6\u969b\u6578\u503c\uff09\uff0c\u7a0b\u5f0f\u5c07\u6703\u6839\u64da\u6b64\u7bc4\u570d\u63db\u7b97\u4ee5\u5f8c\u5c0d\u61c9\u7684\u6c34\u91cf\u767e\u5206\u6bd4\u3002<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full is-resized\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.circuspi.com\/wp-content\/uploads\/2022\/09\/42-1.png\" alt=\"ESP32 \u5c08\u984c(\u4e8c) \u667a\u6167\u690d\u683d - \u81ea\u52d5\u6f86\u704c\u88dd\u7f6e\" class=\"wp-image-17401\" width=\"596\" height=\"422\"\/><\/figure><\/div>\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full is-resized\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.circuspi.com\/wp-content\/uploads\/2022\/09\/43-1.png\" alt=\"ESP32 \u5c08\u984c(\u4e8c) \u667a\u6167\u690d\u683d - \u81ea\u52d5\u6f86\u704c\u88dd\u7f6e\" class=\"wp-image-17402\" width=\"605\" height=\"430\"\/><\/figure><\/div>\n\n\n<h3 class=\"wp-block-heading\">3. \u81ea\u52d5\u6a21\u5f0f\u8a2d\u5b9a\u9801\u9762<\/h3>\n\n\n\n<p>\u81ea\u52d5\u6a21\u5f0f\u6703\u6839\u64da\u300c\u81ea\u52d5\u6f86\u6c34\u4e0b\u9650\u300d\u767e\u5206\u6bd4\u81ea\u52d5\u6f86\u6c34\uff0c\u4f4e\u65bc\u767e\u5206\u6bd4 10% \u5c07\u6703\u958b\u59cb\u6f86\u6c34\uff0c\u9ad8\u65bc\u767e\u5206\u6bd4 10%\uff0c\u5c07\u6703\u505c\u6b62\u6f86\u6c34\u3002<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"620\" height=\"453\" src=\"https:\/\/www.circuspi.com\/wp-content\/uploads\/2022\/09\/44-1.png\" alt=\"ESP32 \u5c08\u984c(\u4e8c) \u667a\u6167\u690d\u683d - \u81ea\u52d5\u6f86\u704c\u88dd\u7f6e\" class=\"wp-image-17403\"\/><\/figure><\/div>\n\n\n<h3 class=\"wp-block-heading\">4. \u624b\u52d5\u6a21\u5f0f\u8a2d\u5b9a\u9801\u9762<\/h3>\n\n\n\n<p>\u624b\u52d5\u6a21\u5f0f\u5c07\u4ea4\u7531\u4f7f\u7528\u8005\u81ea\u884c\u555f\u52d5\u6216\u505c\u6b62\u6f86\u6c34\u3002<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"622\" height=\"437\" src=\"https:\/\/www.circuspi.com\/wp-content\/uploads\/2022\/09\/45-1.png\" alt=\"\" class=\"wp-image-17404\"\/><\/figure><\/div>\n\n\n<h3 class=\"wp-block-heading\">5. \u5b9a\u6642\u6a21\u5f0f\u8a2d\u5b9a\u9801\u9762<\/h3>\n\n\n\n<p>\u5b9a\u6642\u6a21\u5f0f\u6703\u6839\u64da\u300c\u5b9a\u6642\u6f86\u6c34\u9593\u9694\uff08\u4ee5\u5206\u9418\u70ba\u55ae\u4f4d\uff09\u300d\u5b9a\u6642\u6f86\u6c34\uff0c\u53ef\u900f\u904e\u8a2d\u5b9a\u300c\u5b9a\u6642\u6f86\u6c34\u79d2\u6578\u300d\uff0c\u8a2d\u5b9a\u6bcf\u6b21\u6f86\u6c34\u7684\u6301\u7e8c\u6642\u9593\uff08\u4ee5\u79d2\u70ba\u55ae\u4f4d\uff09\u3002<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"611\" height=\"443\" src=\"https:\/\/www.circuspi.com\/wp-content\/uploads\/2022\/09\/46-1.png\" alt=\"\" class=\"wp-image-17405\"\/><\/figure><\/div>\n\n\n<h2 class=\"wp-block-heading\"><strong>\u5341\u56db\u3001\u5c0f\u7d50<\/strong><\/h2>\n\n\n\n<p>\u4ee5\u4e0a\u5c31\u662f\u9019\u6b21\u7684 ESP32 \u5c08\u984c-\u81ea\u52d5\u6f86\u704c\u88dd\u7f6e\uff0c\u6709\u4e86\u81ea\u52d5\u6f86\u704c\u88dd\u7f6e\u5f8c\uff0c\u4e0d\u7ba1\u662f\u60f3\u8981\u9060\u7aef\u6f86\u6c34\u3001\u81ea\u52d5\u6f86\u6c34\u3001\u67e5\u770b\u6c34\u91cf\u3001\u5b9a\u6642\u6f86\u6c34\u90fd\u975e\u5e38\u65b9\u4fbf\uff0c\u900f\u904e\u7c21\u55ae\u7684\u8a2d\u5b9a\u9801\u9762\u5373\u53ef\u8a2d\u5b9a\u60f3\u8981\u7684\u6a21\u5f0f\uff1b\u5176\u4e2d\u88fd\u4f5c\u904e\u7a0b\u4e86\u89e3\u5230\u7269\u806f\u7db2\u88dd\u7f6e\u7684\u8a2d\u8a08\u65b9\u5f0f\uff0c\u76e1\u53ef\u80fd\u7c21\u5316\u88dd\u7f6e\u8a2d\u5b9a\u65b9\u5f0f\uff0c\u8b93\u5c0d\u7a0b\u5f0f\u4e0d\u719f\u6089\u4f7f\u7528\u8005\u4e5f\u80fd\u8f15\u6613\u64cd\u4f5c\uff0c\u672c\u6b21\u7684 ESP32 \u5c08\u984c\u5206\u4eab\u5c31\u5230\u9019\u908a\uff0c\u6211\u5011\u4e0b\u6b21\u898b~<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">\u53c3\u8003\u8cc7\u6599<\/h2>\n\n\n\n<ul>\n<li><a href=\"https:\/\/www.twblogs.net\/a\/5f01b4119644181341a1a240\" target=\"_blank\" rel=\"noreferrer noopener\">CSS\u5be6\u73fe\u6c34\u6ce2\u6d6a\u6548\u679c<\/a><\/li>\n\n\n\n<li><a href=\"https:\/\/soilsensor.com\/sensors\/sensor-technologies\/\">Soil Sens<\/a><a href=\"https:\/\/soilsensor.com\/sensors\/sensor-technologies\/\" target=\"_blank\" rel=\"noreferrer noopener\">o<\/a><a href=\"https:\/\/soilsensor.com\/sensors\/sensor-technologies\/\">r Technologies<\/a><\/li>\n<\/ul>\n","protected":false},"excerpt":{"rendered":"<p>\u5728 ESP32 \u5c08\u984c(\u4e8c) \u667a\u6167\u690d\u683d &#8211; \u81ea\u52d5\u6f86\u704c\u88dd\u7f6e(\u4e0a)\u4e2d\uff0c\u6211\u5011\u5df2\u7d93\u8a8d\u8b58\u4e86\u81ea\u52d5\u6f86\u704c\u88dd\u7f6e\u7684\u7d44\u88dd\u65b9\u5f0f\u548c\u904b\u4f5c\u539f\u7406\u4e86\uff0c\u73fe\u5728\u5c31\u8ddf\u8457\u6211\u5011\u66f4\u9032\u4e00\u6b65\u5f9e\u7a0b\u5f0f\u8a2d\u8a08\u5230\u7db2\u9801\u7684\u4f7f\u7528\u4ecb\u9762\u8a2d\u8a08\uff0c\u4e00\u8d77\u628a\u81ea\u52d5\u6f86\u704c\u88dd\u7f6e\u5b8c\u6210\u5427\uff01<\/p>\n","protected":false},"author":1,"featured_media":17545,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[235,238],"tags":[],"table_tags":[],"_links":{"self":[{"href":"https:\/\/www.circuspi.com\/index.php\/wp-json\/wp\/v2\/posts\/17354"}],"collection":[{"href":"https:\/\/www.circuspi.com\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.circuspi.com\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.circuspi.com\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.circuspi.com\/index.php\/wp-json\/wp\/v2\/comments?post=17354"}],"version-history":[{"count":13,"href":"https:\/\/www.circuspi.com\/index.php\/wp-json\/wp\/v2\/posts\/17354\/revisions"}],"predecessor-version":[{"id":20742,"href":"https:\/\/www.circuspi.com\/index.php\/wp-json\/wp\/v2\/posts\/17354\/revisions\/20742"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.circuspi.com\/index.php\/wp-json\/wp\/v2\/media\/17545"}],"wp:attachment":[{"href":"https:\/\/www.circuspi.com\/index.php\/wp-json\/wp\/v2\/media?parent=17354"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.circuspi.com\/index.php\/wp-json\/wp\/v2\/categories?post=17354"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.circuspi.com\/index.php\/wp-json\/wp\/v2\/tags?post=17354"},{"taxonomy":"table_tags","embeddable":true,"href":"https:\/\/www.circuspi.com\/index.php\/wp-json\/wp\/v2\/table_tags?post=17354"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}