Cov txheej txheem:

Tswj Koj Arduino Nrog HTML/Javascript Txoj Kev Yooj Yim: 8 Kauj Ruam
Tswj Koj Arduino Nrog HTML/Javascript Txoj Kev Yooj Yim: 8 Kauj Ruam

Video: Tswj Koj Arduino Nrog HTML/Javascript Txoj Kev Yooj Yim: 8 Kauj Ruam

Video: Tswj Koj Arduino Nrog HTML/Javascript Txoj Kev Yooj Yim: 8 Kauj Ruam
Video: Making a &#!$%ing Button 2024, Kaum ib hlis
Anonim
Tswj koj Arduino Nrog HTML/Javascript Txoj Kev Yooj Yim
Tswj koj Arduino Nrog HTML/Javascript Txoj Kev Yooj Yim

Cov ntawv qhia no qhia koj yuav ua li cas tswj hwm arduino nrog ajax hu rov qab los ntawm adafruit Huzzah siv tsuas yog javascript ua haujlwm. Yeej koj tuaj yeem siv javascript hauv nplooj ntawv html uas yuav tso cai rau koj sau yooj yim html cuam tshuam nrog javascript yooj yim ua haujlwm uas siv ajax callback. Txhawm rau tso cai ESP8266 los tham nrog arduino. Yog li, txhua tus pins tuaj yeem teeb tsa los ntawm kev ua javascript. Ib yam nkaus, peb tseem tuaj yeem nyeem tus nqi los ntawm ib tus pin siv javascript muaj nuj nqi. Kuv vam tias qhov no yuav pab ua kom yooj yim dua tuaj yeem tswj hwm arduino los ntawm daim ntawv html. Kuv xam pom tias muaj coob leej neeg nyob ntawd uas tuaj yeem sau html. Feem coob ntawm cov neeg tsis xav thab thab sim ua lub xov tooj ntawm tes app nrog java lossis xcode lossis qee qhov laj thawj. Qhov no yuav ua rau nws yooj yim heev rau tib neeg vim tias txhua yam lawv yuav tsum tau ua yog siv javascript muaj nuj nqi los teeb thiab nyeem qhov tseem ceeb ntawm tus pin. Piv txwv li, nws tsis yooj yim dua los sau

Qhib

Txhawm rau tig lub pob. Qhov zoo nkauj yog tias tsis muaj lwm qhov kev tsim kho arduino koom nrog ntxiv rau tshaj tawm tus pinMode (12, INPUT); Hauv koj teeb tsa muaj nuj nqi. Tsuav tus pin tau tshaj tawm javascript tuaj yeem siv rau txhua yam ntxiv.

document.onload = {cov

GetJSON ('A0', 1 'return_json')

}

Qhov no yog txhua yam koj yuav tsum tau ua kom tau txais tus nqi ntawm tus lej analog 0 thiab xa cov txiaj ntsig mus rau hauv div. Yog li qhov no yuav tsum yog txoj hauv kev yooj yim rau tib neeg kom muaj peev xwm tsim html nplooj ntawv uas tswj cov arduino. Ib yam li tsim kev sib txuas kom tus pin arduino tuaj yeem teeb tsa thiab nyeem nrog javascript.

Kauj Ruam 1: Yam Koj Yuav Tsum Tau

Kuv tsim txoj haujlwm no rau cov neeg siv uas xav tswj lawv cov arduino nrog nplooj ntawv html ntawm ESP8266. Lub hom phiaj ntawm txoj haujlwm no yog los tsim txoj hauv kev yooj yim rau kev teeb tsa tus lej ntawm koj tus lej nrog rau kev ua javascript. Txog kev ntsuas onclick = "SetPin (12, 1, 0)" yuav teeb Pin 12 ntawm koj li arduino kom siab.

Rau qhov kev qhia no koj yuav xav tau cov khoom hauv qab no txhawm rau ua raws raws nraim. Txawm li cas los xij, Kuv xav tias nws yuav tsum ua haujlwm ntawm feem ntau arduino thiab ESP8266 ua ke. Txawm li cas los xij, txhawm rau ua raws nrog qhov kuv muaj ntawm no koj yuav xav tau cov khoom siv hauv qab no.

Arduino Uno - Yuav tsum ua haujlwm nrog ib qho arduino sib xws uas muaj cov lej Rx TxAdafruit Huzzah Breakout Board USB Rau Serial Cable 4 lub zog qis LED's Analog Turpidity testor - ib qho analog sensor uas muab cov txiaj ntsig sib xws yuav ua Hlau Wifi Router Xov Tooj Xov Tooj Nrog Mobile Browser Arduino Libraries.

Kauj Ruam 2: Npaj Arduino ID

Txoj haujlwm no xav tau cov tsev qiv ntawv tshiab arduino thiab qee qhov kev teeb tsa thiab rau lub sijhawm. Kuv yuav tsis muab tso rau hauv sreenshot ntawm txhua lub vijtsam thiab kuv tsuas yog yuav mus hla qhov koj yuav xav tau teeb tsa qhov no thiab ua kom nws khiav. Kuv sim ua kom yooj yim li sai tau rau tus neeg siv.

Txoj cai siv ntau lub tsev qiv ntawv los ua haujlwm. Ua ntej peb yuav tsom mus rau teeb tsa arduino rau ESP8266 Kuv tab tom siv Adafruit Huzzah hauv qhov piv txwv no, vim tias kuv pom cov khoom lag luam adafruit kom ntseeg tau tshaj plaws thiab muaj kev txhawb nqa zoo tshaj plaws. Tsuav koj tsis txhob sim tau txais kev txhawb nqa los ntawm Adafruit Discord server. Koj yuav muaj hmoov zoo dua tau txais kev pab hauv cov rooj sib tham txhawb nqa.

Txawm li cas los xij, Kuv tab tom siv cov tsev qiv ntawv hauv qab no ntawm ESP8266

ESP8266WiFi WiFiClient ESP8266WebServer ArduinoJSONT Qhov no tsis yog kev qhia yuav ua li cas rub tawm thiab teeb tsa lub tsev qiv ntawv txawm li cas los xij, cov no yog cov tsev qiv ntawv siv hauv HUZZAH. Yog li thov nrhiav lawv thiab teeb tsa lawv. Koj kuj tseem yuav tsum teeb tsa lub ntsiab lus ntawm pawg thawj coj saib rau HUZZAH yog li yog tias koj mus rau FILE> Nyiam Nyob rau hauv lub thawv uas hais tias Ntxiv Tus Thawj Saib Xyuas Haujlwm URLs thov ntxiv cov hauv qab no https://arduino.esp8266.com/stable/package_esp8266c … yog tias koj twb muaj lawm ib yam dab tsi hauv daim teb no, dua li ua kom ntseeg tau tias koj ntxiv tus lej cim hauv qhov ntawd kom ntxiv ib qho board url ntxiv. Nyem ok uas mus

Cov Cuab Yeej> Pawg Thawj Coj> Pawg Thawj Tswj Hwm Tshawb nrhiav rau ESP8266 dua li teeb tsa ESP8266 los ntawm ESP8266 Zej Zog.

Zoo tam sim no cia ua kom ntseeg tau tias peb muaj txhua yam peb xav tau kom tau txais txoj cai arduino ua haujlwm. Ib qho arduino Sab tus arduino nws tus kheej tsuas yog siv 2 lub tsev qiv ntawv rau qhov kev qhia no.

SoftwareSerialArduinoJSONQhov twg koj yuav tsum muaj.

Kauj Ruam 3: Npaj ESP8266

Npaj ESP8266
Npaj ESP8266

Tam sim no peb tab tom yuav tso cov cai mus rau ESP8266 (Adafruit HUZZAH) thiab npaj nws rau txuas rau Arduino. Unzip tus lej rau HUZZAH thiab qhib daim duab. Ntawm kab 11 thiab 12 hloov ssid thiab password rau qhov ntawm koj li kev txuas WIFI ntawm koj lub network hauv zej zog. Koj yuav pom tias muaj 2 cov ntaub ntawv kos duab thiab cov ntawv index.h. Cov ntawv index.h yog qhov twg html tau khaws cia uas yuav tshwm rau hauv koj lub xov tooj.

Tom qab koj tau teeb tsa SSID thiab tus password kom raug rau koj lub wifi koj tuaj yeem sau cov cai thiab thauj nws mus rau koj ESP8266. Ntawm HUZZAH koj yuav tsum tuav lub khawm uas sau tias GPIO0 tom qab ntawv nyem lub pob kom so, dua li tso lub GPIO0 khawm tso lub nti rau hauv bootloader hom. Yog tias lub nti tau ua tiav tso rau hauv bootloader hom lub teeb liab yuav qhib rau qhia tias lub nti nyob hauv hom khau raj.

Txhawm rau txuas rau ESP8266 koj yuav xav tau cov txuas txuas lossis USB rau Serial adapter, lossis FDTI nti. Hauv qhov no kuv tab tom siv adafruit's cable raws li tau hais hauv cov lus qhia. Txawm li cas los xij, koj tuaj yeem nqes mus rau nti ntau txoj hauv kev, siv TTL ntawm Tx thiab Rx pins. Qhov uas kuv cia siab tias cov neeg saib qhov no paub yuav ua li cas txhawm rau txhawm rau txhawm rau thauj cov cai rau nws. Txawm li cas los xij ua ntej thiab nyem lub nti nrog cov lej hauv cov ntawv zip uas tau txuas nrog rau theem no.

Kauj Ruam 4: Npaj Arduino

Txhawm rau thauj cov cai mus rau arduino, hloov koj lub ntsiab lus txhais rau Arduino/Genuino Uno. Tshaj li unzip cov ntawv uas txuas nrog rau theem no. Tshaj li rub nws mus rau ardunio. Yooj yim yooj yim tiag tiag, txhua yam kev ua haujlwm tau ua tiav rau koj lawm. Kuv twb tau dhau los ntawm kev sim ib qho txheej txheem yuam kev yog li txhua yam koj yuav tsum ua yog upload cov cai.

Kauj Ruam 5: Txuas Txhua Yam Ua Ke

Txuas Txhua Yam Ua Ke
Txuas Txhua Yam Ua Ke

Ua li ntawd rau qhov thaiv kuv muaj daim duab saum toj no ntawm qhov kuv muaj ntawm no.

Txuas Tx ntawm Huzzah rau Pin 2 ntawm arduino. Txuas Rx ntawm Huzzah rau Pin 3 ntawm arduino. Kuv tsim lwm lub qhov (socket) ntawm tus pin 2 thiab 3 ntawm arduino kom tso tawm qhov qub Serial Console.

Txuas tus Pin V+ thiab En rau 5v los ntawm arduino. - Adafruit Huzzah tau tsim hluav taws xob 3.3v tus tswj hwm yog li ntsaws cov pins zoo li qhov no yuav tsis ua haujlwm nrog txhua ESP8266 cov qauv. Tej zaum koj yuav tsum tau xaim hauv koj tus kheej qhov ntsuas hluav taws xob. Kuv pom zoo siv Huzzah yog tias koj tsuas yog xav kom ua haujlwm tau yooj yim. Txuas GND mus rau GND ntawm arduino

Ntawm tus pin 12, 11, 9, 8 ntawm cov xov hlau arduino hauv koj lub LEDs Kuv tau siv lub zog qis LED nyob ntawm no vim tias cov uas kos ntau dhau tam sim no yuav kos lub zog ntau dhau rau qhov ua kom qhov kev sim no yooj yim.

Tshaj li ntawm A0 analog Pin 0 ntawm arduino Kuv tau ntsaws rau hauv kab tawm ntawm kuv qhov Kev Ntsuas Turpitity. Txawm li cas los xij, koj tuaj yeem ntsaws rau hauv qhov tso tawm ntawm ib qho sensor uas yuav muab rau koj nyeem analog. Nov yog txhua yam koj yuav tsum tau ua los xaim qhov no.

Kauj Ruam 6: Nkag Mus Rau Lub Vev Xaib

Tam sim no koj muaj lub arduino txuas thiab koj muaj txhua yam thauj khoom rau hauv koj cov laug cam koj xav tau kom tuaj yeem pom html ntawm koj lub xov tooj ntawm tes. Tam sim no kuv xav kom koj txuas mus rau tib lub router wifi uas koj tau teeb tsa SSID thiab tus lej zais rau hauv tus lej ntawm Huzzah. Tshaj li koj yuav tsum xam seb tus IP chaw nyob twg uas koj lub router tau muab rau koj lub cuab yeej. Feem ntau, yog tias koj nkag mus rau hauv koj lub routers teeb tsa yuav tsum muaj cov npe neeg siv khoom. Qhov ntawd qhia tus IP chaw nyob ntawm txhua yam khoom siv txuas nrog koj li Wifi txuas. Txawm li cas los xij, yog tias koj tsis tuaj yeem pom tus IP chaw nyob no dua li koj tuaj yeem tsis ntsaws nws los ntawm arduino thiab khiav nws nrog cov xov tooj txuas ntxiv. Yog tias koj qhib lub console txuas ntawm lub cuab yeej nws yuav luam tus IP chaw nyob mus rau lub cuab yeej hauv lub console txuas thaum koj nrhiav tsis tau nws lwm txoj hauv kev. Txawm li cas los xij thaum koj txuas nrog tib lub network Wifi nrog koj lub xov tooj ntawm tes. Tshaj li taw tes koj lub vev xaib mobile rau tus IP chaw nyob ntawm Huzzah. Uas tej zaum zoo li qee yam zoo sib xws rau qhov no. https://192.168.0.107 lossis qee yam zoo sib xws. Muaj kuv muab tso rau hauv nplooj ntawv yooj yim uas yuav tso cai rau koj qhib thiab kaw 4 Leds ntxiv rau nyeem cov txiaj ntsig ntawm cov ntsuas sib piv.

Kauj ruam 7: Siv Javascipt

Hauv cov ntaub ntawv hu ua index.h hauv ESP8266Code duab kos nws yuav tsum los ua qhov sib cais tab hauv tus khoos phis tawj arduino. Koj tuaj yeem pom qhov piv txwv yooj yim uas kuv tau ua ntawm no. Yeej txoj hauv kev nws ua haujlwm zoo li no.

SetPin (12, 1, 0); SetPin ({Tus lej Tus lej), {Tus Nqi 1 Siab 0 0}, {IsAnalog 1 Yog 0 Tsis})

Qhov no yuav teeb tus nqi ntawm tus lej digital 12 rau siab

SetPin (4, 0, 0);

Qhov no yuav teeb tus nqi ntawm tus lej digital 4 kom qis

SetPin (A2, 439, 1) Qhov no yuav teeb tus nqi ntawm Analog Pin 2 txog 439

Ib yam nkaus, qhov ua haujlwm GetJSON yuav xa tus nqi thov los ntawm tus pin thiab muab nws tso rau hauv html elemted nrog qhov tshwj xeeb div Id.

GetJSON ('A0', 1, 'resp_i') GetJSON ({Tus lej Tus lej, {IsAnalog 1 Yog 0 Tsis}}, {Id Ntawm HTML Element kom rov qab tshwm sim})

Qhov no yuav xa qhov kev thov mus rau arduino nug nws rau tus nqi ntawm analog pin 0 thiab xa qhov tshwm sim rau hauv Div nrog ID resp_iGetJSON (12, 0, 'mydiv'); Qhov no yuav nug tus arduino kom tau txais tus nqi ntawm tus lej digital 0 thiab xa cov txiaj ntsig mus rau hauv cov ntsiab lus html nrog thiab Id ntawm mydiv

Kauj Ruam 8: Kev txhawb nqa

Kuv vam tias kuv tsab ntawv yuav pab cov ntawm koj uas xav siv nws. Kuv siv tus piv txwv html yooj yim ntawm no nrog kev cia siab tias lwm tus neeg yuav tshawb xyuas txhua lub peev xwm ntawm nws uas kuv ua tsis tau. Txawm li cas los xij, qhov no yuav tsum ua kom pom yuav ua li cas ajax tuaj yeem siv los tswj cov arduino yam tsis muaj html nplooj ntawv thauj khoom thiab yam ntawm qhov xwm txheej ntawd.

Yog tias koj muaj lus nug thov hu rau kuv Kuv yuav ua qhov zoo tshaj plaws Kuv tuaj yeem teb. Kuv xav nthuav kev ua haujlwm ntawm qee qhov no ntxiv, tab sis kuv tsis muaj sijhawm thiab nyiaj txiag. Txawm li cas los xij, Kuv tabtom ua haujlwm ntawm kev ua haujlwm ruaj khov dua ntawm qhov no, uas khaws cov ntaub ntawv ntawm cov vev xaib niaj hnub ntau dua li ntawm ESP8266.

Ua tsaug rau koj siv sijhawm los saib kuv cov cai.

John Anderson Email Kuv

Vermont Internet Tsim LLC

www.vermontinternetdesign.com

Pom zoo: