{"id":655,"date":"2021-04-07T17:53:11","date_gmt":"2021-04-07T09:53:11","guid":{"rendered":"http:\/\/mgspace.wiki\/docs\/?post_type=docs&#038;p=655"},"modified":"2024-01-04T13:59:05","modified_gmt":"2024-01-04T05:59:05","slug":"mg-mixly%e6%a8%a1%e5%9d%97","status":"publish","type":"docs","link":"http:\/\/mgspace.wiki\/docs\/?docs=mg-mixly%e6%a8%a1%e5%9d%97","title":{"rendered":"MG Mixly\u6a21\u5757"},"content":{"rendered":"\n<p><\/p>\n\n\n\n<p><\/p>\n\n\n\n<div class=\"wp-block-file\"><a id=\"wp-block-file--media-93c887c4-1e7b-406b-89b3-288c6530509c\" href=\"http:\/\/mgspace.wiki\/docs\/wp-content\/uploads\/2021\/06\/Mixly\u81ea\u5b9a\u4e49\u529f\u80fd\u6a21\u5757\u8bf4\u660e.pdf\">Mixly\u81ea\u5b9a\u4e49\u529f\u80fd\u6a21\u5757\u8bf4\u660e<\/a><a href=\"http:\/\/mgspace.wiki\/docs\/wp-content\/uploads\/2021\/06\/Mixly\u81ea\u5b9a\u4e49\u529f\u80fd\u6a21\u5757\u8bf4\u660e.pdf\" class=\"wp-block-file__button wp-element-button\" download aria-describedby=\"wp-block-file--media-93c887c4-1e7b-406b-89b3-288c6530509c\">\u4e0b\u8f7d<\/a><\/div>\n\n\n\n<h1 class=\"wp-block-heading\">\u57fa\u7840\u6a21\u5757<\/h1>\n\n\n\n<p>1.\u6a21\u62df\u8f93\u51fa<\/p>\n\n\n\n<p>2.\u8702\u9e23\u5668<\/p>\n\n\n\n<p>3.THD11\u6e29\u6e7f\u5ea6\u4f20\u611f\u5668<\/p>\n\n\n\n<p>4.\u5fae\u52a8\u5f00\u5173:\u4ee3\u7801\u5185\u81ea\u5e26\u8f93\u5165\u4e0a\u62c9<\/p>\n\n\n\n<p>5.GY-906\u6e29\u5ea6\u4f20\u611f\u5668<\/p>\n\n\n\n<p>6.\u5fc3\u7387\u4f20\u611f\u5668<\/p>\n\n\n\n<p>7.\u539f\u751f\u6001for\u5faa\u574f<\/p>\n\n\n\n<p>8.LD3320\u8bed\u97f3\u6a21\u5757<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"440\" src=\"http:\/\/mgspace.wiki\/docs\/wp-content\/uploads\/2021\/04\/image-29-1024x440.png\" alt=\"\" class=\"wp-image-708\" srcset=\"http:\/\/mgspace.wiki\/docs\/wp-content\/uploads\/2021\/04\/image-29-1024x440.png 1024w, http:\/\/mgspace.wiki\/docs\/wp-content\/uploads\/2021\/04\/image-29-500x215.png 500w, http:\/\/mgspace.wiki\/docs\/wp-content\/uploads\/2021\/04\/image-29-768x330.png 768w, http:\/\/mgspace.wiki\/docs\/wp-content\/uploads\/2021\/04\/image-29.png 1065w\" sizes=\"auto, (max-width: 709px) 85vw, (max-width: 909px) 67vw, (max-width: 1362px) 62vw, 840px\" \/><\/figure>\n\n\n\n<p>arduino \u4ee3\u7801<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"cpp\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">#include &lt;ld3320.h>\n\nVoiceRecognition Voice;\n\/*\nld3320\u5f15\u811a\u8fde\u63a5\u56fe\nVCC  --> 3.3V\nGND  --> GND\nMISO --> D12\nMOSI --> D11\nSCK  --> D13\nCS   --> D4\nRST  --> D9\nIRQ  --> D2\nWR   --> GND\n*\/\n\nvoid setup(){\n  Voice.init(); \/\/\u521d\u59cb\u5316VoiceRecognition\u6a21\u5757\n  Voice.addCommand(\"kai\",1);   \/\/\u6dfb\u52a0\u6307\u4ee4\uff0c\u53c2\u6570\uff08\u6307\u4ee4\u5185\u5bb9\uff0c\u6307\u4ee4\u6807\u7b7e\uff08\u53ef\u91cd\u590d\uff09\uff09\n  Voice.addCommand(\"guan\",0);   \/\/\u6dfb\u52a0\u6307\u4ee4\uff0c\u53c2\u6570\uff08\u6307\u4ee4\u5185\u5bb9\uff0c\u6307\u4ee4\u6807\u7b7e\uff08\u53ef\u91cd\u590d\uff09\uff09\n  Voice.start();   \/\/\u5f00\u59cb\u8bc6\u522b\n  pinMode(2, OUTPUT);\n}\n\nvoid loop(){\n  \/*\n  \u6a21\u62df\u5f00\u5173\u6548\u679c,\u53ef\u4ee5\u7528led\u67e5\u770b\u6548\u679c\n  \u5f15\u811a2\u4e3aled\u706f\u7684\u5f15\u811a\n  *\/\n\n  if (0 == Voice.read()) {\n    digitalWrite(2,LOW);\n\n  } else if (1 == Voice.read()) {\n    digitalWrite(2,HIGH);\n  }\n\n}<\/pre>\n\n\n\n<p>9.\u6570\u7801\u7ba10-9\u6570\u5b57\u663e\u793aswitch\u51fd\u6570<\/p>\n\n\n\n<p><\/p>\n\n\n\n<h1 class=\"wp-block-heading\">\u8235\u673a<\/h1>\n\n\n\n<p><\/p>\n\n\n\n<h1 class=\"wp-block-heading\">\u7535\u673a\u9a71\u52a8<\/h1>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"756\" height=\"390\" src=\"http:\/\/mgspace.wiki\/docs\/wp-content\/uploads\/2021\/04\/image-2.png\" alt=\"\" class=\"wp-image-660\" srcset=\"http:\/\/mgspace.wiki\/docs\/wp-content\/uploads\/2021\/04\/image-2.png 756w, http:\/\/mgspace.wiki\/docs\/wp-content\/uploads\/2021\/04\/image-2-500x258.png 500w\" sizes=\"auto, (max-width: 709px) 85vw, (max-width: 909px) 67vw, (max-width: 984px) 61vw, (max-width: 1362px) 45vw, 600px\" \/><\/figure>\n\n\n\n<p>arduino \u4ee3\u7801<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"cpp\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">void mago_setMotor(int motorId, int motorDir) {\n int directionPin1, directionPin2;\n if (motorId == 1) {         \/\/ motor A\n directionPin2 = 3;\n directionPin1 = 2;\n } else if (motorId == 2) {  \/\/ motor B\n directionPin2 = 5;\n directionPin1 = 4;\n } else if (motorId == 3) {  \/\/ motor C\n directionPin2 = 6;\n directionPin1 = 7;\n } else if (motorId == 4) {  \/\/ motor D\n directionPin2 = 8;\n directionPin1 = 9;\n } else {\n return;\n }\n if(motorDir == 1) {\n digitalWrite(directionPin1, HIGH);\n digitalWrite(directionPin2, LOW);\n } else if(motorDir == 0) {\n digitalWrite(directionPin1, HIGH);\n digitalWrite(directionPin2, LOW);\n }\n }\n\nvoid mago_setMotor_stop(int motorId, int motorDir) {\nint directionPin1, directionPin2;\nif (motorId == 1) {         \/\/ motor A\ndirectionPin2 = 3;\ndirectionPin1 = 2;\n} else if (motorId == 2) {  \/\/ motor B\ndirectionPin2 = 5;\ndirectionPin1 = 4;\n} else if (motorId == 3) {  \/\/ motor C\ndirectionPin2 = 6;\ndirectionPin1 = 7;\n} else if (motorId == 4) {  \/\/ motor D\ndirectionPin2 = 8;\ndirectionPin1 = 9;\n} else {\nreturn;\n}\ndigitalWrite(directionPin1, LOW);\ndigitalWrite(directionPin2, LOW);\n}\n\nvoid setup(){\n  pinMode(2, OUTPUT);\n  pinMode(3, OUTPUT);\n  pinMode(4, OUTPUT);\n  pinMode(5, OUTPUT);\n  pinMode(6, OUTPUT);\n  pinMode(7, OUTPUT);\n  pinMode(8, OUTPUT);\n  pinMode(9, OUTPUT);\n  digitalWrite(2, LOW);\n  digitalWrite(3, LOW);\n  digitalWrite(4, LOW);\n  digitalWrite(5, LOW);\n  digitalWrite(6, LOW);\n  digitalWrite(7, LOW);\n  digitalWrite(8, LOW);\n  digitalWrite(9, LOW);\n}\n\nvoid loop(){\n  mago_setMotor(1,1);\n\n  mago_setMotor_stop(1,0);\n\n}<\/pre>\n\n\n\n<h1 class=\"wp-block-heading\">AI LAB<\/h1>\n\n\n\n<p>1.esp8266AP\u6a21\u5f0f\u521d\u59cb\u5316<\/p>\n\n\n\n<p>\u7248\u578b\u9009\u62e9arduino esp8266<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"595\" src=\"http:\/\/mgspace.wiki\/docs\/wp-content\/uploads\/2021\/04\/image-6-1024x595.png\" alt=\"\" class=\"wp-image-667\" srcset=\"http:\/\/mgspace.wiki\/docs\/wp-content\/uploads\/2021\/04\/image-6-1024x595.png 1024w, http:\/\/mgspace.wiki\/docs\/wp-content\/uploads\/2021\/04\/image-6-500x291.png 500w, http:\/\/mgspace.wiki\/docs\/wp-content\/uploads\/2021\/04\/image-6-768x446.png 768w, http:\/\/mgspace.wiki\/docs\/wp-content\/uploads\/2021\/04\/image-6.png 1082w\" sizes=\"auto, (max-width: 709px) 85vw, (max-width: 909px) 67vw, (max-width: 1362px) 62vw, 840px\" \/><\/figure>\n\n\n\n<p>\u4e0a\u4f20\u4ee3\u7801\u540e,esp8266\u4f1a\u53d1\u5c04\u4e00\u4e2aESP\u5f00\u5934\u7684\u70ed\u70b9\u6253\u5f00\u624b\u673awifi<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"465\" height=\"1024\" src=\"http:\/\/mgspace.wiki\/docs\/wp-content\/uploads\/2021\/04\/image-7-465x1024.png\" alt=\"\" class=\"wp-image-671\" srcset=\"http:\/\/mgspace.wiki\/docs\/wp-content\/uploads\/2021\/04\/image-7-465x1024.png 465w, http:\/\/mgspace.wiki\/docs\/wp-content\/uploads\/2021\/04\/image-7-227x500.png 227w, http:\/\/mgspace.wiki\/docs\/wp-content\/uploads\/2021\/04\/image-7-768x1690.png 768w, http:\/\/mgspace.wiki\/docs\/wp-content\/uploads\/2021\/04\/image-7-698x1536.png 698w, http:\/\/mgspace.wiki\/docs\/wp-content\/uploads\/2021\/04\/image-7-931x2048.png 931w, http:\/\/mgspace.wiki\/docs\/wp-content\/uploads\/2021\/04\/image-7.png 1080w\" sizes=\"auto, (max-width: 465px) 85vw, 465px\" \/><\/figure>\n\n\n\n<p>\u8fde\u63a5ESP\u5f00\u5934\u7684\u70ed\u70b9\u4f1a\u8df3\u5165\u4e00\u4e2a\u914d\u7f6eWiFi\u7684\u9875\u9762(\u6bcf\u4e2aesp8266\u7684\u540e\u7f00\u6570\u5b57\u90fd\u4e0d\u4e00\u6837,\u4f46\u662f\u524d\u7f00&#8221;ESP&#8221;\u90fd\u662f\u4e00\u6837\u7684)<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"465\" height=\"1024\" src=\"http:\/\/mgspace.wiki\/docs\/wp-content\/uploads\/2021\/04\/image-8-465x1024.png\" alt=\"\" class=\"wp-image-672\" srcset=\"http:\/\/mgspace.wiki\/docs\/wp-content\/uploads\/2021\/04\/image-8-465x1024.png 465w, http:\/\/mgspace.wiki\/docs\/wp-content\/uploads\/2021\/04\/image-8-227x500.png 227w, http:\/\/mgspace.wiki\/docs\/wp-content\/uploads\/2021\/04\/image-8-768x1690.png 768w, http:\/\/mgspace.wiki\/docs\/wp-content\/uploads\/2021\/04\/image-8-698x1536.png 698w, http:\/\/mgspace.wiki\/docs\/wp-content\/uploads\/2021\/04\/image-8-931x2048.png 931w, http:\/\/mgspace.wiki\/docs\/wp-content\/uploads\/2021\/04\/image-8.png 1080w\" sizes=\"auto, (max-width: 465px) 85vw, 465px\" \/><\/figure>\n\n\n\n<p>\u70b9\u51fb\u914d\u7f6eWiFi,\u70b9\u51fb\u4f60\u6240\u77e5\u9053\u7684WiFi,\u8f93\u5165\u5bc6\u7801<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"465\" height=\"1024\" src=\"http:\/\/mgspace.wiki\/docs\/wp-content\/uploads\/2021\/04\/image-10-465x1024.png\" alt=\"\" class=\"wp-image-674\" srcset=\"http:\/\/mgspace.wiki\/docs\/wp-content\/uploads\/2021\/04\/image-10-465x1024.png 465w, http:\/\/mgspace.wiki\/docs\/wp-content\/uploads\/2021\/04\/image-10-227x500.png 227w, http:\/\/mgspace.wiki\/docs\/wp-content\/uploads\/2021\/04\/image-10-768x1690.png 768w, http:\/\/mgspace.wiki\/docs\/wp-content\/uploads\/2021\/04\/image-10-698x1536.png 698w, http:\/\/mgspace.wiki\/docs\/wp-content\/uploads\/2021\/04\/image-10-931x2048.png 931w, http:\/\/mgspace.wiki\/docs\/wp-content\/uploads\/2021\/04\/image-10.png 1080w\" sizes=\"auto, (max-width: 465px) 85vw, 465px\" \/><\/figure>\n\n\n\n<p>\u73b0\u5728esp8266\u5df2\u8fde\u63a5\u7f51\u7edc\u4e86<\/p>\n\n\n\n<p>AP\u6a21\u5f0f\u7684\u4f18\u52bf\u662f\u53ef\u4ee5\u968f\u65f6\u914d\u7f6eWiFi,\u800c\u4e0d\u9700\u8981\u6539\u4ee3\u7801<\/p>\n\n\n\n<p>2.api\u63a5\u53e3\u83b7\u53d6\u7f51\u7edc\u6570\u636e(\u4ee5\u7f51\u7edc\u65f6\u95f4\u4e3a\u4f8b)<\/p>\n\n\n\n<p>\u641c\u7d22\u5f15\u64ce\u641c\u7d22&#8221;\u65f6\u95f4api&#8221;<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"828\" height=\"658\" src=\"http:\/\/mgspace.wiki\/docs\/wp-content\/uploads\/2021\/04\/image-13.png\" alt=\"\" class=\"wp-image-681\" srcset=\"http:\/\/mgspace.wiki\/docs\/wp-content\/uploads\/2021\/04\/image-13.png 828w, http:\/\/mgspace.wiki\/docs\/wp-content\/uploads\/2021\/04\/image-13-500x397.png 500w, http:\/\/mgspace.wiki\/docs\/wp-content\/uploads\/2021\/04\/image-13-768x610.png 768w\" sizes=\"auto, (max-width: 709px) 85vw, (max-width: 909px) 67vw, (max-width: 984px) 61vw, (max-width: 1362px) 45vw, 600px\" \/><\/figure>\n\n\n\n<figure class=\"wp-block-image size-large is-resized\"><img loading=\"lazy\" decoding=\"async\" width=\"958\" height=\"419\" src=\"http:\/\/mgspace.wiki\/docs\/wp-content\/uploads\/2021\/04\/image-14.png\" alt=\"\" class=\"wp-image-682\" style=\"width:630px;height:275px\" srcset=\"http:\/\/mgspace.wiki\/docs\/wp-content\/uploads\/2021\/04\/image-14.png 958w, http:\/\/mgspace.wiki\/docs\/wp-content\/uploads\/2021\/04\/image-14-500x219.png 500w, http:\/\/mgspace.wiki\/docs\/wp-content\/uploads\/2021\/04\/image-14-768x336.png 768w\" sizes=\"auto, (max-width: 709px) 85vw, (max-width: 909px) 67vw, (max-width: 1362px) 62vw, 840px\" \/><\/figure>\n\n\n\n<p>\u6211\u4eec\u9009\u62e9&#8221;\u82cf\u5b81&#8221;\u7684api:<a href=\"http:\/\/quan.suning.com\/getSysTime.do\" target=\"_blank\" rel=\"noreferrer noopener\">http:\/\/quan.suning.com\/getSysTime.do<\/a><\/p>\n\n\n\n<p>\u70b9\u51fb\u8be5\u7f51\u5740\u6211\u4eec\u5f97\u5230\u4e00\u4e32JSON\u6570\u636e{&#8220;sysTime2&#8243;:&#8221;2021-04-07 17:30:25&#8243;,&#8221;sysTime1&#8243;:&#8221;20210407173025&#8221;}.\u6211\u4eec\u73b0\u5728\u9700\u8981\u5c06\u8be5\u6570\u636e\u4f20\u8f93\u5230esp8266\u4e2d<\/p>\n\n\n\n<p>API-url\u72b6\u6001\u7801:\u6b63\u786e\u7684\u72b6\u6001\u7801\u662f&#8221;200&#8243;,\u8fd4\u56de\u5176\u4ed6\u7684\u90fd\u662f\u4e0d\u6b63\u5e38\u7684.\u6211\u4eec\u53ef\u4ee5\u6253\u5f00\u6d4f\u89c8\u5668\u7684F12\u67e5\u770b<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"562\" src=\"http:\/\/mgspace.wiki\/docs\/wp-content\/uploads\/2021\/04\/image-18-1024x562.png\" alt=\"\" class=\"wp-image-687\" srcset=\"http:\/\/mgspace.wiki\/docs\/wp-content\/uploads\/2021\/04\/image-18-1024x562.png 1024w, http:\/\/mgspace.wiki\/docs\/wp-content\/uploads\/2021\/04\/image-18-500x274.png 500w, http:\/\/mgspace.wiki\/docs\/wp-content\/uploads\/2021\/04\/image-18-768x422.png 768w, http:\/\/mgspace.wiki\/docs\/wp-content\/uploads\/2021\/04\/image-18-1200x659.png 1200w, http:\/\/mgspace.wiki\/docs\/wp-content\/uploads\/2021\/04\/image-18.png 1339w\" sizes=\"auto, (max-width: 709px) 85vw, (max-width: 909px) 67vw, (max-width: 1362px) 62vw, 840px\" \/><\/figure>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"421\" src=\"http:\/\/mgspace.wiki\/docs\/wp-content\/uploads\/2021\/04\/image-20-1024x421.png\" alt=\"\" class=\"wp-image-689\" srcset=\"http:\/\/mgspace.wiki\/docs\/wp-content\/uploads\/2021\/04\/image-20-1024x421.png 1024w, http:\/\/mgspace.wiki\/docs\/wp-content\/uploads\/2021\/04\/image-20-500x206.png 500w, http:\/\/mgspace.wiki\/docs\/wp-content\/uploads\/2021\/04\/image-20-768x316.png 768w, http:\/\/mgspace.wiki\/docs\/wp-content\/uploads\/2021\/04\/image-20-1200x494.png 1200w, http:\/\/mgspace.wiki\/docs\/wp-content\/uploads\/2021\/04\/image-20.png 1521w\" sizes=\"auto, (max-width: 709px) 85vw, (max-width: 909px) 67vw, (max-width: 1362px) 62vw, 840px\" \/><\/figure>\n\n\n\n<p>\u8fd9\u6837\u5c31\u83b7\u53d6\u7f51\u7edc\u65f6\u95f4\u4e86<\/p>\n\n\n\n<p>arduino \u4ee3\u7801<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"cpp\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">#define BLINKER_ESP_SMARTCONFIG\n#include &lt;ESP8266WiFi.h>\n#include &lt;DNSServer.h>\n#include &lt;ESP8266WebServer.h>\n#include &lt;WiFiManager.h>\n#include &lt;FlagHTTPClient.h>\n#include &lt;ArduinoJson.h>\n#include &lt;FlagJSON.h>\n\nvoid configModeCallback (WiFiManager *myWiFiManager) {\nSerial.println(WiFi.softAPIP());\nSerial.println(myWiFiManager->getConfigPortalSSID());\n}\n\nFlagHTTPClient _httpClient;\nint _httpGET(String url) {\n_httpClient.end();\n_httpClient.begin(url);\n_httpClient.setTimeout(30000);\nreturn _httpClient.GET();\n}\n\nJsonVariant _jsonRoot;\nDynamicJsonBuffer _jsonBuffer;\n\nvoid setup(){\n  Serial.begin(115200);\n  WiFiManager wifiManager;\n  wifiManager.setAPCallback(configModeCallback);\n  if(!wifiManager.autoConnect()) {\n  Serial.println(\"failed to connect and hit timeout\");\n  ESP.reset();\n  delay(1000);\n}\nSerial.println(\"connected...yeey\");\n\n  Serial.begin(9600);\n}\n\nvoid loop(){\n  Serial.println(_httpGET(\"http:\/\/quan.suning.com\/getSysTime.do\"));\n  Serial.println(_httpClient.getString());\n  _jsonBuffer.clear();\n  _jsonRoot = _jsonBuffer.parse(_httpClient.getString());\n  Serial.println(_jsonRoot.success());\n  Serial.println(flagJSON.getJSONDataAsString(_jsonRoot,\"sysTime2\"));\n  delay(10000);\n\n}<\/pre>\n\n\n\n<h1 class=\"wp-block-heading\">MQTT<\/h1>\n\n\n\n<p>1.\u53d1\u5e03\u4e3b\u9898<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"886\" height=\"422\" src=\"http:\/\/mgspace.wiki\/docs\/wp-content\/uploads\/2021\/04\/image-24.png\" alt=\"\" class=\"wp-image-698\" srcset=\"http:\/\/mgspace.wiki\/docs\/wp-content\/uploads\/2021\/04\/image-24.png 886w, http:\/\/mgspace.wiki\/docs\/wp-content\/uploads\/2021\/04\/image-24-500x238.png 500w, http:\/\/mgspace.wiki\/docs\/wp-content\/uploads\/2021\/04\/image-24-768x366.png 768w\" sizes=\"auto, (max-width: 709px) 85vw, (max-width: 909px) 67vw, (max-width: 1362px) 62vw, 840px\" \/><\/figure>\n\n\n\n<p>arduino \u4ee3\u7801<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"cpp\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">#define BLINKER_ESP_SMARTCONFIG\n#include &lt;ESP8266WiFi.h>\n#include &lt;DNSServer.h>\n#include &lt;ESP8266WebServer.h>\n#include &lt;WiFiManager.h>\n#include \"Adafruit_MQTT.h\"\n#include \"Adafruit_MQTT_Client.h\"\nWiFiClient client;\n\nvoid configModeCallback (WiFiManager *myWiFiManager) {\nSerial.println(WiFi.softAPIP());\nSerial.println(myWiFiManager->getConfigPortalSSID());\n}\nAdafruit_MQTT_Client mqtt(&amp;client, \"106.52.84.175\", 1883, \"\", \"\");\nvoid MQTT_connect();\nvoid MQTT_connect() {\n  int8_t ret;\n  if (mqtt.connected()) {\n    return;\n  }\n  Serial.print(\"Connecting to MQTT... \");\n  uint8_t retries = 3;\n  while ((ret = mqtt.connect()) != 0) {\n    Serial.println(mqtt.connectErrorString(ret));\n    Serial.println(\"Retrying MQTT connection in 5 seconds...\");\n    mqtt.disconnect();\n    delay(5000);\n    retries--;\n    if (retries == 0) {\n      while (1);\n    }\n  }\n  Serial.println(\"MQTT Connected!\");\n}\n\nAdafruit_MQTT_Publish light = Adafruit_MQTT_Publish(&amp;mqtt, \"iot\/light\");\n\nvoid setup(){\n  Serial.begin(115200);\n  WiFiManager wifiManager;\n  wifiManager.setAPCallback(configModeCallback);\n  if(!wifiManager.autoConnect()) {\n  Serial.println(\"failed to connect and hit timeout\");\n  ESP.reset();\n  delay(1000);\n}\nSerial.println(\"connected...yeey\");\n\n}\n\nvoid loop(){\n  MQTT_connect();\n  light.publish(1);\n\n}<\/pre>\n\n\n\n<p>2.\u8ba2\u9605\u4e3b\u9898<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"504\" src=\"http:\/\/mgspace.wiki\/docs\/wp-content\/uploads\/2021\/04\/image-25-1024x504.png\" alt=\"\" class=\"wp-image-699\" srcset=\"http:\/\/mgspace.wiki\/docs\/wp-content\/uploads\/2021\/04\/image-25-1024x504.png 1024w, http:\/\/mgspace.wiki\/docs\/wp-content\/uploads\/2021\/04\/image-25-500x246.png 500w, http:\/\/mgspace.wiki\/docs\/wp-content\/uploads\/2021\/04\/image-25-768x378.png 768w, http:\/\/mgspace.wiki\/docs\/wp-content\/uploads\/2021\/04\/image-25.png 1046w\" sizes=\"auto, (max-width: 709px) 85vw, (max-width: 909px) 67vw, (max-width: 1362px) 62vw, 840px\" \/><\/figure>\n\n\n\n<p>arduino \u4ee3\u7801<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"cpp\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">#define BLINKER_ESP_SMARTCONFIG\n#include &lt;ESP8266WiFi.h>\n#include &lt;DNSServer.h>\n#include &lt;ESP8266WebServer.h>\n#include &lt;WiFiManager.h>\n#include \"Adafruit_MQTT.h\"\n#include \"Adafruit_MQTT_Client.h\"\nWiFiClient client;\n\nvoid configModeCallback (WiFiManager *myWiFiManager) {\nSerial.println(WiFi.softAPIP());\nSerial.println(myWiFiManager->getConfigPortalSSID());\n}\nAdafruit_MQTT_Client mqtt(&amp;client, \"106.52.84.175\", 1883, \"\", \"\");\nvoid MQTT_connect();\nvoid MQTT_connect() {\n  int8_t ret;\n  if (mqtt.connected()) {\n    return;\n  }\n  Serial.print(\"Connecting to MQTT... \");\n  uint8_t retries = 3;\n  while ((ret = mqtt.connect()) != 0) {\n    Serial.println(mqtt.connectErrorString(ret));\n    Serial.println(\"Retrying MQTT connection in 5 seconds...\");\n    mqtt.disconnect();\n    delay(5000);\n    retries--;\n    if (retries == 0) {\n      while (1);\n    }\n  }\n  Serial.println(\"MQTT Connected!\");\n}\n\nAdafruit_MQTT_Subscribe light = Adafruit_MQTT_Subscribe(&amp;mqtt,\"iot\/light\");\n\nvoid setup(){\n  Serial.begin(115200);\n  WiFiManager wifiManager;\n  wifiManager.setAPCallback(configModeCallback);\n  if(!wifiManager.autoConnect()) {\n  Serial.println(\"failed to connect and hit timeout\");\n  ESP.reset();\n  delay(1000);\n}\nSerial.println(\"connected...yeey\");\n\n  Serial.begin(9600);\n  mqtt.subscribe(&amp;light);\n}\n\nvoid loop(){\n  MQTT_connect();\n  Adafruit_MQTT_Subscribe *subscription2110;\n  while ((subscription2110 = mqtt.readSubscription(5000))) {\n    if (subscription2110 ==&amp;light) {\n      Serial.println((char *)light.lastread);\n\n    }\n  }\n\n}<\/pre>\n\n\n\n<p>\u9700\u8981\u6ce8\u610f:\u53d1\u5e03\u548c\u8ba2\u9605\u7684\u9879\u76eeID\u548c\u4e3b\u9898\u9700\u4e00\u81f4<\/p>\n\n\n\n<p><\/p>\n","protected":false},"excerpt":{"rendered":"<p>\u57fa\u7840\u6a21\u5757 1.\u6a21\u62df\u8f93\u51fa 2.\u8702\u9e23\u5668 3.THD11\u6e29\u6e7f\u5ea6\u4f20\u611f\u5668 4.\u5fae\u52a8\u5f00\u5173:\u4ee3\u7801\u5185\u81ea\u5e26\u8f93\u5165\u4e0a\u62c9 5.GY-9 &hellip; <a href=\"http:\/\/mgspace.wiki\/docs\/?docs=mg-mixly%e6%a8%a1%e5%9d%97\" class=\"more-link\">\u7ee7\u7eed\u9605\u8bfb<span class=\"screen-reader-text\">\u201cMG Mixly\u6a21\u5757\u201d<\/span><\/a><\/p>\n","protected":false},"author":23,"featured_media":0,"parent":0,"comment_status":"open","ping_status":"closed","template":"","meta":{"footnotes":""},"doc_category":[108],"doc_tag":[],"class_list":["post-655","docs","type-docs","status-publish","hentry","doc_category-mixly"],"_links":{"self":[{"href":"http:\/\/mgspace.wiki\/docs\/index.php?rest_route=\/wp\/v2\/docs\/655","targetHints":{"allow":["GET"]}}],"collection":[{"href":"http:\/\/mgspace.wiki\/docs\/index.php?rest_route=\/wp\/v2\/docs"}],"about":[{"href":"http:\/\/mgspace.wiki\/docs\/index.php?rest_route=\/wp\/v2\/types\/docs"}],"author":[{"embeddable":true,"href":"http:\/\/mgspace.wiki\/docs\/index.php?rest_route=\/wp\/v2\/users\/23"}],"replies":[{"embeddable":true,"href":"http:\/\/mgspace.wiki\/docs\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=655"}],"version-history":[{"count":5,"href":"http:\/\/mgspace.wiki\/docs\/index.php?rest_route=\/wp\/v2\/docs\/655\/revisions"}],"predecessor-version":[{"id":6810,"href":"http:\/\/mgspace.wiki\/docs\/index.php?rest_route=\/wp\/v2\/docs\/655\/revisions\/6810"}],"wp:attachment":[{"href":"http:\/\/mgspace.wiki\/docs\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=655"}],"wp:term":[{"taxonomy":"doc_category","embeddable":true,"href":"http:\/\/mgspace.wiki\/docs\/index.php?rest_route=%2Fwp%2Fv2%2Fdoc_category&post=655"},{"taxonomy":"doc_tag","embeddable":true,"href":"http:\/\/mgspace.wiki\/docs\/index.php?rest_route=%2Fwp%2Fv2%2Fdoc_tag&post=655"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}