tag:blogger.com,1999:blog-3904531149906383762024-03-14T17:24:00.043+01:00danielealberti.itIn questo blog troverai tutorial in italiano su Arduino, scheda elettronica dedicata a designers, hobbisti, progettisti ed a tutti quelli che hanno voglia di imparare!
Semplici tutorial di livello base per applicazioni di controllo, domotica, informatica e automazione, per compiere i primi passi nel mondo dei makers e del DIY! Danielehttp://www.blogger.com/profile/09720964861202313121noreply@blogger.comBlogger160125tag:blogger.com,1999:blog-390453114990638376.post-65508136850197419742022-12-20T12:19:00.000+01:002022-12-22T11:52:48.289+01:00Stazione meteo con Arduino e esp8266<p></p><div class="separator" style="clear: both; text-align: left;">Ciao!</div><div class="separator" style="clear: both; text-align: left;">quella di oggi è una recensione,</div><div class="separator" style="clear: both; text-align: left;">infatti <a href="https://www.pcbway.com/">PCBWay</a> mi ha gentilmente offerto di provare questa <a href="https://www.pcbway.com/project/gifts_detail/Solar_Powered_WiFi_Weather_Station_V2_0.html">stazione meteo</a>.</div><div class="separator" style="clear: both; text-align: left;"><br /></div><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh0Laq3giL3rFP8G-iTdwZfTFDJ2a-bQvfBFBeg1fKMLCTZFsV5-WIswR5BJ6R44l4dQpPRpLkHtVC1NuvGhiFy0nQX3XStD4VXqkcARh9Uuwttzjn4M6q_FKfIQF_Pf5XM9md9HzqwYkpaku4atnIGJwv9e2QDT3SFzoBBWDtJHlSmmv0u801BX99E/s300/1645535128366.jpg" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="300" data-original-width="300" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh0Laq3giL3rFP8G-iTdwZfTFDJ2a-bQvfBFBeg1fKMLCTZFsV5-WIswR5BJ6R44l4dQpPRpLkHtVC1NuvGhiFy0nQX3XStD4VXqkcARh9Uuwttzjn4M6q_FKfIQF_Pf5XM9md9HzqwYkpaku4atnIGJwv9e2QDT3SFzoBBWDtJHlSmmv0u801BX99E/s16000/1645535128366.jpg" /></a></div><br /><span><a name='more'></a></span><div class="separator" style="clear: both; text-align: left;"><br /></div><div class="separator" style="clear: both; text-align: left;">Questo è un progetto disponibile nella <a href="https://www.pcbway.com/project/">sezione project</a> di Pcbway, </div><div class="separator" style="clear: both; text-align: left;">parte molto carina del loro sito dove è possibile condividere e trovare idee molto interessanti, sicuramente una sezione simile è apprezzabile e non comune per un produttore di pcb.</div><div class="separator" style="clear: both; text-align: left;"><br /></div><div class="separator" style="clear: both; text-align: left;">Questo il contenuto della confezione, sono presenti 2 bustine, una contente la scheda elettronica, l'altra un pannellino fotovoltaico.</div><div class="separator" style="clear: both;">Sulla scheda sono presenti 3 moduli: un Wemos D1 mini pro (esp 8266, connettore per antenna wifi esterna), un caricabatterie per batteria al litio TP4056, e un BME280 (sensore di pressione, umidità e temperatura). Inoltre la scheda base presenta connettori per aggiungere ulteriori sensori.</div><div class="separator" style="clear: both; text-align: center;"><br /></div><div class="separator" style="clear: both; text-align: center;"><br /></div><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh3UrkxjL4PLbCCl-J7KaYwdtb78VnRf9w9dvE0r6qHHdPEgFsja9sDX_7Z9stfZvVjLnsBxfH-RIQ-Bs5uDndRU9Xxmzosww-NQSCQLt-rQHyPYlauabNKJtdXgxY0NSWjaCi9MNwnqRIC_qeNi8ETrDkkZmFCN2EYLwLmsvuejArG3KxP8VYlzNmJ/s2592/PXL_20221210_133520392.jpg" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="1944" data-original-width="2592" height="240" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh3UrkxjL4PLbCCl-J7KaYwdtb78VnRf9w9dvE0r6qHHdPEgFsja9sDX_7Z9stfZvVjLnsBxfH-RIQ-Bs5uDndRU9Xxmzosww-NQSCQLt-rQHyPYlauabNKJtdXgxY0NSWjaCi9MNwnqRIC_qeNi8ETrDkkZmFCN2EYLwLmsvuejArG3KxP8VYlzNmJ/s320/PXL_20221210_133520392.jpg" width="320" /></a></div> <p></p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh0O7e92IgnuKVrRD_hqZBZ0-NwoVF2qNd_quJaqC-yBvhrCXMnm9VNClcbRrEAN_JRqEAGUcMeW21N0vwNujGxLb8lOJDM-euB5spdEh1PDaqgNK4tAV04q8sbIbc278WIyMN0nY3dHCsjQRSobaI4Kgfxvd8uhJI35vilnr7rwMOs2S2Ge0mZNBc8/s2592/PXL_20221210_133550571.jpg" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="1944" data-original-width="2592" height="240" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh0O7e92IgnuKVrRD_hqZBZ0-NwoVF2qNd_quJaqC-yBvhrCXMnm9VNClcbRrEAN_JRqEAGUcMeW21N0vwNujGxLb8lOJDM-euB5spdEh1PDaqgNK4tAV04q8sbIbc278WIyMN0nY3dHCsjQRSobaI4Kgfxvd8uhJI35vilnr7rwMOs2S2Ge0mZNBc8/s320/PXL_20221210_133550571.jpg" width="320" /></a></div><p>Come potete vedere, batteria e contenitore non sono inclusi, sulla pagina del progetto sono presenti i file stl per stamparsi il contenitore in 3d.</p><p>Vediamo ora come far funzionare la piccola stazione meteo, il primo passo è scaricare il programma alla pagina del <a href="https://github.com/3KUdelta/Solar_WiFi_Weather_Station">progetto github</a>.</p><p>Poi occorre decomprimere lo zip e spostare il file .ino e i file .h in una cartella col nome del file .ino (vedi immagine)</p><p></p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/a/AVvXsEh1IUp_ofznjug-ydxjFPqCn5bKIROqMUJyNIHgYdXKM9lKWb9bS_9ZC9FVHj-RZPMgvF3vDd3EPQ0Eqx1Y_7Hurv_HfS3ICURM9QZUBLdWWUcCpaGjFTSy8a1d-7H8kTVpV5e3kkaZvFVOQBYYoIOX-5EwVSjjzsbx1UURxxJt9hKI7DirZvZX6_Yt" style="margin-left: 1em; margin-right: 1em;"><img alt="" data-original-height="504" data-original-width="1075" height="300" src="https://blogger.googleusercontent.com/img/a/AVvXsEh1IUp_ofznjug-ydxjFPqCn5bKIROqMUJyNIHgYdXKM9lKWb9bS_9ZC9FVHj-RZPMgvF3vDd3EPQ0Eqx1Y_7Hurv_HfS3ICURM9QZUBLdWWUcCpaGjFTSy8a1d-7H8kTVpV5e3kkaZvFVOQBYYoIOX-5EwVSjjzsbx1UURxxJt9hKI7DirZvZX6_Yt=w640-h300" width="640" /></a></div><br /><br /><p></p><p>Ora aprite il file .ino con l'ide di Arduino, provate a compilare, se non avete tutte le librerie necessarie, vi apparirà un errore simile a questo:</p><p></p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/a/AVvXsEiXBIdqPgo7AUaiuY06rqyxlZKdTeTwMuCc7Ej9cpZjDpWrjDnitzUjZcO4fyXlK4T5UYVG9upckRF6T90viKGqCvN413kichZrWPQVtat1AxoHL792frdYspHuEPOkTZ6BgC3qQsb6irbOYXy5Cf8kr13dBnoG7e-dvY0XaETT_IApR6E6fB-jmyj5" style="margin-left: 1em; margin-right: 1em;"><img alt="" data-original-height="1030" data-original-width="1920" height="344" src="https://blogger.googleusercontent.com/img/a/AVvXsEiXBIdqPgo7AUaiuY06rqyxlZKdTeTwMuCc7Ej9cpZjDpWrjDnitzUjZcO4fyXlK4T5UYVG9upckRF6T90viKGqCvN413kichZrWPQVtat1AxoHL792frdYspHuEPOkTZ6BgC3qQsb6irbOYXy5Cf8kr13dBnoG7e-dvY0XaETT_IApR6E6fB-jmyj5=w640-h344" width="640" /></a></div><br />Potete usare il gestore librerie integrato nell'ide per cercarle ed installarle.<div><br /><p></p><p>Il dispositivo può trasmettere i dati che rileva con Blynk (fino a fine 2022), <a href="https://thingspeak.com/">ThingSpeak</a> o MQTT.</p><p>occorrerà modificare il file Settings.h inserendo la i dati necessari (a partire da SSID e Password della rete wifi a cui il modulo si collegherà).</p><p><br /></p><p>Se decidete di usare ThingSpeak. e non l'avete già fatto, occorrerà registrarvi sul sito. Poi dovrete <a href="https://thingspeak.com/channels/new">creare un nuovo canale</a> utilizzando i parametri che trovate in fondo al file Settings.h. Una volta creato il canale otterrete un Thingspeak Channel ID che dovrete inserire sempre nel file Settings.h (riga 21) insieme alla Write API Key.</p><p>Ecco un campione di dati che ho ottenuto grazie alla stazione meteo, visualizzati grazie a ThingSpeak</p><p></p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/a/AVvXsEiBpCqtRvaUVUcP65qUZlzdY9jYAlbYYNdObeMX1G0-7GnWfmTIUuWGmuiog3Ro3GgT2T6OML6D3MrRRqvJm8_W0LsARIKPVIGkH6ZpCHwdO3gveaisZxXjd6KgrAI0vQzrw8kMPIYAyy3gt1NfIbR_VbSuJQshruogsnm7CxU9bECtCSw-yXHyCd9d" style="margin-left: 1em; margin-right: 1em;"><img alt="" data-original-height="899" data-original-width="1372" height="420" src="https://blogger.googleusercontent.com/img/a/AVvXsEiBpCqtRvaUVUcP65qUZlzdY9jYAlbYYNdObeMX1G0-7GnWfmTIUuWGmuiog3Ro3GgT2T6OML6D3MrRRqvJm8_W0LsARIKPVIGkH6ZpCHwdO3gveaisZxXjd6KgrAI0vQzrw8kMPIYAyy3gt1NfIbR_VbSuJQshruogsnm7CxU9bECtCSw-yXHyCd9d=w640-h420" width="640" /></a></div><br /><br /><p></p><p>Questo è tutto,<br />Seguimi sulle mie pagine per rimanere sempre aggiornato sui nuovi post, e visita <a href="https://www.pcbway.com/project/">pcbway.com/project/</a> per trovare moduli e idee interessanti!</p></div>Danielehttp://www.blogger.com/profile/09720964861202313121noreply@blogger.com0tag:blogger.com,1999:blog-390453114990638376.post-40633823769330638192022-12-19T22:56:00.001+01:002023-01-18T12:06:04.042+01:00Programmare un attiny con un programmatore esterno<div>Ciao!</div><div>in questo post vedremo come programmare gli Atmel AVR, in particolare l'ho provato con gli Attiny, con un programmatore esterno USBASP.</div><div class="separator" style="clear: both; text-align: center;"><br /></div><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhYBVgWi3Q3T5MnxK0wQ4-h77K1FlTcUfR0OYTZZVBH0l5_g3eo1bhLGKEBQQgc05NVcY8zetVeX89FUeR_h_RkcCp96dKCPnBFTeuGbV4r7E2aoj3I6-5l1_IuIO8udWs4MXrx35aPYTWCtaS3gZ42pBTyhRWIVmRS-X7IaLcybWJBGkdikyBX9jry/s1500/usbasp.jpg" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="1402" data-original-width="1500" height="374" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhYBVgWi3Q3T5MnxK0wQ4-h77K1FlTcUfR0OYTZZVBH0l5_g3eo1bhLGKEBQQgc05NVcY8zetVeX89FUeR_h_RkcCp96dKCPnBFTeuGbV4r7E2aoj3I6-5l1_IuIO8udWs4MXrx35aPYTWCtaS3gZ42pBTyhRWIVmRS-X7IaLcybWJBGkdikyBX9jry/w400-h374/usbasp.jpg" width="400" /></a></div><br /><span><a name='more'></a></span><div><br /></div><div>Questa soluzione è utile per una piccola produzione ad esempio, dove è necessario programmare rapidamente molti microcontrollori.</div>Il programmatore USBASP si può facilmente trovare online (ad esempio su <a href="https://www.amazon.it/s?k=avr+usb+asp+attiny&__mk_it_IT=%C3%85M%C3%85%C5%BD%C3%95%C3%91&crid=31C1YQ6GQQMD2&sprefix=avr+usb+asp+attiny%2Caps%2C152&ref=nb_sb_noss">Amazon</a>)<div><br /></div><div>collegate il programmatore USBASP al vostro pc, i driver non verranno istallati automaticamente, vanno installati in questo modo:</div><div><br /></div><div>WINDOWS:</div><div><br /></div><div>Scaricate il software Zadig-(<i>versione</i>) che trovate in <a href="https://zadig.akeo.ie/#google_vignette">questa pagina</a>,</div><div>dopo aver scaricato Zadig-(<i>versione</i>).exe, eseguitelo, rileverà automaticamente il programmatore e vi proporrà il driver corretto. </div><div>Se avete bisogno di selezionarlo manualmente fate:</div><ul style="text-align: left;"><li>Options > List all devices</li><li>Selezionare USBasp dal menu a discesa</li><li>Selezionare il driver libusbK</li></ul><div>Cliccate su Install Driver per eseguire l'operazione.</div><div>___________________</div><div><br /></div><div>LINUX:</div><div><br /></div><div><ul style="text-align: left;"><li>Scaricate il driver da <a href="https://www.fischl.de/usbasp/">questo sito</a></li><li>Estraetelo</li><li></li><li>entrate in bin/linux-nonroot/</li><li>lanciate install_rule</li></ul></div><div>potrebbe essere utile <a href="https://andreasrohner.at/posts/Electronics/How-to-fix-device-permissions-for-the-USBasp-programmer/">questo articolo</a></div><div>___________________</div><div><br /></div><div>Attenzione, mi è capitato di avere difficoltà a programmare gli attiny85, ho dovuto spostare il jumper JP1 per lavorare a 5V, anzichè ai 3.3V standard.</div><div>Invece non ho mai avuto la necessità di utilizzare la programmazione lenta (JP3 chiuso)</div><div><br /></div><div>I collegamenti, tra il programmatore e i vari microcontrollori supportati, si possono facilmente trovare online, comunque per completezza li riporterò a breve su questo blog.</div><div><br /></div><div><br /></div><div><div><br /></div><div>fonti:</div><div>https://www.instructables.com/USBASP-Installation-in-Windows-10/</div></div>Danielehttp://www.blogger.com/profile/09720964861202313121noreply@blogger.com0tag:blogger.com,1999:blog-390453114990638376.post-86473842193840841742022-06-14T09:06:00.005+02:002023-08-19T09:14:28.919+02:00Comunicazione tra 2 arduino via bluetooth<p>Ciao!</p><p>in questo post vedremo come far comunicare 2 moduli bluetooth tra loro.</p><p>Per il master ho utilizzato il modulo HC-05 (che avevamo già visto in <a href="https://www.danielealberti.it/2019/09/modulo-bluetooth-hc05.html">questo post</a>), per lo slave si possono utilizzare vari moduli, ma vi consiglio comunque di utilizzare un HC-05</p><p><br /></p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgljphfYdiLl-Y7EIgTARmOR7d-KqDlfmRzqnTAvXmgtRMiH9vSydBjavRBAU4h3-fcflYqFsiW18iKAzqq0xdxrfUA1GBPzYz4oqYZDHvUZiuw8EUtojJEd5JROd0i6pvl8AqfZBRzsZoBPv6EPM0ibwan7tH5j1DgUOuuRgjeQ_qJ8ow3yQKOgaMZ/s1521/bluetooth%20hc-05%20arduino%20AT_bb.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="1521" data-original-width="1158" height="640" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgljphfYdiLl-Y7EIgTARmOR7d-KqDlfmRzqnTAvXmgtRMiH9vSydBjavRBAU4h3-fcflYqFsiW18iKAzqq0xdxrfUA1GBPzYz4oqYZDHvUZiuw8EUtojJEd5JROd0i6pvl8AqfZBRzsZoBPv6EPM0ibwan7tH5j1DgUOuuRgjeQ_qJ8ow3yQKOgaMZ/w488-h640/bluetooth%20hc-05%20arduino%20AT_bb.png" width="488" /></a></div><br /><div class="separator" style="clear: both; text-align: center;"><br /></div><span><a name='more'></a></span><p><br /></p><p>Dovete fare attenzione al fatto che i moduli bluetooth hc-05, in genere, non accettano i 5v sui segnali. Quindi se utilizzate una scheda tipo Arduino Uno (che lavora a 5v) dovrete inserire un level converter (o un partitore di tensione come nello schema sopra) tra scheda e modulo bluetooth. In alternativa potete usare una scheda Wemos con chip ESP8266 che lavora già a 3.3v</p><p>Collegate il PIN EN del modulo bluetooth al 3v3 di Arduino per far entrare il modulo in modalià AT, (dopo aver configurato il tutto, alla fine del tutorial, questo collegamento andrà rimosso) il led lampeggerà lentamente (circa 0.5hz). se il led non dovesse lampeggiare lentamente, premete anche il pulsante sul modulo bluetooth prima di alimentarlo.</p><p>Dopo aver collegato il modulo HC-05 al Wemos, caricate questo sketch e aprite il serial monitor</p><p><br /></p><ol class="arduino" style="background: rgb(255, 255, 255); box-sizing: border-box; color: #333333; font-family: Consolas, Menlo, Monaco, "Lucida Console", "Liberation Mono", "DejaVu Sans Mono", "Bitstream Vera Sans Mono", monospace, serif; font-size: 12px; margin: 0px; padding: 0px 10px; vertical-align: baseline;"><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"><span class="co2" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">#include <SoftwareSerial.h></span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"><span class="co2" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">#define BAUD_RATE 38400</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> </div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;">SoftwareSerial Bluetooth <span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span>D7<span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span> D8<span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span> <span class="co1" style="box-sizing: border-box; color: #666666; font-style: italic; margin: 0px; padding: 0px; vertical-align: baseline;">// RX, TX</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> </div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"><span class="kw4" style="box-sizing: border-box; color: #993333; margin: 0px; padding: 0px; vertical-align: baseline;">void</span> setup<span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span> <span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">{</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> </div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="kw3" style="box-sizing: border-box; color: #000066; margin: 0px; padding: 0px; vertical-align: baseline;">Serial</span>.<span class="me1" style="box-sizing: border-box; color: #202020; margin: 0px; padding: 0px; vertical-align: baseline;">begin</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span>BAUD_RATE<span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> Bluetooth.<span class="me1" style="box-sizing: border-box; color: #202020; margin: 0px; padding: 0px; vertical-align: baseline;">begin</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span>BAUD_RATE<span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="kw3" style="box-sizing: border-box; color: #000066; margin: 0px; padding: 0px; vertical-align: baseline;">delay</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span><span class="nu0" style="box-sizing: border-box; color: #0000dd; margin: 0px; padding: 0px; vertical-align: baseline;">5000</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> </div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="kw3" style="box-sizing: border-box; color: #000066; margin: 0px; padding: 0px; vertical-align: baseline;">Serial</span>.<span class="me1" style="box-sizing: border-box; color: #202020; margin: 0px; padding: 0px; vertical-align: baseline;">print</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span><span class="st0" style="box-sizing: border-box; color: red; margin: 0px; padding: 0px; vertical-align: baseline;">"Waiting for HC05 in AT mode... "</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> Bluetooth.<span class="me1" style="box-sizing: border-box; color: #202020; margin: 0px; padding: 0px; vertical-align: baseline;">println</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span><span class="st0" style="box-sizing: border-box; color: red; margin: 0px; padding: 0px; vertical-align: baseline;">"AT"</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">}</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> </div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"><span class="kw4" style="box-sizing: border-box; color: #993333; margin: 0px; padding: 0px; vertical-align: baseline;">void</span> loop<span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span> <span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">{</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> </div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="kw1" style="box-sizing: border-box; color: #b1b100; margin: 0px; padding: 0px; vertical-align: baseline;">if</span> <span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span><span class="kw3" style="box-sizing: border-box; color: #000066; margin: 0px; padding: 0px; vertical-align: baseline;">Serial</span>.<span class="me1" style="box-sizing: border-box; color: #202020; margin: 0px; padding: 0px; vertical-align: baseline;">available</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span> <span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">{</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> Bluetooth.<span class="me1" style="box-sizing: border-box; color: #202020; margin: 0px; padding: 0px; vertical-align: baseline;">write</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span><span class="kw3" style="box-sizing: border-box; color: #000066; margin: 0px; padding: 0px; vertical-align: baseline;">Serial</span>.<span class="me1" style="box-sizing: border-box; color: #202020; margin: 0px; padding: 0px; vertical-align: baseline;">read</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">}</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> </div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="kw1" style="box-sizing: border-box; color: #b1b100; margin: 0px; padding: 0px; vertical-align: baseline;">if</span> <span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span>Bluetooth.<span class="me1" style="box-sizing: border-box; color: #202020; margin: 0px; padding: 0px; vertical-align: baseline;">available</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span> <span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">{</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="kw3" style="box-sizing: border-box; color: #000066; margin: 0px; padding: 0px; vertical-align: baseline;">Serial</span>.<span class="me1" style="box-sizing: border-box; color: #202020; margin: 0px; padding: 0px; vertical-align: baseline;">write</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span>Bluetooth.<span class="me1" style="box-sizing: border-box; color: #202020; margin: 0px; padding: 0px; vertical-align: baseline;">read</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">}</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">}</span></div></li></ol><div><span style="color: #009900; font-family: Consolas, Menlo, Monaco, Lucida Console, Liberation Mono, DejaVu Sans Mono, Bitstream Vera Sans Mono, monospace, serif;"><span style="font-size: 12px; white-space: pre-wrap;"><br /></span></span></div><div>Potrebbe essere che il modulo abbia un baudrate diverso (probabilmente 9600) nel caso potete modificarlo alla seconda riga dello sketch sopra.</div><div><br /></div><div>CONFIGURAZIONE DEL MODULO SLAVE</div><br />Inviando il comando "AT" il modulo bluetooth risponderà "OK", <div>fate attenzione a come è impostato il serial monitor (riga in basso)<div><br /><div><br /></div><div><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiGxSBpvbznAjcJuK6raXb5wirPWDBPwq46g4cUmlnMbYtlCG1w-0I2rKINplo0Y9TMbGtOAtseQnnr1Wu71zvAEljpMfxroDVvzirXW5TKZPBrO0tBpSqOIynzVVeLG_6OeQsJfXtQ2uoN7J7IoK-hMoBzRQohwGbde9lfuB9ApEkjSXV4_GefB75K/s1202/Cattura.PNG" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="741" data-original-width="1202" height="246" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiGxSBpvbznAjcJuK6raXb5wirPWDBPwq46g4cUmlnMbYtlCG1w-0I2rKINplo0Y9TMbGtOAtseQnnr1Wu71zvAEljpMfxroDVvzirXW5TKZPBrO0tBpSqOIynzVVeLG_6OeQsJfXtQ2uoN7J7IoK-hMoBzRQohwGbde9lfuB9ApEkjSXV4_GefB75K/w400-h246/Cattura.PNG" width="400" /></a></div><div class="separator" style="clear: both; text-align: left;"><br /></div><div class="separator" style="clear: both; text-align: left;">Il comando AT+ADDR restituirà l'indirizzo Bluetooth del dispositivo, appuntatelo, ci servirà in seguito.</div><div class="separator" style="clear: both; text-align: left;"><br /></div><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg5nUw2EKB8a05ey7BckV9_yvPiuX_9Ebb0z3Sy6LoWpkjQrDSkVFxq9JGC1rxnRcSj6G__TbYP6uy9_reUAE5fHNu43RhCh1KOsfyUYUtilDqtwGBH1rxW2rDV3S5PVXL2rF5yMG1YFbPr1HbDAjGw6iIuFFcM1_j-cLX7XUm8v6w4PcYEvJVV0yOF/s1202/Cattura.PNG" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="591" data-original-width="1202" height="196" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg5nUw2EKB8a05ey7BckV9_yvPiuX_9Ebb0z3Sy6LoWpkjQrDSkVFxq9JGC1rxnRcSj6G__TbYP6uy9_reUAE5fHNu43RhCh1KOsfyUYUtilDqtwGBH1rxW2rDV3S5PVXL2rF5yMG1YFbPr1HbDAjGw6iIuFFcM1_j-cLX7XUm8v6w4PcYEvJVV0yOF/w400-h196/Cattura.PNG" width="400" /></a></div><br /><div class="separator" style="clear: both; text-align: center;"><br /></div><br /><div class="separator" style="clear: both; text-align: left;">lanciare anche i seguenti comandi</div><div class="separator" style="clear: both; text-align: left;"><br /></div><div class="separator" style="clear: both; text-align: left;"><div class="separator" style="clear: both;"><span face=""Helvetica Neue", Helvetica, Arial, sans-serif" style="background-color: white; color: #373737; font-size: 15px;">AT+ROLE=0 </span></div><div class="separator" style="clear: both;"><span face=""Helvetica Neue", Helvetica, Arial, sans-serif" style="background-color: white; color: #373737; font-size: 15px;">(imposta modalità slave)</span></div><div class="separator" style="clear: both;"><span face=""Helvetica Neue", Helvetica, Arial, sans-serif" style="background-color: white; color: #373737; font-size: 15px;"><br /></span></div><div class="separator" style="clear: both;"><span face=""Helvetica Neue", Helvetica, Arial, sans-serif" style="background-color: white; color: #373737; font-size: 15px;">AT+UART=38400,0,0 </span></div><div class="separator" style="clear: both;"><span face=""Helvetica Neue", Helvetica, Arial, sans-serif" style="background-color: white; color: #373737; font-size: 15px;">(</span><span face=""Helvetica Neue", Helvetica, Arial, sans-serif" style="background-color: white; color: #373737; font-size: 15px;">imposta</span><span face=""Helvetica Neue", Helvetica, Arial, sans-serif" style="background-color: white; color: #373737; font-size: 15px;"> baud rate per la comunicazione tra i moduli)</span></div><div class="separator" style="clear: both;"><span face=""Helvetica Neue", Helvetica, Arial, sans-serif" style="background-color: white; color: #373737; font-size: 15px;"><br /></span></div><div class="separator" style="clear: both;"><span face=""Helvetica Neue", Helvetica, Arial, sans-serif" style="background-color: white; color: #373737; font-size: 15px;">AT+CMODE=0 </span></div><div class="separator" style="clear: both;"><span face=""Helvetica Neue", Helvetica, Arial, sans-serif" style="background-color: white; color: #373737; font-size: 15px;">(imposta la connessione solo con i dispositivi accoppiati)</span><br style="background-color: white; color: #373737; font-family: "Helvetica Neue", Helvetica, Arial, sans-serif; font-size: 15px;" /><span face=""Helvetica Neue", Helvetica, Arial, sans-serif" style="background-color: white; color: #373737; font-size: 15px;"><br /></span></div><div class="separator" style="clear: both;"><span face=""Helvetica Neue", Helvetica, Arial, sans-serif" style="background-color: white; color: #373737; font-size: 15px;">AT+PSWD=1234</span></div><div class="separator" style="clear: both;"><span face=""Helvetica Neue", Helvetica, Arial, sans-serif" style="background-color: white; color: #373737; font-size: 15px;">(</span><span face=""Helvetica Neue", Helvetica, Arial, sans-serif" style="background-color: white; color: #373737; font-size: 15px;">imposta</span><span face=""Helvetica Neue", Helvetica, Arial, sans-serif" style="background-color: white; color: #373737; font-size: 15px;"> password/PIN, deve essere uguale a quello del modulo master. Con alcune versioni di moduli HC05 questo comando vi darà errore, provate </span><span style="background-color: white; color: #373737; font-size: 15px;">AT+PSWD="1234")</span></div></div><div class="separator" style="clear: both; text-align: left;"><br /></div><div class="separator" style="clear: both; text-align: left;"><br /></div><div class="separator" style="clear: both; text-align: left;">CONFIGURAZIONE DEL MODULO MASTER</div><div class="separator" style="clear: both; text-align: left;"><br /></div><div class="separator" style="clear: both; text-align: left;">Ora passiamo alla configurazione dell'altro modulo bluetooth, il modulo master.</div><div class="separator" style="clear: both; text-align: left;"><br /></div><div class="separator" style="clear: both; text-align: left;">Caricate lo stesso sketch nell'Arduino collegato a questo modulo.</div><div class="separator" style="clear: both; text-align: left;">Aprite il serial monitor e dare tutti i seguenti comandi:</div><div class="separator" style="clear: both; text-align: left;"><br /></div><div class="separator" style="clear: both; text-align: left;"><div class="separator" style="clear: both;"><div class="separator" style="clear: both;"><span face=""Helvetica Neue", Helvetica, Arial, sans-serif" style="background-color: white; color: #373737; font-size: 15px;">AT+ROLE=1 </span></div><div class="separator" style="clear: both;"><span face=""Helvetica Neue", Helvetica, Arial, sans-serif" style="background-color: white; color: #373737; font-size: 15px;">(imposta modalità master)</span></div><div class="separator" style="clear: both;"><span face=""Helvetica Neue", Helvetica, Arial, sans-serif" style="background-color: white; color: #373737; font-size: 15px;"><br /></span></div><div class="separator" style="clear: both;"><span face=""Helvetica Neue", Helvetica, Arial, sans-serif" style="background-color: white; color: #373737; font-size: 15px;">AT+UART=38400,0,0 </span></div><div class="separator" style="clear: both;"><span face=""Helvetica Neue", Helvetica, Arial, sans-serif" style="background-color: white; color: #373737; font-size: 15px;">(</span><span face=""Helvetica Neue", Helvetica, Arial, sans-serif" style="background-color: white; color: #373737; font-size: 15px;">imposta</span><span face=""Helvetica Neue", Helvetica, Arial, sans-serif" style="background-color: white; color: #373737; font-size: 15px;"> baud rate per la comunicazione tra i moduli)</span></div><div class="separator" style="clear: both;"><span face=""Helvetica Neue", Helvetica, Arial, sans-serif" style="background-color: white; color: #373737; font-size: 15px;"><br /></span></div><div class="separator" style="clear: both;"><span face=""Helvetica Neue", Helvetica, Arial, sans-serif" style="background-color: white; color: #373737; font-size: 15px;">AT+CMODE=0 </span></div><div class="separator" style="clear: both;"><span face=""Helvetica Neue", Helvetica, Arial, sans-serif" style="background-color: white; color: #373737; font-size: 15px;">(imposta la connessione solo con i dispositivi accoppiati)</span><br style="background-color: white; color: #373737; font-family: "Helvetica Neue", Helvetica, Arial, sans-serif; font-size: 15px;" /><span face=""Helvetica Neue", Helvetica, Arial, sans-serif" style="background-color: white; color: #373737; font-size: 15px;"><br /></span></div><div class="separator" style="clear: both;"><span face=""Helvetica Neue", Helvetica, Arial, sans-serif" style="background-color: white; color: #373737; font-size: 15px;">AT+PSWD=1234 </span></div><div class="separator" style="clear: both;"><span face=""Helvetica Neue", Helvetica, Arial, sans-serif" style="background-color: white; color: #373737; font-size: 15px;">(</span><span face=""Helvetica Neue", Helvetica, Arial, sans-serif" style="background-color: white; color: #373737; font-size: 15px;">imposta</span><span face=""Helvetica Neue", Helvetica, Arial, sans-serif" style="background-color: white; color: #373737; font-size: 15px;"> password/PIN, deve essere uguale a quello del modulo slave. </span><span face=""Helvetica Neue", Helvetica, Arial, sans-serif" style="background-color: white; color: #373737; font-size: 15px;">Con alcune versioni di moduli HC05 questo comando vi darà errore, provate </span><span style="background-color: white; color: #373737; font-size: 15px;">AT+PSWD="1234")</span></div><div class="separator" style="clear: both;"><span face=""Helvetica Neue", Helvetica, Arial, sans-serif" style="background-color: white; color: #373737; font-size: 15px;"><br /></span></div><div class="separator" style="clear: both;"><span face=""Helvetica Neue", Helvetica, Arial, sans-serif" style="background-color: white; color: #373737; font-size: 15px;">AT+RMAAD </span></div><div class="separator" style="clear: both;"><span face=""Helvetica Neue", Helvetica, Arial, sans-serif" style="background-color: white; color: #373737; font-size: 15px;">(elimina eventuali dispositivi accoppiati in precedenza)</span><br style="background-color: white; color: #373737; font-family: "Helvetica Neue", Helvetica, Arial, sans-serif; font-size: 15px;" /><br style="background-color: white; color: #373737; font-family: "Helvetica Neue", Helvetica, Arial, sans-serif; font-size: 15px;" /><span face=""Helvetica Neue", Helvetica, Arial, sans-serif" style="background-color: white; color: #373737; font-size: 15px;">AT+RESET</span></div><div class="separator" style="clear: both;">(resetta il modulo, necessario dopo alcuni comandi)</div><div class="separator" style="clear: both;"><br /></div><div class="separator" style="clear: both;"><span face=""Helvetica Neue", Helvetica, Arial, sans-serif" style="background-color: white; color: #373737; font-size: 15px;">AT+INQM=0,5,9</span></div><div class="separator" style="clear: both;">(imposta parametri per la modalità di ricerca dei dispositivi)</div><div class="separator" style="clear: both;"><br style="background-color: white;" /><span face=""Helvetica Neue", Helvetica, Arial, sans-serif" style="background-color: white; color: #373737; font-size: 15px;">AT+INIT</span></div><div class="separator" style="clear: both;">(avvia la modalità SPP, se avete già dato questo comando riceverete l'errore 17, quindi siete già ok)</div><div class="separator" style="clear: both;"><br style="background-color: white;" /><span face=""Helvetica Neue", Helvetica, Arial, sans-serif" style="background-color: white; color: #373737; font-size: 15px;">AT+INQ</span></div><div class="separator" style="clear: both;"><span face=""Helvetica Neue", Helvetica, Arial, sans-serif" style="background-color: white; color: #373737; font-size: 15px;">(avvia la ricerca dei dispositivi nelle vicinanze, alimentate anche il modulo slave prima di dare questo comando, in modo da poterlo trovare)</span></div><div class="separator" style="clear: both;"><span face=""Helvetica Neue", Helvetica, Arial, sans-serif" style="background-color: white; color: #373737; font-size: 15px;"><br /></span></div><div class="separator" style="clear: both;"><span face=""Helvetica Neue", Helvetica, Arial, sans-serif" style="background-color: white; color: #373737; font-size: 15px;">dopo quest'ultimo comando, vi verrà restituita la lista dei dispositivi trovati, ad esempio:</span></div><div class="separator" style="clear: both;"><span face=""Helvetica Neue", Helvetica, Arial, sans-serif" style="background-color: white; color: #373737; font-size: 15px;"><br /></span></div><div class="separator" style="clear: both;"><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgnNkiJwzNEh6XldcJhCiBI2vMVsfKXOcf4twup7lQtv1h1CFr6pP4pYejrJ5byTzKG2Uy21aVrhGpyW75FIbR_PZsN6380dcdf9txCnW1CIA52bMvrQTHp4RtpmW5_nOgfdqLeQqBb0gl6kkFwxr7oBi02v9unghEmHyfupFCNHDoYxEsQ1fNTQ_xy/s1163/Cattura.PNG" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="591" data-original-width="1163" height="204" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgnNkiJwzNEh6XldcJhCiBI2vMVsfKXOcf4twup7lQtv1h1CFr6pP4pYejrJ5byTzKG2Uy21aVrhGpyW75FIbR_PZsN6380dcdf9txCnW1CIA52bMvrQTHp4RtpmW5_nOgfdqLeQqBb0gl6kkFwxr7oBi02v9unghEmHyfupFCNHDoYxEsQ1fNTQ_xy/w400-h204/Cattura.PNG" width="400" /></a></div><div class="separator" style="clear: both;"><br /></div>Con la versione di firmware del modulo 3.0-20170601 (date il comando AT+VERSION? per sapere la versione) questo comando restituirà l'errore 1F. Seguite <a href="https://stackoverflow.com/questions/47010342/bluetooth-hc-05-sending-error-1f-for-inq-command-only">questa soluzione</a>.<br /><div class="separator" style="clear: both;"><br /></div>Come vedete il terzo modulo trovato è il nostro modulo slave, potete ricevere anche il nome con il comando:</div><div class="separator" style="clear: both;"><br /></div><div class="separator" style="clear: both;">AT+RNAME?<i>INDIRIZZO </i><span face=""Helvetica Neue", Helvetica, Arial, sans-serif" style="background-color: white; color: #373737; font-size: 15px;">(es: AT</span><span face="Helvetica Neue, Helvetica, Arial, sans-serif" style="color: #373737;"><span style="font-size: 15px;">+</span></span>RNAME?<span face="Helvetica Neue, Helvetica, Arial, sans-serif" style="color: #373737;"><span style="font-size: 15px;">98d3,31,20a358)</span></span><span face=""Helvetica Neue", Helvetica, Arial, sans-serif" style="color: #373737; font-size: 15px;"> </span></div><div class="separator" style="clear: both;"><br /></div><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh7iLC9z-wnQS1HvvHm87Es_DT418HVLWNQYqt9fJQeKoSJjmsJYsvcVQn7HtKOWjb94CEq0N4Sh9TBPTNHDGthbdZbr_V9Dy6OEnIrO-74rp4k37iD6Gfm2RoW8GWPjdxkzvHO8zP54m3YiGIVWgCPw7o64sjYQH5_XN6MOL61kxu27vP6cfa452xj/s1202/Cattura.PNG" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="591" data-original-width="1202" height="196" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh7iLC9z-wnQS1HvvHm87Es_DT418HVLWNQYqt9fJQeKoSJjmsJYsvcVQn7HtKOWjb94CEq0N4Sh9TBPTNHDGthbdZbr_V9Dy6OEnIrO-74rp4k37iD6Gfm2RoW8GWPjdxkzvHO8zP54m3YiGIVWgCPw7o64sjYQH5_XN6MOL61kxu27vP6cfa452xj/w400-h196/Cattura.PNG" width="400" /></a></div><br /><div class="separator" style="clear: both;"><br /><span face=""Helvetica Neue", Helvetica, Arial, sans-serif" style="background-color: white; color: #373737; font-size: 15px;">Ora date i comandi:</span></div><div class="separator" style="clear: both;"><span face=""Helvetica Neue", Helvetica, Arial, sans-serif" style="background-color: white; color: #373737; font-size: 15px;"><br /></span></div><div class="separator" style="clear: both;"><span face=""Helvetica Neue", Helvetica, Arial, sans-serif" style="background-color: white; color: #373737; font-size: 15px;">AT+PAIR=<i>INDIRIZZO,TIMEOUT </i>(es: AT</span><span face="Helvetica Neue, Helvetica, Arial, sans-serif" style="color: #373737;"><span style="font-size: 15px;">+PAIR=98d3,31,20a358,9)</span></span><span face=""Helvetica Neue", Helvetica, Arial, sans-serif" style="color: #373737; font-size: 15px;"> </span></div><div class="separator" style="clear: both;"><span face=""Helvetica Neue", Helvetica, Arial, sans-serif" style="background-color: white; color: #373737; font-size: 15px;">per accoppiare i dispositivi, se tutto è andato a buon fine vi verrà restituito ok.</span></div></div><div class="separator" style="clear: both;"><br /></div><div class="separator" style="clear: both;"><span face=""Helvetica Neue", Helvetica, Arial, sans-serif" style="background-color: white; color: #373737; font-size: 15px;">AT+BIND=<i style="background-color: transparent;">INDIRIZZO </i>(es: AT</span><span face="Helvetica Neue, Helvetica, Arial, sans-serif" style="color: #373737;"><span style="font-size: 15px;">+BIND=98d3,31,20a358)</span></span></div><div class="separator" style="clear: both;"><span face="Helvetica Neue, Helvetica, Arial, sans-serif" style="color: #373737;"><span style="font-size: 15px;"><br /></span></span></div><div class="separator" style="clear: both;"><span face=""Helvetica Neue", Helvetica, Arial, sans-serif" style="background-color: white; color: #373737; font-size: 15px;">AT+LINK=<i style="background-color: transparent;">INDIRIZZO </i>(es: AT</span><span face="Helvetica Neue, Helvetica, Arial, sans-serif" style="color: #373737;"><span style="font-size: 15px;">+LINK=98d3,31,20a358)</span></span></div><div class="separator" style="clear: both;"><span face="Helvetica Neue, Helvetica, Arial, sans-serif" style="color: #373737;"><span style="font-size: 15px;"><br /></span></span></div></div><div class="separator" style="clear: both; text-align: left;">Fine!</div><div class="separator" style="clear: both; text-align: left;">Ora i due dispositivi saranno accoppiati, alla prossima riaccensione eseguiranno automaticamente la connessione, quindi quello che invierà un modulo verrà ricevuto dall'altro e viceversa.</div><div class="separator" style="clear: both; text-align: left;"><br /></div><div class="separator" style="clear: both; text-align: left;">Potete provare la connessione lasciando un modulo collegato ad Arduino.</div><div class="separator" style="clear: both; text-align: left;">L'altro modulo è sufficiente che lo alimentiate e i pin TX e RX dovranno essere uniti tra loro.</div><div class="separator" style="clear: both; text-align: left;">Ciò che scriverete sul serial monitor vi dovrà tornare come risposta.</div><div class="separator" style="clear: both; text-align: left;"><br /></div><div class="separator" style="clear: both; text-align: left;">Questo è tutto,<br />Seguimi sulle mie pagine per rimanere sempre aggiornato sui nuovi post!</div><div class="separator" style="clear: both; text-align: left;"><br /></div><div><br /></div>LINK UTILI:<br /><br /><a href="http://www.martyncurrey.com/connecting-2-arduinos-by-bluetooth-using-a-hc-05-and-a-hc-06-pair-bind-and-link/">fonte1</a><br /></div><div><a href="https://www-puntoflotante-net.translate.goog/BOLT-SYSTEM-BLUETOOTH-AT-COMMANDS.htm?_x_tr_sl=en&_x_tr_tl=it&_x_tr_hl=it&_x_tr_pto=op,sc">fonte2</a><br /></div><div><a href="https://arduino.stackexchange.com/questions/19517/hc-05-bluetooth-module-inq-command-doesnt-work">fonte3</a><br /></div><div><a href="https://s3-sa-east-1.amazonaws.com/robocore-lojavirtual/709/HC-05_ATCommandSet.pdf">lista comandi AT</a></div><div><br /></div></div></div>Danielehttp://www.blogger.com/profile/09720964861202313121noreply@blogger.com2tag:blogger.com,1999:blog-390453114990638376.post-55008437115338959012022-02-19T16:58:00.002+01:002022-02-19T16:58:43.146+01:00Leggere mp3 con Arduino e esp32<p>Ciao!</p><p>in questo tutorial vedremo come riprodurre dei file mp3 con Arduino,</p><p>ed in particolare con il modulo esp32.</p><p>La libreria che utilizzeremo è compatibile anche con altri formati audio.</p><p>Musica con Arduino!</p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/a/AVvXsEi_SiVRyD6778zOFtj3iCxAAaqXyzWpopTn7av2S85npMt8QHPbG52J7v7tQtMxXgHoofQdzBquOFzmyEh06Flyoc00sWTsTXgrRZNRNlyerQMpbqh2lF_QiGgEvbFBdCwu0-Y5tGYFz4TV8IO8sXsbytY9Gwz5Yz-NmvuDfhfjSYQFg9gvC969slWH=s1155" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="900" data-original-width="1155" height="498" src="https://blogger.googleusercontent.com/img/a/AVvXsEi_SiVRyD6778zOFtj3iCxAAaqXyzWpopTn7av2S85npMt8QHPbG52J7v7tQtMxXgHoofQdzBquOFzmyEh06Flyoc00sWTsTXgrRZNRNlyerQMpbqh2lF_QiGgEvbFBdCwu0-Y5tGYFz4TV8IO8sXsbytY9Gwz5Yz-NmvuDfhfjSYQFg9gvC969slWH=w640-h498" width="640" /></a></div><br /><span><a name='more'></a></span><p>Oltre alla board di sviluppo basata su esp32, avremo bisogno anche dell'amplificatore i2s <a href="https://www.adafruit.com/product/3006">max98357a</a> (che potete trovare in tutti i principali eCommerce) e di uno speaker. </p><p>I file dovranno essere memorizzati dentro una scheda sd. In vendita si trovano moduli già fatti, in alternativa potete saldare direttamente i fili su un adattatore sd-microsd e salvare i file nella microsd.</p><p><br /></p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/a/AVvXsEghKnYYjtudLwq8U4a4AlUnqMCdsrSwiQhpjSEINek4D2IoTFhK7zylRhjgaz8weGYOBmW7vrPxZgo6WlJ9iXLwqF_6HW93nfU4xliJlVp_UFCKNeAB-pWQDyw1sfC7jxoApfp72lSUSxIk45z4GSa9w70ILanGdpIl-JRAwk9kiVidIhJ6BqDQHp7b=s1467" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="945" data-original-width="1467" height="412" src="https://blogger.googleusercontent.com/img/a/AVvXsEghKnYYjtudLwq8U4a4AlUnqMCdsrSwiQhpjSEINek4D2IoTFhK7zylRhjgaz8weGYOBmW7vrPxZgo6WlJ9iXLwqF_6HW93nfU4xliJlVp_UFCKNeAB-pWQDyw1sfC7jxoApfp72lSUSxIk45z4GSa9w70ILanGdpIl-JRAwk9kiVidIhJ6BqDQHp7b=w640-h412" width="640" /></a></div><br /><p>Per riprodurre i file avrete bisogno della <a href="https://github.com/schreibfaul1/ESP32-audioI2S">libreria ESP32-audioI2S</a>, scaricabile direttamente o tramite il gestore librerie del menu di Arduino.</p><p>Il seguente sketch di esempio farà riprodurre al vostro ESP32 tutti i file .mp3 presenti nella root della scheda sd.</p><ol class="arduino" style="background: rgb(255, 255, 255); box-sizing: border-box; color: #333333; font-family: Consolas, Menlo, Monaco, "Lucida Console", "Liberation Mono", "DejaVu Sans Mono", "Bitstream Vera Sans Mono", monospace, serif; font-size: 12px; margin: 0px; padding: 0px 10px; vertical-align: baseline;"><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"><span class="co1" style="box-sizing: border-box; color: #666666; font-style: italic; margin: 0px; padding: 0px; vertical-align: baseline;">// will play many audio file formats, mp3,aac,flac etc.</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"><span class="co1" style="box-sizing: border-box; color: #666666; font-style: italic; margin: 0px; padding: 0px; vertical-align: baseline;">// See github page : https://github.com/schreibfaul1/ESP32-audioI2S</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> </div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"><span class="co2" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">#include "Arduino.h"</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"><span class="co2" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">#include "Audio.h"</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"><span class="co2" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">#include "SD.h"</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"><span class="co2" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">#include "FS.h"</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> </div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"><span class="co1" style="box-sizing: border-box; color: #666666; font-style: italic; margin: 0px; padding: 0px; vertical-align: baseline;">// Digital I/O used</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"><span class="co2" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">#define SD_CS 5</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"><span class="co2" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">#define SPI_MOSI 23 // SD Card</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"><span class="co2" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">#define SPI_MISO 19</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"><span class="co2" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">#define SPI_SCK 18</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> </div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"><span class="co2" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">#define I2S_DOUT 25</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"><span class="co2" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">#define I2S_BCLK 27 // I2S</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"><span class="co2" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">#define I2S_LRC 26</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> </div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;">Audio audio<span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> </div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;">File root<span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> </div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"><span class="kw4" style="box-sizing: border-box; color: #993333; margin: 0px; padding: 0px; vertical-align: baseline;">void</span> setup<span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span> <span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">{</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="kw3" style="box-sizing: border-box; color: #000066; margin: 0px; padding: 0px; vertical-align: baseline;">pinMode</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span>SD_CS<span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span> <span class="kw2" style="box-sizing: border-box; font-weight: bold; margin: 0px; padding: 0px; vertical-align: baseline;">OUTPUT</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="kw3" style="box-sizing: border-box; color: #000066; margin: 0px; padding: 0px; vertical-align: baseline;">digitalWrite</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span>SD_CS<span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span> <span class="kw2" style="box-sizing: border-box; font-weight: bold; margin: 0px; padding: 0px; vertical-align: baseline;">HIGH</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> SPI.<span class="me1" style="box-sizing: border-box; color: #202020; margin: 0px; padding: 0px; vertical-align: baseline;">begin</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span>SPI_SCK<span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span> SPI_MISO<span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span> SPI_MOSI<span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="kw3" style="box-sizing: border-box; color: #000066; margin: 0px; padding: 0px; vertical-align: baseline;">Serial</span>.<span class="me1" style="box-sizing: border-box; color: #202020; margin: 0px; padding: 0px; vertical-align: baseline;">begin</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span><span class="nu0" style="box-sizing: border-box; color: #0000dd; margin: 0px; padding: 0px; vertical-align: baseline;">115200</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="kw1" style="box-sizing: border-box; color: #b1b100; margin: 0px; padding: 0px; vertical-align: baseline;">if</span> <span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">!</span>SD.<span class="me1" style="box-sizing: border-box; color: #202020; margin: 0px; padding: 0px; vertical-align: baseline;">begin</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span>SD_CS<span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">{</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="kw3" style="box-sizing: border-box; color: #000066; margin: 0px; padding: 0px; vertical-align: baseline;">Serial</span>.<span class="me1" style="box-sizing: border-box; color: #202020; margin: 0px; padding: 0px; vertical-align: baseline;">println</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span><span class="st0" style="box-sizing: border-box; color: red; margin: 0px; padding: 0px; vertical-align: baseline;">"Error talking to SD card!"</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="kw1" style="box-sizing: border-box; color: #b1b100; margin: 0px; padding: 0px; vertical-align: baseline;">while</span> <span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span><span class="kw2" style="box-sizing: border-box; font-weight: bold; margin: 0px; padding: 0px; vertical-align: baseline;">true</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span> <span class="co1" style="box-sizing: border-box; color: #666666; font-style: italic; margin: 0px; padding: 0px; vertical-align: baseline;">// end program</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">}</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> </div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> root <span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">=</span> SD.<span class="me1" style="box-sizing: border-box; color: #202020; margin: 0px; padding: 0px; vertical-align: baseline;">open</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span><span class="st0" style="box-sizing: border-box; color: red; margin: 0px; padding: 0px; vertical-align: baseline;">"/"</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> </div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> audio.<span class="me1" style="box-sizing: border-box; color: #202020; margin: 0px; padding: 0px; vertical-align: baseline;">setPinout</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span>I2S_BCLK<span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span> I2S_LRC<span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span> I2S_DOUT<span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> audio.<span class="me1" style="box-sizing: border-box; color: #202020; margin: 0px; padding: 0px; vertical-align: baseline;">setVolume</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span><span class="nu0" style="box-sizing: border-box; color: #0000dd; margin: 0px; padding: 0px; vertical-align: baseline;">2</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span> <span class="co1" style="box-sizing: border-box; color: #666666; font-style: italic; margin: 0px; padding: 0px; vertical-align: baseline;">// 0...21</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> </div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="co1" style="box-sizing: border-box; color: #666666; font-style: italic; margin: 0px; padding: 0px; vertical-align: baseline;">//audio.connecttoSD("/example.mp3");</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">}</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> </div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"><span class="kw4" style="box-sizing: border-box; color: #993333; margin: 0px; padding: 0px; vertical-align: baseline;">void</span> loop<span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">{</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="kw1" style="box-sizing: border-box; color: #b1b100; margin: 0px; padding: 0px; vertical-align: baseline;">if</span> <span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">!</span>audio.<span class="me1" style="box-sizing: border-box; color: #202020; margin: 0px; padding: 0px; vertical-align: baseline;">isRunning</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">{</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="kw3" style="box-sizing: border-box; color: #000066; margin: 0px; padding: 0px; vertical-align: baseline;">Serial</span>.<span class="me1" style="box-sizing: border-box; color: #202020; margin: 0px; padding: 0px; vertical-align: baseline;">println</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span><span class="st0" style="box-sizing: border-box; color: red; margin: 0px; padding: 0px; vertical-align: baseline;">"song end"</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> bool songFind <span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">=</span> <span class="kw2" style="box-sizing: border-box; font-weight: bold; margin: 0px; padding: 0px; vertical-align: baseline;">false</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> String songName <span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">=</span> <span class="st0" style="box-sizing: border-box; color: red; margin: 0px; padding: 0px; vertical-align: baseline;">""</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> </div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="kw1" style="box-sizing: border-box; color: #b1b100; margin: 0px; padding: 0px; vertical-align: baseline;">if</span> <span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">!</span>songFind<span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">{</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> songName <span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">=</span> getNext<span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span>root<span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> songFind <span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">=</span> songName.<span class="me1" style="box-sizing: border-box; color: #202020; margin: 0px; padding: 0px; vertical-align: baseline;">endsWith</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span><span class="st0" style="box-sizing: border-box; color: red; margin: 0px; padding: 0px; vertical-align: baseline;">".mp3"</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="kw1" style="box-sizing: border-box; color: #b1b100; margin: 0px; padding: 0px; vertical-align: baseline;">if</span> <span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span>songFind<span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">{</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> audio.<span class="me1" style="box-sizing: border-box; color: #202020; margin: 0px; padding: 0px; vertical-align: baseline;">connecttoSD</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span>songName<span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">}</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="kw1" style="box-sizing: border-box; color: #b1b100; margin: 0px; padding: 0px; vertical-align: baseline;">else</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">{</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="kw3" style="box-sizing: border-box; color: #000066; margin: 0px; padding: 0px; vertical-align: baseline;">Serial</span>.<span class="me1" style="box-sizing: border-box; color: #202020; margin: 0px; padding: 0px; vertical-align: baseline;">println</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span><span class="st0" style="box-sizing: border-box; color: red; margin: 0px; padding: 0px; vertical-align: baseline;">"no song"</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">}</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">}</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> </div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">}</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="kw1" style="box-sizing: border-box; color: #b1b100; margin: 0px; padding: 0px; vertical-align: baseline;">else</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">{</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> audio.<span class="me1" style="box-sizing: border-box; color: #202020; margin: 0px; padding: 0px; vertical-align: baseline;">loop</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">}</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">}</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> </div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;">String getNext<span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span>File dir<span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span> <span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">{</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> </div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> String fileName <span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">=</span> <span class="st0" style="box-sizing: border-box; color: red; margin: 0px; padding: 0px; vertical-align: baseline;">""</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> </div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="kw3" style="box-sizing: border-box; color: #000066; margin: 0px; padding: 0px; vertical-align: baseline;">Serial</span>.<span class="me1" style="box-sizing: border-box; color: #202020; margin: 0px; padding: 0px; vertical-align: baseline;">println</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span><span class="st0" style="box-sizing: border-box; color: red; margin: 0px; padding: 0px; vertical-align: baseline;">"find next"</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> </div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> File entry <span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">=</span> dir.<span class="me1" style="box-sizing: border-box; color: #202020; margin: 0px; padding: 0px; vertical-align: baseline;">openNextFile</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> </div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="kw1" style="box-sizing: border-box; color: #b1b100; margin: 0px; padding: 0px; vertical-align: baseline;">if</span> <span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">!</span> entry<span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span> <span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">{</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="kw1" style="box-sizing: border-box; color: #b1b100; margin: 0px; padding: 0px; vertical-align: baseline;">return</span> <span class="st0" style="box-sizing: border-box; color: red; margin: 0px; padding: 0px; vertical-align: baseline;">""</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="kw3" style="box-sizing: border-box; color: #000066; margin: 0px; padding: 0px; vertical-align: baseline;">Serial</span>.<span class="me1" style="box-sizing: border-box; color: #202020; margin: 0px; padding: 0px; vertical-align: baseline;">println</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span><span class="st0" style="box-sizing: border-box; color: red; margin: 0px; padding: 0px; vertical-align: baseline;">"No more files"</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">}</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="kw1" style="box-sizing: border-box; color: #b1b100; margin: 0px; padding: 0px; vertical-align: baseline;">else</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">{</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> fileName <span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">=</span> entry.<span class="me1" style="box-sizing: border-box; color: #202020; margin: 0px; padding: 0px; vertical-align: baseline;">name</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="kw3" style="box-sizing: border-box; color: #000066; margin: 0px; padding: 0px; vertical-align: baseline;">Serial</span>.<span class="me1" style="box-sizing: border-box; color: #202020; margin: 0px; padding: 0px; vertical-align: baseline;">println</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span>fileName<span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> entry.<span class="me1" style="box-sizing: border-box; color: #202020; margin: 0px; padding: 0px; vertical-align: baseline;">close</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="kw1" style="box-sizing: border-box; color: #b1b100; margin: 0px; padding: 0px; vertical-align: baseline;">return</span> fileName<span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">}</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">}</span></div></li></ol><p>Per testare il tutto potete utilizzare alcune <a href="https://docs.espressif.com/projects/esp-adf/en/latest/design-guide/audio-samples.html">tracce di test</a></p><p>Questa può essere la base per riprodurre breve tracce all'interno dei vostri progetti interattivi, o per costruire una <a href="https://www.thingiverse.com/thing:2726755">radiolina per bambini</a>.</p><p><br /></p><p>Questo è tutto,<br />Seguimi sulle mie pagine per rimanere sempre aggiornato sui nuovi post!</p>Danielehttp://www.blogger.com/profile/09720964861202313121noreply@blogger.com0tag:blogger.com,1999:blog-390453114990638376.post-38854980272725942382022-01-16T16:04:00.002+01:002022-02-19T16:40:13.437+01:00Arduino: liste concatenate<p>Ciao,</p><p>in questo post vedremo come utilizzare le liste concatenate con Arduino.</p><p></p><div class="separator" style="clear: both; text-align: center;"><a href="https://lh3.googleusercontent.com/-QaPue8RIu2U/YdwmVJbPGvI/AAAAAAAAIOA/tNwnL3XK0i4wVBfkdlstgKeoa9n_LfY8ACNcBGAsYHQ/image.png" style="margin-left: 1em; margin-right: 1em;"><img alt="" data-original-height="640" data-original-width="960" height="427" src="https://lh3.googleusercontent.com/-QaPue8RIu2U/YdwmVJbPGvI/AAAAAAAAIOA/tNwnL3XK0i4wVBfkdlstgKeoa9n_LfY8ACNcBGAsYHQ/w640-h427/image.png" width="640" /></a></div><br /><p></p><span></span><span><a name='more'></a></span><p>ma prima: cosa sono le liste concatenate? </p><p>da <a href="https://it.wikipedia.org/wiki/Lista_concatenata">wikipedia:</a></p><blockquote><i>In <a href="https://www.blogger.com/#">informatica</a>, una lista concatenata (o linked list) è una <a href="https://www.blogger.com/#">struttura dati</a> dinamica, tra quelle fondamentali usate nella <a href="https://www.blogger.com/#">programmazione</a>. Consiste di una sequenza di nodi, ognuno contenente <a href="https://www.blogger.com/#">campi</a> di dati arbitrari ed uno o due riferimenti ("link") che puntano al nodo successivo e/o precedente. Una lista concatenata è un tipo di dato auto-referente, in quanto contiene un <a href="https://www.blogger.com/#">puntatore</a> ad un altro dato dello stesso tipo. Le liste concatenate permettono l'inserzione e la rimozione di nodi in ogni punto della lista in tempo costante, ma non permettono l'accesso casuale, solo quello sequenziale. Esistono diversi tipi di liste concatenate: liste concatenate semplici, liste concatenate doppie e liste circolari.</i></blockquote><p>Quando non si conosce a priori l'esatta quantità di dati da immagazzinare può essere conveniente utilizzare una lista rispetto ad un array, nel quale va prestabilita la dimensione. </p><p>Ad esempio "int mInts[100]" occuperà sempre 100 int, anche se durante l'esecuzione potrebbero servirmene solo 10. Di contro se so già la dimensione certa potrebbe essere molto più vantaggioso l'array, sia come spazio occupato sia come velocità di accesso ai dati. </p><p>La <a href="https://github.com/ivanseidel/LinkedList">libreria LinkedList</a> implementa l'utilizzo delle liste concatenate con Arduino, è possibile scaricarla ed installarla tramite il gestore librerie dal menu di Arduino.</p><p><br /></p><p></p><div class="separator" style="clear: both; text-align: center;"><a href="https://lh3.googleusercontent.com/-Y89EPvDnZW0/YdwlAIWEFnI/AAAAAAAAIN4/1Qr9H6hhxWgFCWdVhTMjmP_yCiQkdNthgCNcBGAsYHQ/image.png" style="margin-left: 1em; margin-right: 1em;"><img alt="" data-original-height="360" data-original-width="640" height="360" src="https://lh3.googleusercontent.com/-Y89EPvDnZW0/YdwlAIWEFnI/AAAAAAAAIN4/1Qr9H6hhxWgFCWdVhTMjmP_yCiQkdNthgCNcBGAsYHQ/w640-h360/image.png" width="640" /></a></div><br /><br /><p></p><p>Ecco qui un esempio pratico di uso delle liste.</p><p>Una scheda SD collegata ad una scheda di sviluppo basata su ESP32, non potendo conoscere a priori il numero di file e cartelle, è impossibile costruire a priori un array della lunghezza adeguata nel quale inserire tutti i nomi delle cartelle trovate nella SD (ad esempio). Con le liste concatenate invece è possibile fare ciò senza dover riservare a prescindere spazio.</p><div class="highlighted-code" style="background-color: white; border-radius: 3px; border: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: #333333; font-family: Consolas, Menlo, Monaco, "Lucida Console", "Liberation Mono", "DejaVu Sans Mono", "Bitstream Vera Sans Mono", monospace, serif; font-size: 16px; margin: 0px 0px 10px; padding: 0px; vertical-align: baseline;"><div class="source" style="box-sizing: border-box; font-size: 12px; margin: 0px; overflow-x: auto; padding: 0px; vertical-align: baseline;"><ol class="arduino" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; margin: 0px; padding: 0px 10px; vertical-align: baseline;"><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"><span class="co2" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">#include <LinkedList.h></span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"><span class="co2" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">#include "SD.h"</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"><span class="co2" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">#include "FS.h"</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> </div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"><span class="co1" style="box-sizing: border-box; color: #666666; font-style: italic; margin: 0px; padding: 0px; vertical-align: baseline;">// Digital I/O used</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"><span class="co2" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">#define SD_CS 5</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"><span class="co2" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">#define SPI_MOSI 23 // SD Card</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"><span class="co2" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">#define SPI_MISO 19</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"><span class="co2" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">#define SPI_SCK 18</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> </div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;">File root<span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> </div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;">LinkedList<span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;"><</span>String<span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">></span> foldersList <span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">=</span> LinkedList<span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;"><</span>String<span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">></span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> </div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"><span class="kw4" style="box-sizing: border-box; color: #993333; margin: 0px; padding: 0px; vertical-align: baseline;">void</span> setup<span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span> <span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">{</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="kw3" style="box-sizing: border-box; color: #000066; margin: 0px; padding: 0px; vertical-align: baseline;">delay</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span><span class="nu0" style="box-sizing: border-box; color: #0000dd; margin: 0px; padding: 0px; vertical-align: baseline;">2000</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="kw3" style="box-sizing: border-box; color: #000066; margin: 0px; padding: 0px; vertical-align: baseline;">pinMode</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span>SD_CS<span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span> <span class="kw2" style="box-sizing: border-box; font-weight: bold; margin: 0px; padding: 0px; vertical-align: baseline;">OUTPUT</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="kw3" style="box-sizing: border-box; color: #000066; margin: 0px; padding: 0px; vertical-align: baseline;">digitalWrite</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span>SD_CS<span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span> <span class="kw2" style="box-sizing: border-box; font-weight: bold; margin: 0px; padding: 0px; vertical-align: baseline;">HIGH</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> SPI.<span class="me1" style="box-sizing: border-box; color: #202020; margin: 0px; padding: 0px; vertical-align: baseline;">begin</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span>SPI_SCK<span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span> SPI_MISO<span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span> SPI_MOSI<span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="kw3" style="box-sizing: border-box; color: #000066; margin: 0px; padding: 0px; vertical-align: baseline;">Serial</span>.<span class="me1" style="box-sizing: border-box; color: #202020; margin: 0px; padding: 0px; vertical-align: baseline;">begin</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span><span class="nu0" style="box-sizing: border-box; color: #0000dd; margin: 0px; padding: 0px; vertical-align: baseline;">115200</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> </div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="kw1" style="box-sizing: border-box; color: #b1b100; margin: 0px; padding: 0px; vertical-align: baseline;">if</span> <span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">!</span>SD.<span class="me1" style="box-sizing: border-box; color: #202020; margin: 0px; padding: 0px; vertical-align: baseline;">begin</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span>SD_CS<span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">{</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="kw3" style="box-sizing: border-box; color: #000066; margin: 0px; padding: 0px; vertical-align: baseline;">Serial</span>.<span class="me1" style="box-sizing: border-box; color: #202020; margin: 0px; padding: 0px; vertical-align: baseline;">println</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span><span class="st0" style="box-sizing: border-box; color: red; margin: 0px; padding: 0px; vertical-align: baseline;">"Error talking to SD card!"</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> ESP.<span class="me1" style="box-sizing: border-box; color: #202020; margin: 0px; padding: 0px; vertical-align: baseline;">restart</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span> <span class="co1" style="box-sizing: border-box; color: #666666; font-style: italic; margin: 0px; padding: 0px; vertical-align: baseline;">//try again</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">}</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> root <span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">=</span> SD.<span class="me1" style="box-sizing: border-box; color: #202020; margin: 0px; padding: 0px; vertical-align: baseline;">open</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span><span class="st0" style="box-sizing: border-box; color: red; margin: 0px; padding: 0px; vertical-align: baseline;">"/"</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> listSubfolders<span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span>root<span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> </div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="kw1" style="box-sizing: border-box; color: #b1b100; margin: 0px; padding: 0px; vertical-align: baseline;">for</span> <span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span><span class="kw4" style="box-sizing: border-box; color: #993333; margin: 0px; padding: 0px; vertical-align: baseline;">int</span> i <span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">=</span> <span class="nu0" style="box-sizing: border-box; color: #0000dd; margin: 0px; padding: 0px; vertical-align: baseline;">0</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span> i <span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;"><</span> foldersList.<span class="me1" style="box-sizing: border-box; color: #202020; margin: 0px; padding: 0px; vertical-align: baseline;">size</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span> i<span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">++</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">{</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="kw3" style="box-sizing: border-box; color: #000066; margin: 0px; padding: 0px; vertical-align: baseline;">Serial</span>.<span class="me1" style="box-sizing: border-box; color: #202020; margin: 0px; padding: 0px; vertical-align: baseline;">println</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span>foldersList.<span class="me1" style="box-sizing: border-box; color: #202020; margin: 0px; padding: 0px; vertical-align: baseline;">get</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span>i<span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">}</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">}</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> </div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"><span class="kw4" style="box-sizing: border-box; color: #993333; margin: 0px; padding: 0px; vertical-align: baseline;">void</span> loop<span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span> <span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">{</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">}</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> </div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"><span class="kw4" style="box-sizing: border-box; color: #993333; margin: 0px; padding: 0px; vertical-align: baseline;">void</span> listSubfolders<span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span>File dir<span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span> <span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">{</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="kw1" style="box-sizing: border-box; color: #b1b100; margin: 0px; padding: 0px; vertical-align: baseline;">while</span> <span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span><span class="kw2" style="box-sizing: border-box; font-weight: bold; margin: 0px; padding: 0px; vertical-align: baseline;">true</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span> <span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">{</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> </div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> File entry <span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">=</span> dir.<span class="me1" style="box-sizing: border-box; color: #202020; margin: 0px; padding: 0px; vertical-align: baseline;">openNextFile</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> </div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="kw1" style="box-sizing: border-box; color: #b1b100; margin: 0px; padding: 0px; vertical-align: baseline;">if</span> <span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">!</span> entry<span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span> <span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">{</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> </div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="co1" style="box-sizing: border-box; color: #666666; font-style: italic; margin: 0px; padding: 0px; vertical-align: baseline;">// no more files</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="kw2" style="box-sizing: border-box; font-weight: bold; margin: 0px; padding: 0px; vertical-align: baseline;">break</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">}</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> </div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> String folderName <span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">=</span> entry.<span class="me1" style="box-sizing: border-box; color: #202020; margin: 0px; padding: 0px; vertical-align: baseline;">name</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span> </div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="kw1" style="box-sizing: border-box; color: #b1b100; margin: 0px; padding: 0px; vertical-align: baseline;">if</span> <span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">!</span>folderName.<span class="me1" style="box-sizing: border-box; color: #202020; margin: 0px; padding: 0px; vertical-align: baseline;">equals</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span><span class="st0" style="box-sizing: border-box; color: red; margin: 0px; padding: 0px; vertical-align: baseline;">"/System Volume Information"</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">{</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> foldersList.<span class="me1" style="box-sizing: border-box; color: #202020; margin: 0px; padding: 0px; vertical-align: baseline;">add</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span>folderName<span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">}</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> entry.<span class="me1" style="box-sizing: border-box; color: #202020; margin: 0px; padding: 0px; vertical-align: baseline;">close</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">}</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">}</span></div></li></ol></div></div><div><br /></div><div><br /></div>Se volete realizzare i collegamenti necessari per utilizzare l'esempio sopra, <a href="https://www.blogger.com/#">qui</a> trovate tutte le info.<br /><br />Questo è tutto,<br />Seguimi sulle mie pagine per rimanere sempre aggiornato sui nuovi post!Danielehttp://www.blogger.com/profile/09720964861202313121noreply@blogger.com0tag:blogger.com,1999:blog-390453114990638376.post-74637238660922870362021-12-07T15:18:00.004+01:002021-12-07T15:21:56.981+01:00Attiny44/84: display ssd1306<p>Ciao!</p><p>questo post è nato dall'esigenza di pilotare un piccolo display con un ATTiny44.</p><p>il display ssd1306 era perfetto perché molto diffuso, e pilotabile utilizzando pochi pin grazie all'I2C.</p><p></p><div class="separator" style="clear: both; text-align: center;"><a href="https://lh3.googleusercontent.com/-l5tS-6zeeBU/Ya9fWHll3gI/AAAAAAAAIMc/2cDagB2xlkIxx9xFmm31wG75NDX7nDwsACNcBGAsYHQ/image.png" style="margin-left: 1em; margin-right: 1em;"><img alt="" data-original-height="200" data-original-width="200" height="240" src="https://lh3.googleusercontent.com/-l5tS-6zeeBU/Ya9fWHll3gI/AAAAAAAAIMc/2cDagB2xlkIxx9xFmm31wG75NDX7nDwsACNcBGAsYHQ/image.png" width="240" /></a></div>Il problema è la memoria flash a disposizione del piccolo ATTiny44, solo 4Kbytes, e le più popolari librerie per il display ssd1306 hanno bisogno di molto spazio.<p></p><p>Si potrebbe passare alla taglia superiore, infatti l'ATTiny84 ha a disposizione il doppio della memoria, ma c'è un'altra possibilità.<br /><br /></p><span><a name='more'></a></span><p><br /></p><p>la libreria <i>ssd1306ascii </i>utilizza circa 3Kbytes di memoria, non permette di realizzare elementi grafici ma solo caratteri, però ci sta!</p><p>Potete installarla direttamente dal menu di Arduino (strumenti, gestione librerie) oppure manualmente da <a href="https://github.com/greiman/SSD1306Ascii">github</a></p><p>Dopo averla installata non vi resta che caricare l'esempio che trovate qui sotto nel vostro Attiny (se non sapete come fare qui trovate <a href="https://www.danielealberti.it/2021/11/programmare-un-attiny244484-con-arduino.html">come programmare un attiny x4 con Arduino</a>)</p><ol class="arduino" style="background: rgb(255, 255, 255); box-sizing: border-box; color: #333333; font-family: Consolas, Menlo, Monaco, "Lucida Console", "Liberation Mono", "DejaVu Sans Mono", "Bitstream Vera Sans Mono", monospace, serif; font-size: 12px; margin: 0px; padding: 0px 10px; vertical-align: baseline;"><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"><span class="co2" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">#include <Wire.h></span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"><span class="co2" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">#include "SSD1306Ascii.h"</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"><span class="co2" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">#include "SSD1306AsciiWire.h"</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> </div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"><span class="co1" style="box-sizing: border-box; color: #666666; font-style: italic; margin: 0px; padding: 0px; vertical-align: baseline;">// 0X3C+SA0 - 0x3C or 0x3D</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"><span class="co2" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">#define I2C_ADDRESS 0x3C</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> </div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"><span class="co1" style="box-sizing: border-box; color: #666666; font-style: italic; margin: 0px; padding: 0px; vertical-align: baseline;">// Define proper RST_PIN if required.</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"><span class="co2" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">#define RST_PIN -1</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> </div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;">SSD1306AsciiWire oled<span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> </div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"><span class="kw4" style="box-sizing: border-box; color: #993333; margin: 0px; padding: 0px; vertical-align: baseline;">void</span> setup<span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span> <span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">{</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="kw3" style="box-sizing: border-box; color: #000066; margin: 0px; padding: 0px; vertical-align: baseline;">delay</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span><span class="nu0" style="box-sizing: border-box; color: #0000dd; margin: 0px; padding: 0px; vertical-align: baseline;">1000</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> Wire.<span class="me1" style="box-sizing: border-box; color: #202020; margin: 0px; padding: 0px; vertical-align: baseline;">begin</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> Wire.<span class="me1" style="box-sizing: border-box; color: #202020; margin: 0px; padding: 0px; vertical-align: baseline;">setClock</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span><span class="nu0" style="box-sizing: border-box; color: #0000dd; margin: 0px; padding: 0px; vertical-align: baseline;">33000L</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="kw3" style="box-sizing: border-box; color: #000066; margin: 0px; padding: 0px; vertical-align: baseline;">delay</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span><span class="nu0" style="box-sizing: border-box; color: #0000dd; margin: 0px; padding: 0px; vertical-align: baseline;">1000</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> </div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"><span class="co2" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">#if RST_PIN >= 0</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> oled.<span class="me1" style="box-sizing: border-box; color: #202020; margin: 0px; padding: 0px; vertical-align: baseline;">begin</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">&</span>Adafruit128x32<span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span> I2C_ADDRESS<span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span> RST_PIN<span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"><span class="co2" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">#else // RST_PIN >= 0</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> oled.<span class="me1" style="box-sizing: border-box; color: #202020; margin: 0px; padding: 0px; vertical-align: baseline;">begin</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">&</span>Adafruit128x32<span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span> I2C_ADDRESS<span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"><span class="co2" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">#endif // RST_PIN >= 0</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> </div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> oled.<span class="me1" style="box-sizing: border-box; color: #202020; margin: 0px; padding: 0px; vertical-align: baseline;">setFont</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span>System5x7<span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> oled.<span class="me1" style="box-sizing: border-box; color: #202020; margin: 0px; padding: 0px; vertical-align: baseline;">clear</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> oled.<span class="me1" style="box-sizing: border-box; color: #202020; margin: 0px; padding: 0px; vertical-align: baseline;">print</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span><span class="st0" style="box-sizing: border-box; color: red; margin: 0px; padding: 0px; vertical-align: baseline;">"Hello world!"</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="kw3" style="box-sizing: border-box; color: #000066; margin: 0px; padding: 0px; vertical-align: baseline;">delay</span> <span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span><span class="nu0" style="box-sizing: border-box; color: #0000dd; margin: 0px; padding: 0px; vertical-align: baseline;">2000</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> oled.<span class="me1" style="box-sizing: border-box; color: #202020; margin: 0px; padding: 0px; vertical-align: baseline;">clear</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">}</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"><span class="kw4" style="box-sizing: border-box; color: #993333; margin: 0px; padding: 0px; vertical-align: baseline;">void</span> loop<span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">{</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="kw3" style="box-sizing: border-box; color: #000066; margin: 0px; padding: 0px; vertical-align: baseline;">delay</span> <span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span><span class="nu0" style="box-sizing: border-box; color: #0000dd; margin: 0px; padding: 0px; vertical-align: baseline;">5</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> oled.<span class="me1" style="box-sizing: border-box; color: #202020; margin: 0px; padding: 0px; vertical-align: baseline;">setCursor</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span><span class="nu0" style="box-sizing: border-box; color: #0000dd; margin: 0px; padding: 0px; vertical-align: baseline;">0</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span><span class="nu0" style="box-sizing: border-box; color: #0000dd; margin: 0px; padding: 0px; vertical-align: baseline;">0</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> oled.<span class="me1" style="box-sizing: border-box; color: #202020; margin: 0px; padding: 0px; vertical-align: baseline;">print</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span><span class="kw3" style="box-sizing: border-box; color: #000066; margin: 0px; padding: 0px; vertical-align: baseline;">millis</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">}</span></div></li></ol><div><span style="color: #009900; font-family: Consolas, Menlo, Monaco, Lucida Console, Liberation Mono, DejaVu Sans Mono, Bitstream Vera Sans Mono, monospace, serif;"><span style="font-size: 12px; white-space: pre-wrap;"><br /></span></span></div><div><span style="color: #009900; font-family: Consolas, Menlo, Monaco, Lucida Console, Liberation Mono, DejaVu Sans Mono, Bitstream Vera Sans Mono, monospace, serif;"><span style="font-size: 12px; white-space: pre-wrap;"><br /></span></span></div><div><span style="color: #009900; font-family: Consolas, Menlo, Monaco, Lucida Console, Liberation Mono, DejaVu Sans Mono, Bitstream Vera Sans Mono, monospace, serif;"><span style="font-size: 12px; white-space: pre-wrap;"><br /></span></span></div>Ecco lo schema di collegamento (è comune agli attiny44 e 84):<div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/a/AVvXsEj7al8xtXgMgYbmFX6wCPmkXXRsBS9Xv9i8PlL-yT0HQleofqh7cWTwrVxjRrQa0gGYG6DFpZCrhLr7f-Gv-xkLx4rKmbVjmVQvU5k61XJSIbs2sFfKr48X1d8wIO5F3GKaR-QWx6D4eTZERACiWLKtfZRzKL5S8yZSO02jbPUMeqD5wC0ih2Mq2for=s774" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="732" data-original-width="774" height="379" src="https://blogger.googleusercontent.com/img/a/AVvXsEj7al8xtXgMgYbmFX6wCPmkXXRsBS9Xv9i8PlL-yT0HQleofqh7cWTwrVxjRrQa0gGYG6DFpZCrhLr7f-Gv-xkLx4rKmbVjmVQvU5k61XJSIbs2sFfKr48X1d8wIO5F3GKaR-QWx6D4eTZERACiWLKtfZRzKL5S8yZSO02jbPUMeqD5wC0ih2Mq2for=w400-h379" width="400" /></a></div><br /><div>link utili:</div><div><a href="http://ww1.microchip.com/downloads/en/devicedoc/Atmel-7701_Automotive-Microcontrollers-ATtiny24-44-84_Datasheet.pdf">datasheet attinyx4</a><br /><div><br /></div><div><br /></div><div>Questo è tutto,<br />per qualsiasi domanda lascia pure un commento.<br /><br /><br />Seguimi sulle mie pagine per rimanere sempre aggiornato sui nuovi post!</div></div>Danielehttp://www.blogger.com/profile/09720964861202313121noreply@blogger.com0tag:blogger.com,1999:blog-390453114990638376.post-40590744967252319422021-11-10T13:02:00.004+01:002021-11-10T13:02:36.413+01:00 Programmare un Attiny24/44/84 con Arduino<p> Ciao!</p><p>in questo post vedremo come programmare un Attinyx4 (24, 44, 84) utilizzando Arduino come programmatore.</p><div class="separator" style="clear: both; text-align: center;"><a href="https://1.bp.blogspot.com/-75SQjPcR_aw/YYuvOL28gnI/AAAAAAAAILg/fUmFQUod8gExTe8XqcO8eH0EXbWowdmmQCLcBGAsYHQ/s1753/42ce414ad4c682e13b7ec1e85729e07f.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="1240" data-original-width="1753" height="452" src="https://1.bp.blogspot.com/-75SQjPcR_aw/YYuvOL28gnI/AAAAAAAAILg/fUmFQUod8gExTe8XqcO8eH0EXbWowdmmQCLcBGAsYHQ/w640-h452/42ce414ad4c682e13b7ec1e85729e07f.png" width="640" /></a></div><div><br /></div><div style="text-align: center;"><i>image credits: <a href="https://www.pinterest.it/pighixxx/_saved/">Alberto Piganti</a></i></div><br /><span><a name='more'></a></span><p><br /></p><p>Per prima cosa, se non l'avete già fatto, dovete installare nel vostro IDE Arduino il supporto completo ai microcontrollori della serie ATTiny</p><p>Dopo aver <a href="https://www.danielealberti.it/2019/05/lista-di-url-aggiuntive-per-il-gestore.html">aggiunto l'URL per il gestore schede</a> installate il pacchetto "ATTinyCore by Spence Konde".</p><p><br /></p><p>Prendete ora il vostro Arduino (non collegato a nulla) e caricate l'esempio "ArduinoISP".</p><p><br /></p><p>Collegate poi l'Arduino all'ATTiny in questo modo:<br /><br /></p><div class="separator" style="clear: both; text-align: center;"><a href="https://1.bp.blogspot.com/-WqfNKWB7BG4/YVhuM_QR_9I/AAAAAAAAIH8/GDXI1yNy7ow5JNZX6W6ZNT1Hf3c-Oan1QCLcBGAsYHQ/s1335/attiny84_bb.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="1335" data-original-width="876" height="640" src="https://1.bp.blogspot.com/-WqfNKWB7BG4/YVhuM_QR_9I/AAAAAAAAIH8/GDXI1yNy7ow5JNZX6W6ZNT1Hf3c-Oan1QCLcBGAsYHQ/w420-h640/attiny84_bb.png" width="420" /></a></div><p>Dal menu "strumenti" selezionate la scheda "ATTinyCore" -> "ATtiny24/44/84.......",</p><p>poi selezionate il Chip, il clock (1MHz internal se volete ridurre al minimo il consumo) e la porta.</p><p>Come programmatore impostate "Arduino as ISP".</p><p>Se necessario scrivete il bootloader (sempre menu strumenti)</p><p><br /></p><p>Ora il vostro ATTiny è pronto per essere programmato, lasciatelo collegato in questo modo per caricare il vostri sketch.</p><p><br /></p><p>Questo è tutto,<br />per qualsiasi domanda lascia pure un commento.</p><p><br />Seguimi sulle mie pagine per rimanere sempre aggiornato sui nuovi post!</p>Danielehttp://www.blogger.com/profile/09720964861202313121noreply@blogger.com0tag:blogger.com,1999:blog-390453114990638376.post-63308893913124323652021-10-28T23:10:00.003+02:002021-11-10T13:01:33.861+01:00Halloween con Arduino<p>Ciao!</p><p>Halloween è vicino!</p><p> </p><p></p><div class="separator" style="clear: both; text-align: center;"><a href="https://1.bp.blogspot.com/-eDmS6FaNLcE/YXqAKfYNy-I/AAAAAAAAIKU/a_co6FlL3yg0MlkciZcnyV6N14WqRpDcACLcBGAsYHQ/s721/721px-Halloween_Jack-o%2527-lantern.jpg" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="599" data-original-width="721" height="532" src="https://1.bp.blogspot.com/-eDmS6FaNLcE/YXqAKfYNy-I/AAAAAAAAIKU/a_co6FlL3yg0MlkciZcnyV6N14WqRpDcACLcBGAsYHQ/w640-h532/721px-Halloween_Jack-o%2527-lantern.jpg" width="640" /></a></div><i></i><p></p><p style="text-align: center;"> <i><a href=" https://commons.wikimedia.org/wiki/File:Halloween_Jack-o%27-lantern.jpg">credits: Toby Ord, CC BY-SA 2.5</a></i></p><p style="text-align: center;"><i> </i><span></span></p><a name='more'></a><p></p><p><br /></p><p>In questo post vedremo come illuminare una zucca grazie ad un led ed a Arduino.</p><p>Per rendere più realistico il risultato, il led non verrà solamente acceso, ma verrà modulato in modo da simulare l'effetto di una fiamma di una candela reale.</p><p>Per emulare l'effetto ottico ho utilizzato uno sketch trovato sul forum di Arduino (fonte in fondo al post) al quale ho apportato qualche modifica, eccolo:<br /></p><p><br /></p><div><span style="font-family: Consolas, Menlo, Monaco, Lucida Console, Liberation Mono, DejaVu Sans Mono, Bitstream Vera Sans Mono, monospace, serif;"><span style="font-size: 12px; white-space: pre-wrap;"><br /></span></span></div><div><ol class="arduino" style="background: rgb(255, 255, 255); box-sizing: border-box; color: #333333; font-family: Consolas, Menlo, Monaco, "Lucida Console", "Liberation Mono", "DejaVu Sans Mono", "Bitstream Vera Sans Mono", monospace, serif; font-size: 12px; margin: 0px; padding: 0px 10px; vertical-align: baseline;"><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"><span class="co2" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">#define pinLedCandle 6</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> </div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"><span class="kw4" style="box-sizing: border-box; color: #993333; margin: 0px; padding: 0px; vertical-align: baseline;">byte</span> Flicker_table<span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">[</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">]</span> <span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">=</span> <span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">{</span> <span class="nu0" style="box-sizing: border-box; color: #0000dd; margin: 0px; padding: 0px; vertical-align: baseline;">10</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span> <span class="nu0" style="box-sizing: border-box; color: #0000dd; margin: 0px; padding: 0px; vertical-align: baseline;">10</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span> <span class="nu0" style="box-sizing: border-box; color: #0000dd; margin: 0px; padding: 0px; vertical-align: baseline;">20</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span> <span class="nu0" style="box-sizing: border-box; color: #0000dd; margin: 0px; padding: 0px; vertical-align: baseline;">30</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span> <span class="nu0" style="box-sizing: border-box; color: #0000dd; margin: 0px; padding: 0px; vertical-align: baseline;">30</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span> <span class="nu0" style="box-sizing: border-box; color: #0000dd; margin: 0px; padding: 0px; vertical-align: baseline;">30</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span> <span class="nu0" style="box-sizing: border-box; color: #0000dd; margin: 0px; padding: 0px; vertical-align: baseline;">40</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span> <span class="nu0" style="box-sizing: border-box; color: #0000dd; margin: 0px; padding: 0px; vertical-align: baseline;">50</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span> <span class="nu0" style="box-sizing: border-box; color: #0000dd; margin: 0px; padding: 0px; vertical-align: baseline;">60</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span> <span class="nu0" style="box-sizing: border-box; color: #0000dd; margin: 0px; padding: 0px; vertical-align: baseline;">70</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span> <span class="nu0" style="box-sizing: border-box; color: #0000dd; margin: 0px; padding: 0px; vertical-align: baseline;">80</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span> <span class="nu0" style="box-sizing: border-box; color: #0000dd; margin: 0px; padding: 0px; vertical-align: baseline;">70</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span> <span class="nu0" style="box-sizing: border-box; color: #0000dd; margin: 0px; padding: 0px; vertical-align: baseline;">70</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="nu0" style="box-sizing: border-box; color: #0000dd; margin: 0px; padding: 0px; vertical-align: baseline;">60</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span> <span class="nu0" style="box-sizing: border-box; color: #0000dd; margin: 0px; padding: 0px; vertical-align: baseline;">60</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span> <span class="nu0" style="box-sizing: border-box; color: #0000dd; margin: 0px; padding: 0px; vertical-align: baseline;">50</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span> <span class="nu0" style="box-sizing: border-box; color: #0000dd; margin: 0px; padding: 0px; vertical-align: baseline;">50</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span> <span class="nu0" style="box-sizing: border-box; color: #0000dd; margin: 0px; padding: 0px; vertical-align: baseline;">50</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span> <span class="nu0" style="box-sizing: border-box; color: #0000dd; margin: 0px; padding: 0px; vertical-align: baseline;">60</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span> <span class="nu0" style="box-sizing: border-box; color: #0000dd; margin: 0px; padding: 0px; vertical-align: baseline;">70</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span> <span class="nu0" style="box-sizing: border-box; color: #0000dd; margin: 0px; padding: 0px; vertical-align: baseline;">80</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span> <span class="nu0" style="box-sizing: border-box; color: #0000dd; margin: 0px; padding: 0px; vertical-align: baseline;">90</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span> <span class="nu0" style="box-sizing: border-box; color: #0000dd; margin: 0px; padding: 0px; vertical-align: baseline;">100</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="nu0" style="box-sizing: border-box; color: #0000dd; margin: 0px; padding: 0px; vertical-align: baseline;">120</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span> <span class="nu0" style="box-sizing: border-box; color: #0000dd; margin: 0px; padding: 0px; vertical-align: baseline;">140</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span> <span class="nu0" style="box-sizing: border-box; color: #0000dd; margin: 0px; padding: 0px; vertical-align: baseline;">160</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span> <span class="nu0" style="box-sizing: border-box; color: #0000dd; margin: 0px; padding: 0px; vertical-align: baseline;">240</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span> <span class="nu0" style="box-sizing: border-box; color: #0000dd; margin: 0px; padding: 0px; vertical-align: baseline;">250</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span> <span class="nu0" style="box-sizing: border-box; color: #0000dd; margin: 0px; padding: 0px; vertical-align: baseline;">100</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span> <span class="nu0" style="box-sizing: border-box; color: #0000dd; margin: 0px; padding: 0px; vertical-align: baseline;">150</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span> <span class="nu0" style="box-sizing: border-box; color: #0000dd; margin: 0px; padding: 0px; vertical-align: baseline;">250</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span> <span class="nu0" style="box-sizing: border-box; color: #0000dd; margin: 0px; padding: 0px; vertical-align: baseline;">250</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span> <span class="nu0" style="box-sizing: border-box; color: #0000dd; margin: 0px; padding: 0px; vertical-align: baseline;">140</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="nu0" style="box-sizing: border-box; color: #0000dd; margin: 0px; padding: 0px; vertical-align: baseline;">240</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span> <span class="nu0" style="box-sizing: border-box; color: #0000dd; margin: 0px; padding: 0px; vertical-align: baseline;">230</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span> <span class="nu0" style="box-sizing: border-box; color: #0000dd; margin: 0px; padding: 0px; vertical-align: baseline;">220</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span> <span class="nu0" style="box-sizing: border-box; color: #0000dd; margin: 0px; padding: 0px; vertical-align: baseline;">100</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span> <span class="nu0" style="box-sizing: border-box; color: #0000dd; margin: 0px; padding: 0px; vertical-align: baseline;">80</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span> <span class="nu0" style="box-sizing: border-box; color: #0000dd; margin: 0px; padding: 0px; vertical-align: baseline;">70</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span> <span class="nu0" style="box-sizing: border-box; color: #0000dd; margin: 0px; padding: 0px; vertical-align: baseline;">70</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span> <span class="nu0" style="box-sizing: border-box; color: #0000dd; margin: 0px; padding: 0px; vertical-align: baseline;">70</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span> <span class="nu0" style="box-sizing: border-box; color: #0000dd; margin: 0px; padding: 0px; vertical-align: baseline;">80</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span> <span class="nu0" style="box-sizing: border-box; color: #0000dd; margin: 0px; padding: 0px; vertical-align: baseline;">80</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="nu0" style="box-sizing: border-box; color: #0000dd; margin: 0px; padding: 0px; vertical-align: baseline;">140</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span> <span class="nu0" style="box-sizing: border-box; color: #0000dd; margin: 0px; padding: 0px; vertical-align: baseline;">130</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span> <span class="nu0" style="box-sizing: border-box; color: #0000dd; margin: 0px; padding: 0px; vertical-align: baseline;">120</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span> <span class="nu0" style="box-sizing: border-box; color: #0000dd; margin: 0px; padding: 0px; vertical-align: baseline;">110</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span> <span class="nu0" style="box-sizing: border-box; color: #0000dd; margin: 0px; padding: 0px; vertical-align: baseline;">200</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span> <span class="nu0" style="box-sizing: border-box; color: #0000dd; margin: 0px; padding: 0px; vertical-align: baseline;">210</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span> <span class="nu0" style="box-sizing: border-box; color: #0000dd; margin: 0px; padding: 0px; vertical-align: baseline;">220</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span> <span class="nu0" style="box-sizing: border-box; color: #0000dd; margin: 0px; padding: 0px; vertical-align: baseline;">220</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span> <span class="nu0" style="box-sizing: border-box; color: #0000dd; margin: 0px; padding: 0px; vertical-align: baseline;">100</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span> <span class="nu0" style="box-sizing: border-box; color: #0000dd; margin: 0px; padding: 0px; vertical-align: baseline;">90</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="nu0" style="box-sizing: border-box; color: #0000dd; margin: 0px; padding: 0px; vertical-align: baseline;">40</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span> <span class="nu0" style="box-sizing: border-box; color: #0000dd; margin: 0px; padding: 0px; vertical-align: baseline;">30</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span> <span class="nu0" style="box-sizing: border-box; color: #0000dd; margin: 0px; padding: 0px; vertical-align: baseline;">30</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span> <span class="nu0" style="box-sizing: border-box; color: #0000dd; margin: 0px; padding: 0px; vertical-align: baseline;">30</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span> <span class="nu0" style="box-sizing: border-box; color: #0000dd; margin: 0px; padding: 0px; vertical-align: baseline;">20</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span> <span class="nu0" style="box-sizing: border-box; color: #0000dd; margin: 0px; padding: 0px; vertical-align: baseline;">10</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span> <span class="nu0" style="box-sizing: border-box; color: #0000dd; margin: 0px; padding: 0px; vertical-align: baseline;">10</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span> <span class="nu0" style="box-sizing: border-box; color: #0000dd; margin: 0px; padding: 0px; vertical-align: baseline;">20</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span> <span class="nu0" style="box-sizing: border-box; color: #0000dd; margin: 0px; padding: 0px; vertical-align: baseline;">30</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span> <span class="nu0" style="box-sizing: border-box; color: #0000dd; margin: 0px; padding: 0px; vertical-align: baseline;">30</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span> <span class="nu0" style="box-sizing: border-box; color: #0000dd; margin: 0px; padding: 0px; vertical-align: baseline;">30</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span> <span class="nu0" style="box-sizing: border-box; color: #0000dd; margin: 0px; padding: 0px; vertical-align: baseline;">40</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span> <span class="nu0" style="box-sizing: border-box; color: #0000dd; margin: 0px; padding: 0px; vertical-align: baseline;">50</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span> </div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="nu0" style="box-sizing: border-box; color: #0000dd; margin: 0px; padding: 0px; vertical-align: baseline;">60</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span> <span class="nu0" style="box-sizing: border-box; color: #0000dd; margin: 0px; padding: 0px; vertical-align: baseline;">70</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span> <span class="nu0" style="box-sizing: border-box; color: #0000dd; margin: 0px; padding: 0px; vertical-align: baseline;">80</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span> <span class="nu0" style="box-sizing: border-box; color: #0000dd; margin: 0px; padding: 0px; vertical-align: baseline;">110</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span> <span class="nu0" style="box-sizing: border-box; color: #0000dd; margin: 0px; padding: 0px; vertical-align: baseline;">80</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span> <span class="nu0" style="box-sizing: border-box; color: #0000dd; margin: 0px; padding: 0px; vertical-align: baseline;">70</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span> <span class="nu0" style="box-sizing: border-box; color: #0000dd; margin: 0px; padding: 0px; vertical-align: baseline;">70</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span> <span class="nu0" style="box-sizing: border-box; color: #0000dd; margin: 0px; padding: 0px; vertical-align: baseline;">60</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span> <span class="nu0" style="box-sizing: border-box; color: #0000dd; margin: 0px; padding: 0px; vertical-align: baseline;">60</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span> <span class="nu0" style="box-sizing: border-box; color: #0000dd; margin: 0px; padding: 0px; vertical-align: baseline;">50</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span> <span class="nu0" style="box-sizing: border-box; color: #0000dd; margin: 0px; padding: 0px; vertical-align: baseline;">50</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">}</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> </div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"><span class="kw4" style="box-sizing: border-box; color: #993333; margin: 0px; padding: 0px; vertical-align: baseline;">int</span> count <span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">=</span> <span class="nu0" style="box-sizing: border-box; color: #0000dd; margin: 0px; padding: 0px; vertical-align: baseline;">0</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> </div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"><span class="kw4" style="box-sizing: border-box; color: #993333; margin: 0px; padding: 0px; vertical-align: baseline;">void</span> setup<span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span> <span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">{</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="kw3" style="box-sizing: border-box; color: #000066; margin: 0px; padding: 0px; vertical-align: baseline;">pinMode</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span>pinLedCandle<span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span> <span class="kw2" style="box-sizing: border-box; font-weight: bold; margin: 0px; padding: 0px; vertical-align: baseline;">OUTPUT</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span> <span class="co1" style="box-sizing: border-box; color: #666666; font-style: italic; margin: 0px; padding: 0px; vertical-align: baseline;">// declare Wind led as output</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">}</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> </div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"><span class="kw4" style="box-sizing: border-box; color: #993333; margin: 0px; padding: 0px; vertical-align: baseline;">void</span> loop<span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span> <span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">{</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> </div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="kw1" style="box-sizing: border-box; color: #b1b100; margin: 0px; padding: 0px; vertical-align: baseline;">for</span> <span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span> <span class="kw4" style="box-sizing: border-box; color: #993333; margin: 0px; padding: 0px; vertical-align: baseline;">int</span> i <span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">=</span> <span class="nu0" style="box-sizing: border-box; color: #0000dd; margin: 0px; padding: 0px; vertical-align: baseline;">0</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span> i <span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;"><=</span> <span class="kw3" style="box-sizing: border-box; color: #000066; margin: 0px; padding: 0px; vertical-align: baseline;">sizeof</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span>Flicker_table<span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span> i<span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">++</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span> <span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">{</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="kw3" style="box-sizing: border-box; color: #000066; margin: 0px; padding: 0px; vertical-align: baseline;">analogWrite</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span>pinLedCandle<span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span> Flicker_table<span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">[</span>count<span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">]</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> count<span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">++;</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="kw1" style="box-sizing: border-box; color: #b1b100; margin: 0px; padding: 0px; vertical-align: baseline;">if</span> <span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span>count <span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">></span> <span class="kw3" style="box-sizing: border-box; color: #000066; margin: 0px; padding: 0px; vertical-align: baseline;">sizeof</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span>Flicker_table<span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span> <span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span> <span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">{</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> count <span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">=</span> <span class="nu0" style="box-sizing: border-box; color: #0000dd; margin: 0px; padding: 0px; vertical-align: baseline;">0</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">}</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="kw3" style="box-sizing: border-box; color: #000066; margin: 0px; padding: 0px; vertical-align: baseline;">delay</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span><span class="nu0" style="box-sizing: border-box; color: #0000dd; margin: 0px; padding: 0px; vertical-align: baseline;">40</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">}</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">}</span></div></li></ol></div><div><span style="color: #009900; font-family: Consolas, Menlo, Monaco, Lucida Console, Liberation Mono, DejaVu Sans Mono, Bitstream Vera Sans Mono, monospace, serif;"><span style="font-size: 12px; white-space: pre-wrap;"><br /></span></span></div><br /><br />Ecco il semplicissimo schema di collegamento, è sufficiente un led ed una resistenza.<div>Vi consiglio un led ad alta luminosità. Generalmente questi led hanno una caduta di circa 3V e 10mA di corrente, una resistenza da 180/220 ohm dovrebbe essere adatta.</div><div><br /></div><div><a href="https://www.digikey.com/en/resources/conversion-calculators/conversion-calculator-led-series-resistor">Qui un pratico calcolatore</a> per eventuali dubbi. Ricordatevi che la massima corrente per singolo pin è di 40mA.</div><div><br /></div><div><br /></div><div><a href="https://1.bp.blogspot.com/-7Xh94HO3FG0/YXsKKaDH86I/AAAAAAAAIKc/kI5MwBhSZG4cJ8UlkJM5ilbY5ZoFOVtCQCLcBGAsYHQ/s627/Halloween_bb.png" style="margin-left: 1em; margin-right: 1em; text-align: center;"><img border="0" data-original-height="627" data-original-width="438" height="640" src="https://1.bp.blogspot.com/-7Xh94HO3FG0/YXsKKaDH86I/AAAAAAAAIKc/kI5MwBhSZG4cJ8UlkJM5ilbY5ZoFOVtCQCLcBGAsYHQ/w448-h640/Halloween_bb.png" width="448" /></a></div><div><br /></div><div>Per alimentare il tutto in modo semplice potete collegare un piccolo powerbank alla porta usb.</div><div><br /></div><div>Ed ecco un breve video con il risultato finale, carino no?</div><div><br /><div><span style="color: #009900; font-family: Consolas, Menlo, Monaco, Lucida Console, Liberation Mono, DejaVu Sans Mono, Bitstream Vera Sans Mono, monospace, serif;"><span style="font-size: 12px; white-space: pre-wrap;"><br /></span></span></div><div><span style="color: #009900; font-family: Consolas, Menlo, Monaco, Lucida Console, Liberation Mono, DejaVu Sans Mono, Bitstream Vera Sans Mono, monospace, serif;"><div class="separator" style="clear: both; text-align: center;"><iframe allowfullscreen="" class="YOUTUBE-iframe-video" height="266" src="https://www.youtube.com/embed/bi6OZ-MjQDQ" width="320" youtube-src-id="bi6OZ-MjQDQ"></iframe></div><br /><span style="font-size: 12px; white-space: pre-wrap;"><br /></span></span></div><br /><br />fonti:<br /><a href="https://forum.arduino.cc/t/candle-led-with-simulated-flicker/7169">sketch da forum Arduino</a></div><div><br /></div><div><p>Questo è tutto,<br />per qualsiasi domanda lascia pure un commento.</p><p><br />Seguimi sulle mie pagine per rimanere sempre aggiornato sui nuovi post!</p></div>Danielehttp://www.blogger.com/profile/09720964861202313121noreply@blogger.com0tag:blogger.com,1999:blog-390453114990638376.post-44565201160701545872021-10-05T22:03:00.003+02:002021-10-05T22:03:36.116+02:00PCBWay<div class="separator" style="clear: both; text-align: justify;"><span style="text-align: left;">Ciao!</span></div><div class="separator" style="clear: both; text-align: left;">oggi vi parlerò di <a href="https://www.pcbway.com/">PCBWay</a>, servizio di realizzazione PCB e molto altro (assemblaggio schede, stampa 3D, CNC, etc) </div><div class="separator" style="clear: both; text-align: left;"><br /></div><div class="separator" style="clear: both; text-align: center;"><a href="https://1.bp.blogspot.com/-eKaOIJqMA_8/YVth-HPhktI/AAAAAAAAII4/74IwTUzEtFcjZ1qHKQGI-vyu23tWwznswCLcBGAsYHQ/s1200/whyus_gif.gif" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="600" data-original-width="1200" height="320" src="https://1.bp.blogspot.com/-eKaOIJqMA_8/YVth-HPhktI/AAAAAAAAII4/74IwTUzEtFcjZ1qHKQGI-vyu23tWwznswCLcBGAsYHQ/w640-h320/whyus_gif.gif" width="640" /></a></div><br /><span><a name='more'></a></span><div class="separator" style="clear: both; text-align: left;"><br /></div><div class="separator" style="clear: both; text-align: left;">Il servizio di realizzazione PCB è in <a href="https://www.pcbway.com/?from=danielealberti.it">offerta a 5$ per 10 pezzi</a>, i circuiti arrivano ben imballati, e sono arrivati addirittura in confezione sotto vuoto. I costi di spedizione variano molto in base ai tempi, dai circa 20 euro di DHL ai pochi euro della spedizione economica.</div><div class="separator" style="clear: both; text-align: center;"><br /></div><div class="separator" style="clear: both; text-align: center;"><a href="https://1.bp.blogspot.com/-SM4NELgJ-10/YVte4-9OzII/AAAAAAAAIIo/e1AyJifZa5UOLQB8kxHl4Cz1ZHzK2E6lwCPcBGAsYHg/s2592/PXL_20211004_190037676.jpg" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="2592" data-original-width="1944" height="640" src="https://1.bp.blogspot.com/-SM4NELgJ-10/YVte4-9OzII/AAAAAAAAIIo/e1AyJifZa5UOLQB8kxHl4Cz1ZHzK2E6lwCPcBGAsYHg/w480-h640/PXL_20211004_190037676.jpg" width="480" /></a></div><div><br /></div><div>Gli stampati sono realizzati in maniera impeccabile, quelli che ho ordinato erano abbastanza semplici e direi che sono perfetti, non ho notato nessun difetto. </div><div>Per circuiti particolarmente complessi e critici è possibile tuttavia optare per il servizio <a href="https://www.pcbway.com/high-quality-pcb.html">advanced pcb</a>.</div><div><br /></div><div>Allo stesso prezzo è stato possibile anche scegliere un solder mask tra i molti colori disponibili, io ho optato per il bianco, a differenza del classico verde.</div><br /><div class="separator" style="clear: both; text-align: center;"><a href="https://1.bp.blogspot.com/-IQ3yPm4w-P4/YVte40npT9I/AAAAAAAAIIo/mdLMcopYHZ8K7JPDoGxu8u9pnIPt8jhCQCPcBGAsYHg/s2592/PXL_20211004_195618238.jpg" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="1944" data-original-width="2592" height="480" src="https://1.bp.blogspot.com/-IQ3yPm4w-P4/YVte40npT9I/AAAAAAAAIIo/mdLMcopYHZ8K7JPDoGxu8u9pnIPt8jhCQCPcBGAsYHg/w640-h480/PXL_20211004_195618238.jpg" width="640" /></a></div><div><br /></div><div><br /></div><div>Una cosa a cui prestare particolarmente attenzione è il caricamento dei file Gerber per la realizzazione del PCB.</div><div>Io per la progettazione ho utilizzato Eagle, non è stato possibile utilizzare direttamente il file .brd del circuito, ma ho dovuto fornire i file gerber.</div><div>Fortunatamente è presente una guida di PCBWay che spiega come <a href="https://www.pcbway.com/helpcenter/technical_support/Notes_for_Gerber_files_Generated_from_Eagle_9_20.html">generare i file gerber in Eagle</a> (qui la guida per le <a href="https://www.pcbway.com/helpcenter/technical_support/Generate_Gerber_files_in_Eagle.html">versioni precedenti alla 9.2.0</a>).</div><div>Il consiglio è quello di scaricare direttamente i file CAM indicati verso la fine dalla guida linkata sopra.</div><p><br /></p><p>Una particolarità che ho trovato molto interessante di PCBWay è la <a href="https://www.pcbway.com/project/">community</a>, permette di ordinare rapidamente pcb realizzati da altri utenti, molto bello direi!<br /><br /><br /><br />Questo è tutto,<br />per qualsiasi domanda lascia pure un commento.</p><p><br />Seguimi sulle mie pagine per rimanere sempre aggiornato sui nuovi post!<br /></p><span><!--more--></span>Danielehttp://www.blogger.com/profile/09720964861202313121noreply@blogger.com0tag:blogger.com,1999:blog-390453114990638376.post-9098228555617467442021-09-12T16:09:00.001+02:002021-10-09T14:48:05.559+02:00Pilotare molti led con pochi pin di Arduino<p>Ciao!</p><p>oggi vi parlo di un trucchetto molto utile nel caso necessitiate di controllare molti led con pochi pin a disposizione.</p><div class="separator" style="clear: both; text-align: center;"><a href="https://1.bp.blogspot.com/-Vf0D-6tFaxE/YT37aSN0TBI/AAAAAAAAIHE/W5RhOP9RU6kL9N8cmx3epk9uBdAF3CnfACLcBGAsYHQ/s1023/7511177640_86e8dd3f9b_b.jpg" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="682" data-original-width="1023" height="426" src="https://1.bp.blogspot.com/-Vf0D-6tFaxE/YT37aSN0TBI/AAAAAAAAIHE/W5RhOP9RU6kL9N8cmx3epk9uBdAF3CnfACLcBGAsYHQ/w640-h426/7511177640_86e8dd3f9b_b.jpg" width="640" /></a></div><i><div style="text-align: center;"><i><a href="https://www.flickr.com/photos/jpcolasso/7511177640/">photo by Juan Pablo Colasso</a> (license <a href="https://creativecommons.org/licenses/by-nd/2.0/">CC BY-ND 2.0</a>)</i></div></i><br /><span><a name='more'></a></span><p>Il metodo, che si chiama <a href="https://en.wikipedia.org/wiki/Charlieplexing">Charlieplexing</a>, sfrutta la possibilità dei pin dei microcontrollori di assumere 3 stati logici: high, low e input.</p><p>Infatti solitamente per pilotare un led si imposta il pin come output <i>(pinMode(pin,OUTPUT) </i>e poi si porta a livello alto o basso per accendere o spegnere il led<i> (digitalWrite (pin, HIGH).</i></p><p>Ma esiste una terza possibilità, settare il pin come input<i> (pinMode(pin, INPUT). </i>Questo porta il pin nella modalità ad alta impedenza, risultando come se fosse scollegato dal led (o quasi)</p><p>Questo è un circuito sul quale è applicato questo metodo:</p><div class="separator" style="clear: both; text-align: center;"><a href="https://1.bp.blogspot.com/-7cI118zhVJI/YTiv-_De5kI/AAAAAAAAIGo/LJIuQItK65M6iQ1MzuEIVz9yVjuWg7-AwCLcBGAsYHQ/s1536/charlie.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="695" data-original-width="1536" height="290" src="https://1.bp.blogspot.com/-7cI118zhVJI/YTiv-_De5kI/AAAAAAAAIGo/LJIuQItK65M6iQ1MzuEIVz9yVjuWg7-AwCLcBGAsYHQ/w640-h290/charlie.png" width="640" /></a></div><div><br /></div>Come potete vedere tra ogni coppia di pin sono stati montati 2 del in antiparallelo, quindi con anodo e catodo opposti.<div>con soli 4 pin è possibile pilotare 12 led, numero che può crescere esponenzialmente aumentando i pin utilizzati.</div><div><br /></div><div>Il cicuito che ho realizzato sopra è realizzato con Tinkercad, a <a href="https://www.tinkercad.com/things/kTjUJJvQozP">questo link</a> è possibile testarne il funzionamento (è già caricato anche il firmware).</div><div>Per completezza allego il codice anche qui sotto:</div><div><br /></div><div><ol class="arduino" style="background: rgb(255, 255, 255); box-sizing: border-box; color: #333333; font-family: Consolas, Menlo, Monaco, "Lucida Console", "Liberation Mono", "DejaVu Sans Mono", "Bitstream Vera Sans Mono", monospace, serif; font-size: 12px; margin: 0px; padding: 0px 10px; vertical-align: baseline;"><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px 20px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"><span class="co2" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">#define PIN_A 2</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px 20px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"><span class="co2" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">#define PIN_B 3</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px 20px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"><span class="co2" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">#define PIN_C 4</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px 20px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: ainitial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"><span class="co2" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">#define PIN_D 5</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px 20px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> </div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px 20px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"><span class="kw4" style="box-sizing: border-box; color: #993333; margin: 0px; padding: 0px; vertical-align: baseline;">void</span> setup<span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px 20px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">{</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px 20px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">}</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px 20px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> </div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px 20px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"><span class="kw4" style="box-sizing: border-box; color: #993333; margin: 0px; padding: 0px; vertical-align: baseline;">void</span> loop<span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px 20px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">{</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px 20px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="kw1" style="box-sizing: border-box; color: #b1b100; margin: 0px; padding: 0px; vertical-align: baseline;">for</span> <span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span><span class="kw4" style="box-sizing: border-box; color: #993333; margin: 0px; padding: 0px; vertical-align: baseline;">int</span> i<span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">=</span><span class="nu0" style="box-sizing: border-box; color: #0000dd; margin: 0px; padding: 0px; vertical-align: baseline;">0</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span> i<span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;"><</span><span class="nu0" style="box-sizing: border-box; color: #0000dd; margin: 0px; padding: 0px; vertical-align: baseline;">13</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span> i<span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">++</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px 20px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">{</span> </div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px 20px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> ledOn<span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span>i<span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px 20px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="kw3" style="box-sizing: border-box; color: #000066; margin: 0px; padding: 0px; vertical-align: baseline;">delay</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span><span class="nu0" style="box-sizing: border-box; color: #0000dd; margin: 0px; padding: 0px; vertical-align: baseline;">10</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px 20px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">}</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px 20px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">}</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px 20px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> </div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px 20px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"><span class="kw4" style="box-sizing: border-box; color: #993333; margin: 0px; padding: 0px; vertical-align: baseline;">void</span> ledOn<span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span><span class="kw4" style="box-sizing: border-box; color: #993333; margin: 0px; padding: 0px; vertical-align: baseline;">int</span> num<span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px 20px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">{</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px 20px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="kw1" style="box-sizing: border-box; color: #b1b100; margin: 0px; padding: 0px; vertical-align: baseline;">switch</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span>num<span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px 20px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">{</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px 20px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="kw1" style="box-sizing: border-box; color: #b1b100; margin: 0px; padding: 0px; vertical-align: baseline;">case</span> <span class="nu0" style="box-sizing: border-box; color: #0000dd; margin: 0px; padding: 0px; vertical-align: baseline;">0</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">:</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px 20px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="kw3" style="box-sizing: border-box; color: #000066; margin: 0px; padding: 0px; vertical-align: baseline;">pinMode</span> <span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span>PIN_A<span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span> <span class="kw2" style="box-sizing: border-box; font-weight: bold; margin: 0px; padding: 0px; vertical-align: baseline;">INPUT</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px 20px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="kw3" style="box-sizing: border-box; color: #000066; margin: 0px; padding: 0px; vertical-align: baseline;">pinMode</span> <span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span>PIN_B<span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span> <span class="kw2" style="box-sizing: border-box; font-weight: bold; margin: 0px; padding: 0px; vertical-align: baseline;">INPUT</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px 20px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="kw3" style="box-sizing: border-box; color: #000066; margin: 0px; padding: 0px; vertical-align: baseline;">pinMode</span> <span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span>PIN_C<span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span> <span class="kw2" style="box-sizing: border-box; font-weight: bold; margin: 0px; padding: 0px; vertical-align: baseline;">INPUT</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px 20px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="kw3" style="box-sizing: border-box; color: #000066; margin: 0px; padding: 0px; vertical-align: baseline;">pinMode</span> <span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span>PIN_D<span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span> <span class="kw2" style="box-sizing: border-box; font-weight: bold; margin: 0px; padding: 0px; vertical-align: baseline;">INPUT</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px 20px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="kw3" style="box-sizing: border-box; color: #000066; margin: 0px; padding: 0px; vertical-align: baseline;">digitalWrite</span> <span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span>PIN_A<span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span> <span class="kw2" style="box-sizing: border-box; font-weight: bold; margin: 0px; padding: 0px; vertical-align: baseline;">LOW</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px 20px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="kw3" style="box-sizing: border-box; color: #000066; margin: 0px; padding: 0px; vertical-align: baseline;">digitalWrite</span> <span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span>PIN_B<span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span> <span class="kw2" style="box-sizing: border-box; font-weight: bold; margin: 0px; padding: 0px; vertical-align: baseline;">LOW</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px 20px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="kw3" style="box-sizing: border-box; color: #000066; margin: 0px; padding: 0px; vertical-align: baseline;">digitalWrite</span> <span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span>PIN_C<span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span> <span class="kw2" style="box-sizing: border-box; font-weight: bold; margin: 0px; padding: 0px; vertical-align: baseline;">LOW</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px 20px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="kw3" style="box-sizing: border-box; color: #000066; margin: 0px; padding: 0px; vertical-align: baseline;">digitalWrite</span> <span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span>PIN_D<span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span> <span class="kw2" style="box-sizing: border-box; font-weight: bold; margin: 0px; padding: 0px; vertical-align: baseline;">LOW</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px 20px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="kw2" style="box-sizing: border-box; font-weight: bold; margin: 0px; padding: 0px; vertical-align: baseline;">break</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px 20px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="kw1" style="box-sizing: border-box; color: #b1b100; margin: 0px; padding: 0px; vertical-align: baseline;">case</span> <span class="nu0" style="box-sizing: border-box; color: #0000dd; margin: 0px; padding: 0px; vertical-align: baseline;">1</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">:</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px 20px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="kw3" style="box-sizing: border-box; color: #000066; margin: 0px; padding: 0px; vertical-align: baseline;">pinMode</span> <span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span>PIN_A<span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span> <span class="kw2" style="box-sizing: border-box; font-weight: bold; margin: 0px; padding: 0px; vertical-align: baseline;">OUTPUT</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px 20px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="kw3" style="box-sizing: border-box; color: #000066; margin: 0px; padding: 0px; vertical-align: baseline;">pinMode</span> <span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span>PIN_B<span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span> <span class="kw2" style="box-sizing: border-box; font-weight: bold; margin: 0px; padding: 0px; vertical-align: baseline;">OUTPUT</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px 20px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="kw3" style="box-sizing: border-box; color: #000066; margin: 0px; padding: 0px; vertical-align: baseline;">pinMode</span> <span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span>PIN_C<span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span> <span class="kw2" style="box-sizing: border-box; font-weight: bold; margin: 0px; padding: 0px; vertical-align: baseline;">INPUT</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px 20px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="kw3" style="box-sizing: border-box; color: #000066; margin: 0px; padding: 0px; vertical-align: baseline;">pinMode</span> <span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span>PIN_D<span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span> <span class="kw2" style="box-sizing: border-box; font-weight: bold; margin: 0px; padding: 0px; vertical-align: baseline;">INPUT</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px 20px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="kw3" style="box-sizing: border-box; color: #000066; margin: 0px; padding: 0px; vertical-align: baseline;">digitalWrite</span> <span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span>PIN_A<span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span> <span class="kw2" style="box-sizing: border-box; font-weight: bold; margin: 0px; padding: 0px; vertical-align: baseline;">HIGH</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px 20px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="kw3" style="box-sizing: border-box; color: #000066; margin: 0px; padding: 0px; vertical-align: baseline;">digitalWrite</span> <span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span>PIN_B<span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span> <span class="kw2" style="box-sizing: border-box; font-weight: bold; margin: 0px; padding: 0px; vertical-align: baseline;">LOW</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px 20px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="kw3" style="box-sizing: border-box; color: #000066; margin: 0px; padding: 0px; vertical-align: baseline;">digitalWrite</span> <span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span>PIN_C<span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span> <span class="kw2" style="box-sizing: border-box; font-weight: bold; margin: 0px; padding: 0px; vertical-align: baseline;">LOW</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px 20px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="kw3" style="box-sizing: border-box; color: #000066; margin: 0px; padding: 0px; vertical-align: baseline;">digitalWrite</span> <span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span>PIN_D<span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span> <span class="kw2" style="box-sizing: border-box; font-weight: bold; margin: 0px; padding: 0px; vertical-align: baseline;">LOW</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px 20px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="kw2" style="box-sizing: border-box; font-weight: bold; margin: 0px; padding: 0px; vertical-align: baseline;">break</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px 20px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="kw1" style="box-sizing: border-box; color: #b1b100; margin: 0px; padding: 0px; vertical-align: baseline;">case</span> <span class="nu0" style="box-sizing: border-box; color: #0000dd; margin: 0px; padding: 0px; vertical-align: baseline;">2</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">:</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px 20px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="kw3" style="box-sizing: border-box; color: #000066; margin: 0px; padding: 0px; vertical-align: baseline;">pinMode</span> <span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span>PIN_A<span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span> <span class="kw2" style="box-sizing: border-box; font-weight: bold; margin: 0px; padding: 0px; vertical-align: baseline;">OUTPUT</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px 20px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="kw3" style="box-sizing: border-box; color: #000066; margin: 0px; padding: 0px; vertical-align: baseline;">pinMode</span> <span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span>PIN_B<span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span> <span class="kw2" style="box-sizing: border-box; font-weight: bold; margin: 0px; padding: 0px; vertical-align: baseline;">OUTPUT</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px 20px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="kw3" style="box-sizing: border-box; color: #000066; margin: 0px; padding: 0px; vertical-align: baseline;">pinMode</span> <span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span>PIN_C<span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span> <span class="kw2" style="box-sizing: border-box; font-weight: bold; margin: 0px; padding: 0px; vertical-align: baseline;">INPUT</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px 20px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="kw3" style="box-sizing: border-box; color: #000066; margin: 0px; padding: 0px; vertical-align: baseline;">pinMode</span> <span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span>PIN_D<span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span> <span class="kw2" style="box-sizing: border-box; font-weight: bold; margin: 0px; padding: 0px; vertical-align: baseline;">INPUT</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px 20px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="kw3" style="box-sizing: border-box; color: #000066; margin: 0px; padding: 0px; vertical-align: baseline;">digitalWrite</span> <span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span>PIN_A<span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span> <span class="kw2" style="box-sizing: border-box; font-weight: bold; margin: 0px; padding: 0px; vertical-align: baseline;">LOW</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px 20px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="kw3" style="box-sizing: border-box; color: #000066; margin: 0px; padding: 0px; vertical-align: baseline;">digitalWrite</span> <span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span>PIN_B<span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span> <span class="kw2" style="box-sizing: border-box; font-weight: bold; margin: 0px; padding: 0px; vertical-align: baseline;">HIGH</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px 20px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="kw3" style="box-sizing: border-box; color: #000066; margin: 0px; padding: 0px; vertical-align: baseline;">digitalWrite</span> <span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span>PIN_C<span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span> <span class="kw2" style="box-sizing: border-box; font-weight: bold; margin: 0px; padding: 0px; vertical-align: baseline;">LOW</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px 20px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="kw3" style="box-sizing: border-box; color: #000066; margin: 0px; padding: 0px; vertical-align: baseline;">digitalWrite</span> <span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span>PIN_D<span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span> <span class="kw2" style="box-sizing: border-box; font-weight: bold; margin: 0px; padding: 0px; vertical-align: baseline;">LOW</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px 20px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="kw2" style="box-sizing: border-box; font-weight: bold; margin: 0px; padding: 0px; vertical-align: baseline;">break</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span> </div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px 20px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="kw1" style="box-sizing: border-box; color: #b1b100; margin: 0px; padding: 0px; vertical-align: baseline;">case</span> <span class="nu0" style="box-sizing: border-box; color: #0000dd; margin: 0px; padding: 0px; vertical-align: baseline;">3</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">:</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px 20px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="kw3" style="box-sizing: border-box; color: #000066; margin: 0px; padding: 0px; vertical-align: baseline;">pinMode</span> <span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span>PIN_A<span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span> <span class="kw2" style="box-sizing: border-box; font-weight: bold; margin: 0px; padding: 0px; vertical-align: baseline;">INPUT</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px 20px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="kw3" style="box-sizing: border-box; color: #000066; margin: 0px; padding: 0px; vertical-align: baseline;">pinMode</span> <span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span>PIN_B<span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span> <span class="kw2" style="box-sizing: border-box; font-weight: bold; margin: 0px; padding: 0px; vertical-align: baseline;">OUTPUT</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px 20px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="kw3" style="box-sizing: border-box; color: #000066; margin: 0px; padding: 0px; vertical-align: baseline;">pinMode</span> <span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span>PIN_C<span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span> <span class="kw2" style="box-sizing: border-box; font-weight: bold; margin: 0px; padding: 0px; vertical-align: baseline;">OUTPUT</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px 20px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="kw3" style="box-sizing: border-box; color: #000066; margin: 0px; padding: 0px; vertical-align: baseline;">pinMode</span> <span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span>PIN_D<span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span> <span class="kw2" style="box-sizing: border-box; font-weight: bold; margin: 0px; padding: 0px; vertical-align: baseline;">INPUT</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px 20px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="kw3" style="box-sizing: border-box; color: #000066; margin: 0px; padding: 0px; vertical-align: baseline;">digitalWrite</span> <span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span>PIN_A<span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span> <span class="kw2" style="box-sizing: border-box; font-weight: bold; margin: 0px; padding: 0px; vertical-align: baseline;">LOW</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px 20px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="kw3" style="box-sizing: border-box; color: #000066; margin: 0px; padding: 0px; vertical-align: baseline;">digitalWrite</span> <span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span>PIN_B<span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span> <span class="kw2" style="box-sizing: border-box; font-weight: bold; margin: 0px; padding: 0px; vertical-align: baseline;">HIGH</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px 20px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="kw3" style="box-sizing: border-box; color: #000066; margin: 0px; padding: 0px; vertical-align: baseline;">digitalWrite</span> <span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span>PIN_C<span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span> <span class="kw2" style="box-sizing: border-box; font-weight: bold; margin: 0px; padding: 0px; vertical-align: baseline;">LOW</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px 20px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="kw3" style="box-sizing: border-box; color: #000066; margin: 0px; padding: 0px; vertical-align: baseline;">digitalWrite</span> <span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span>PIN_D<span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span> <span class="kw2" style="box-sizing: border-box; font-weight: bold; margin: 0px; padding: 0px; vertical-align: baseline;">LOW</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px 20px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="kw2" style="box-sizing: border-box; font-weight: bold; margin: 0px; padding: 0px; vertical-align: baseline;">break</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span> </div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px 20px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="kw1" style="box-sizing: border-box; color: #b1b100; margin: 0px; padding: 0px; vertical-align: baseline;">case</span> <span class="nu0" style="box-sizing: border-box; color: #0000dd; margin: 0px; padding: 0px; vertical-align: baseline;">4</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">:</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px 20px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="kw3" style="box-sizing: border-box; color: #000066; margin: 0px; padding: 0px; vertical-align: baseline;">pinMode</span> <span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span>PIN_A<span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span> <span class="kw2" style="box-sizing: border-box; font-weight: bold; margin: 0px; padding: 0px; vertical-align: baseline;">INPUT</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px 20px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="kw3" style="box-sizing: border-box; color: #000066; margin: 0px; padding: 0px; vertical-align: baseline;">pinMode</span> <span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span>PIN_B<span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span> <span class="kw2" style="box-sizing: border-box; font-weight: bold; margin: 0px; padding: 0px; vertical-align: baseline;">OUTPUT</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px 20px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="kw3" style="box-sizing: border-box; color: #000066; margin: 0px; padding: 0px; vertical-align: baseline;">pinMode</span> <span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span>PIN_C<span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span> <span class="kw2" style="box-sizing: border-box; font-weight: bold; margin: 0px; padding: 0px; vertical-align: baseline;">OUTPUT</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px 20px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="kw3" style="box-sizing: border-box; color: #000066; margin: 0px; padding: 0px; vertical-align: baseline;">pinMode</span> <span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span>PIN_D<span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span> <span class="kw2" style="box-sizing: border-box; font-weight: bold; margin: 0px; padding: 0px; vertical-align: baseline;">INPUT</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px 20px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="kw3" style="box-sizing: border-box; color: #000066; margin: 0px; padding: 0px; vertical-align: baseline;">digitalWrite</span> <span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span>PIN_A<span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span> <span class="kw2" style="box-sizing: border-box; font-weight: bold; margin: 0px; padding: 0px; vertical-align: baseline;">LOW</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px 20px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="kw3" style="box-sizing: border-box; color: #000066; margin: 0px; padding: 0px; vertical-align: baseline;">digitalWrite</span> <span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span>PIN_B<span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span> <span class="kw2" style="box-sizing: border-box; font-weight: bold; margin: 0px; padding: 0px; vertical-align: baseline;">LOW</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px 20px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="kw3" style="box-sizing: border-box; color: #000066; margin: 0px; padding: 0px; vertical-align: baseline;">digitalWrite</span> <span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span>PIN_C<span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span> <span class="kw2" style="box-sizing: border-box; font-weight: bold; margin: 0px; padding: 0px; vertical-align: baseline;">HIGH</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px 20px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="kw3" style="box-sizing: border-box; color: #000066; margin: 0px; padding: 0px; vertical-align: baseline;">digitalWrite</span> <span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span>PIN_D<span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span> <span class="kw2" style="box-sizing: border-box; font-weight: bold; margin: 0px; padding: 0px; vertical-align: baseline;">LOW</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px 20px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="kw2" style="box-sizing: border-box; font-weight: bold; margin: 0px; padding: 0px; vertical-align: baseline;">break</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span> </div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px 20px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="kw1" style="box-sizing: border-box; color: #b1b100; margin: 0px; padding: 0px; vertical-align: baseline;">case</span> <span class="nu0" style="box-sizing: border-box; color: #0000dd; margin: 0px; padding: 0px; vertical-align: baseline;">5</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">:</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px 20px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="kw3" style="box-sizing: border-box; color: #000066; margin: 0px; padding: 0px; vertical-align: baseline;">pinMode</span> <span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span>PIN_A<span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span> <span class="kw2" style="box-sizing: border-box; font-weight: bold; margin: 0px; padding: 0px; vertical-align: baseline;">INPUT</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px 20px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="kw3" style="box-sizing: border-box; color: #000066; margin: 0px; padding: 0px; vertical-align: baseline;">pinMode</span> <span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span>PIN_B<span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span> <span class="kw2" style="box-sizing: border-box; font-weight: bold; margin: 0px; padding: 0px; vertical-align: baseline;">INPUT</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px 20px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="kw3" style="box-sizing: border-box; color: #000066; margin: 0px; padding: 0px; vertical-align: baseline;">pinMode</span> <span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span>PIN_C<span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span> <span class="kw2" style="box-sizing: border-box; font-weight: bold; margin: 0px; padding: 0px; vertical-align: baseline;">OUTPUT</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px 20px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="kw3" style="box-sizing: border-box; color: #000066; margin: 0px; padding: 0px; vertical-align: baseline;">pinMode</span> <span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span>PIN_D<span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span> <span class="kw2" style="box-sizing: border-box; font-weight: bold; margin: 0px; padding: 0px; vertical-align: baseline;">OUTPUT</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px 20px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="kw3" style="box-sizing: border-box; color: #000066; margin: 0px; padding: 0px; vertical-align: baseline;">digitalWrite</span> <span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span>PIN_A<span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span> <span class="kw2" style="box-sizing: border-box; font-weight: bold; margin: 0px; padding: 0px; vertical-align: baseline;">LOW</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px 20px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="kw3" style="box-sizing: border-box; color: #000066; margin: 0px; padding: 0px; vertical-align: baseline;">digitalWrite</span> <span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span>PIN_B<span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span> <span class="kw2" style="box-sizing: border-box; font-weight: bold; margin: 0px; padding: 0px; vertical-align: baseline;">LOW</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px 20px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="kw3" style="box-sizing: border-box; color: #000066; margin: 0px; padding: 0px; vertical-align: baseline;">digitalWrite</span> <span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span>PIN_C<span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span> <span class="kw2" style="box-sizing: border-box; font-weight: bold; margin: 0px; padding: 0px; vertical-align: baseline;">HIGH</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px 20px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="kw3" style="box-sizing: border-box; color: #000066; margin: 0px; padding: 0px; vertical-align: baseline;">digitalWrite</span> <span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span>PIN_D<span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span> <span class="kw2" style="box-sizing: border-box; font-weight: bold; margin: 0px; padding: 0px; vertical-align: baseline;">LOW</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px 20px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="kw2" style="box-sizing: border-box; font-weight: bold; margin: 0px; padding: 0px; vertical-align: baseline;">break</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span> </div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px 20px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="kw1" style="box-sizing: border-box; color: #b1b100; margin: 0px; padding: 0px; vertical-align: baseline;">case</span> <span class="nu0" style="box-sizing: border-box; color: #0000dd; margin: 0px; padding: 0px; vertical-align: baseline;">6</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">:</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px 20px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="kw3" style="box-sizing: border-box; color: #000066; margin: 0px; padding: 0px; vertical-align: baseline;">pinMode</span> <span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span>PIN_A<span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span> <span class="kw2" style="box-sizing: border-box; font-weight: bold; margin: 0px; padding: 0px; vertical-align: baseline;">INPUT</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px 20px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="kw3" style="box-sizing: border-box; color: #000066; margin: 0px; padding: 0px; vertical-align: baseline;">pinMode</span> <span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span>PIN_B<span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span> <span class="kw2" style="box-sizing: border-box; font-weight: bold; margin: 0px; padding: 0px; vertical-align: baseline;">INPUT</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px 20px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="kw3" style="box-sizing: border-box; color: #000066; margin: 0px; padding: 0px; vertical-align: baseline;">pinMode</span> <span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span>PIN_C<span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span> <span class="kw2" style="box-sizing: border-box; font-weight: bold; margin: 0px; padding: 0px; vertical-align: baseline;">OUTPUT</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px 20px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="kw3" style="box-sizing: border-box; color: #000066; margin: 0px; padding: 0px; vertical-align: baseline;">pinMode</span> <span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span>PIN_D<span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span> <span class="kw2" style="box-sizing: border-box; font-weight: bold; margin: 0px; padding: 0px; vertical-align: baseline;">OUTPUT</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px 20px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="kw3" style="box-sizing: border-box; color: #000066; margin: 0px; padding: 0px; vertical-align: baseline;">digitalWrite</span> <span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span>PIN_A<span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span> <span class="kw2" style="box-sizing: border-box; font-weight: bold; margin: 0px; padding: 0px; vertical-align: baseline;">LOW</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px 20px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="kw3" style="box-sizing: border-box; color: #000066; margin: 0px; padding: 0px; vertical-align: baseline;">digitalWrite</span> <span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span>PIN_B<span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span> <span class="kw2" style="box-sizing: border-box; font-weight: bold; margin: 0px; padding: 0px; vertical-align: baseline;">LOW</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px 20px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="kw3" style="box-sizing: border-box; color: #000066; margin: 0px; padding: 0px; vertical-align: baseline;">digitalWrite</span> <span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span>PIN_C<span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span> <span class="kw2" style="box-sizing: border-box; font-weight: bold; margin: 0px; padding: 0px; vertical-align: baseline;">LOW</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px 20px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="kw3" style="box-sizing: border-box; color: #000066; margin: 0px; padding: 0px; vertical-align: baseline;">digitalWrite</span> <span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span>PIN_D<span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span> <span class="kw2" style="box-sizing: border-box; font-weight: bold; margin: 0px; padding: 0px; vertical-align: baseline;">HIGH</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px 20px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="kw2" style="box-sizing: border-box; font-weight: bold; margin: 0px; padding: 0px; vertical-align: baseline;">break</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span> </div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px 20px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="kw1" style="box-sizing: border-box; color: #b1b100; margin: 0px; padding: 0px; vertical-align: baseline;">case</span> <span class="nu0" style="box-sizing: border-box; color: #0000dd; margin: 0px; padding: 0px; vertical-align: baseline;">7</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">:</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px 20px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="kw3" style="box-sizing: border-box; color: #000066; margin: 0px; padding: 0px; vertical-align: baseline;">pinMode</span> <span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span>PIN_A<span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span> <span class="kw2" style="box-sizing: border-box; font-weight: bold; margin: 0px; padding: 0px; vertical-align: baseline;">OUTPUT</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px 20px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="kw3" style="box-sizing: border-box; color: #000066; margin: 0px; padding: 0px; vertical-align: baseline;">pinMode</span> <span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span>PIN_B<span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span> <span class="kw2" style="box-sizing: border-box; font-weight: bold; margin: 0px; padding: 0px; vertical-align: baseline;">INPUT</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px 20px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="kw3" style="box-sizing: border-box; color: #000066; margin: 0px; padding: 0px; vertical-align: baseline;">pinMode</span> <span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span>PIN_C<span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span> <span class="kw2" style="box-sizing: border-box; font-weight: bold; margin: 0px; padding: 0px; vertical-align: baseline;">OUTPUT</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px 20px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="kw3" style="box-sizing: border-box; color: #000066; margin: 0px; padding: 0px; vertical-align: baseline;">pinMode</span> <span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span>PIN_D<span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span> <span class="kw2" style="box-sizing: border-box; font-weight: bold; margin: 0px; padding: 0px; vertical-align: baseline;">INPUT</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px 20px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="kw3" style="box-sizing: border-box; color: #000066; margin: 0px; padding: 0px; vertical-align: baseline;">digitalWrite</span> <span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span>PIN_A<span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span> <span class="kw2" style="box-sizing: border-box; font-weight: bold; margin: 0px; padding: 0px; vertical-align: baseline;">HIGH</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px 20px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="kw3" style="box-sizing: border-box; color: #000066; margin: 0px; padding: 0px; vertical-align: baseline;">digitalWrite</span> <span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span>PIN_B<span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span> <span class="kw2" style="box-sizing: border-box; font-weight: bold; margin: 0px; padding: 0px; vertical-align: baseline;">LOW</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px 20px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="kw3" style="box-sizing: border-box; color: #000066; margin: 0px; padding: 0px; vertical-align: baseline;">digitalWrite</span> <span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span>PIN_C<span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span> <span class="kw2" style="box-sizing: border-box; font-weight: bold; margin: 0px; padding: 0px; vertical-align: baseline;">LOW</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px 20px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="kw3" style="box-sizing: border-box; color: #000066; margin: 0px; padding: 0px; vertical-align: baseline;">digitalWrite</span> <span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span>PIN_D<span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span> <span class="kw2" style="box-sizing: border-box; font-weight: bold; margin: 0px; padding: 0px; vertical-align: baseline;">LOW</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px 20px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="kw2" style="box-sizing: border-box; font-weight: bold; margin: 0px; padding: 0px; vertical-align: baseline;">break</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span> </div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px 20px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="kw1" style="box-sizing: border-box; color: #b1b100; margin: 0px; padding: 0px; vertical-align: baseline;">case</span> <span class="nu0" style="box-sizing: border-box; color: #0000dd; margin: 0px; padding: 0px; vertical-align: baseline;">8</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">:</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px 20px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="kw3" style="box-sizing: border-box; color: #000066; margin: 0px; padding: 0px; vertical-align: baseline;">pinMode</span> <span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span>PIN_A<span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span> <span class="kw2" style="box-sizing: border-box; font-weight: bold; margin: 0px; padding: 0px; vertical-align: baseline;">OUTPUT</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px 20px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="kw3" style="box-sizing: border-box; color: #000066; margin: 0px; padding: 0px; vertical-align: baseline;">pinMode</span> <span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span>PIN_B<span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span> <span class="kw2" style="box-sizing: border-box; font-weight: bold; margin: 0px; padding: 0px; vertical-align: baseline;">INPUT</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px 20px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="kw3" style="box-sizing: border-box; color: #000066; margin: 0px; padding: 0px; vertical-align: baseline;">pinMode</span> <span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span>PIN_C<span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span> <span class="kw2" style="box-sizing: border-box; font-weight: bold; margin: 0px; padding: 0px; vertical-align: baseline;">OUTPUT</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px 20px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="kw3" style="box-sizing: border-box; color: #000066; margin: 0px; padding: 0px; vertical-align: baseline;">pinMode</span> <span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span>PIN_D<span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span> <span class="kw2" style="box-sizing: border-box; font-weight: bold; margin: 0px; padding: 0px; vertical-align: baseline;">INPUT</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px 20px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="kw3" style="box-sizing: border-box; color: #000066; margin: 0px; padding: 0px; vertical-align: baseline;">digitalWrite</span> <span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span>PIN_A<span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span> <span class="kw2" style="box-sizing: border-box; font-weight: bold; margin: 0px; padding: 0px; vertical-align: baseline;">LOW</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px 20px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="kw3" style="box-sizing: border-box; color: #000066; margin: 0px; padding: 0px; vertical-align: baseline;">digitalWrite</span> <span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span>PIN_B<span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span> <span class="kw2" style="box-sizing: border-box; font-weight: bold; margin: 0px; padding: 0px; vertical-align: baseline;">LOW</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px 20px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="kw3" style="box-sizing: border-box; color: #000066; margin: 0px; padding: 0px; vertical-align: baseline;">digitalWrite</span> <span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span>PIN_C<span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span> <span class="kw2" style="box-sizing: border-box; font-weight: bold; margin: 0px; padding: 0px; vertical-align: baseline;">HIGH</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px 20px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="kw3" style="box-sizing: border-box; color: #000066; margin: 0px; padding: 0px; vertical-align: baseline;">digitalWrite</span> <span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span>PIN_D<span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span> <span class="kw2" style="box-sizing: border-box; font-weight: bold; margin: 0px; padding: 0px; vertical-align: baseline;">LOW</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px 20px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="kw2" style="box-sizing: border-box; font-weight: bold; margin: 0px; padding: 0px; vertical-align: baseline;">break</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span> </div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px 20px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="kw1" style="box-sizing: border-box; color: #b1b100; margin: 0px; padding: 0px; vertical-align: baseline;">case</span> <span class="nu0" style="box-sizing: border-box; color: #0000dd; margin: 0px; padding: 0px; vertical-align: baseline;">9</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">:</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px 20px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="kw3" style="box-sizing: border-box; color: #000066; margin: 0px; padding: 0px; vertical-align: baseline;">pinMode</span> <span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span>PIN_A<span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span> <span class="kw2" style="box-sizing: border-box; font-weight: bold; margin: 0px; padding: 0px; vertical-align: baseline;">INPUT</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px 20px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="kw3" style="box-sizing: border-box; color: #000066; margin: 0px; padding: 0px; vertical-align: baseline;">pinMode</span> <span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span>PIN_B<span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span> <span class="kw2" style="box-sizing: border-box; font-weight: bold; margin: 0px; padding: 0px; vertical-align: baseline;">OUTPUT</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px 20px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="kw3" style="box-sizing: border-box; color: #000066; margin: 0px; padding: 0px; vertical-align: baseline;">pinMode</span> <span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span>PIN_C<span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span> <span class="kw2" style="box-sizing: border-box; font-weight: bold; margin: 0px; padding: 0px; vertical-align: baseline;">INPUT</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px 20px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="kw3" style="box-sizing: border-box; color: #000066; margin: 0px; padding: 0px; vertical-align: baseline;">pinMode</span> <span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span>PIN_D<span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span> <span class="kw2" style="box-sizing: border-box; font-weight: bold; margin: 0px; padding: 0px; vertical-align: baseline;">OUTPUT</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px 20px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="kw3" style="box-sizing: border-box; color: #000066; margin: 0px; padding: 0px; vertical-align: baseline;">digitalWrite</span> <span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span>PIN_A<span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span> <span class="kw2" style="box-sizing: border-box; font-weight: bold; margin: 0px; padding: 0px; vertical-align: baseline;">LOW</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px 20px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="kw3" style="box-sizing: border-box; color: #000066; margin: 0px; padding: 0px; vertical-align: baseline;">digitalWrite</span> <span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span>PIN_B<span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span> <span class="kw2" style="box-sizing: border-box; font-weight: bold; margin: 0px; padding: 0px; vertical-align: baseline;">HIGH</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px 20px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="kw3" style="box-sizing: border-box; color: #000066; margin: 0px; padding: 0px; vertical-align: baseline;">digitalWrite</span> <span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span>PIN_C<span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span> <span class="kw2" style="box-sizing: border-box; font-weight: bold; margin: 0px; padding: 0px; vertical-align: baseline;">LOW</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px 20px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="kw3" style="box-sizing: border-box; color: #000066; margin: 0px; padding: 0px; vertical-align: baseline;">digitalWrite</span> <span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span>PIN_D<span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span> <span class="kw2" style="box-sizing: border-box; font-weight: bold; margin: 0px; padding: 0px; vertical-align: baseline;">LOW</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px 20px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="kw2" style="box-sizing: border-box; font-weight: bold; margin: 0px; padding: 0px; vertical-align: baseline;">break</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span> </div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px 20px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="kw1" style="box-sizing: border-box; color: #b1b100; margin: 0px; padding: 0px; vertical-align: baseline;">case</span> <span class="nu0" style="box-sizing: border-box; color: #0000dd; margin: 0px; padding: 0px; vertical-align: baseline;">10</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">:</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px 20px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="kw3" style="box-sizing: border-box; color: #000066; margin: 0px; padding: 0px; vertical-align: baseline;">pinMode</span> <span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span>PIN_A<span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span> <span class="kw2" style="box-sizing: border-box; font-weight: bold; margin: 0px; padding: 0px; vertical-align: baseline;">INPUT</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px 20px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="kw3" style="box-sizing: border-box; color: #000066; margin: 0px; padding: 0px; vertical-align: baseline;">pinMode</span> <span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span>PIN_B<span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span> <span class="kw2" style="box-sizing: border-box; font-weight: bold; margin: 0px; padding: 0px; vertical-align: baseline;">OUTPUT</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px 20px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="kw3" style="box-sizing: border-box; color: #000066; margin: 0px; padding: 0px; vertical-align: baseline;">pinMode</span> <span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span>PIN_C<span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span> <span class="kw2" style="box-sizing: border-box; font-weight: bold; margin: 0px; padding: 0px; vertical-align: baseline;">INPUT</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px 20px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="kw3" style="box-sizing: border-box; color: #000066; margin: 0px; padding: 0px; vertical-align: baseline;">pinMode</span> <span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span>PIN_D<span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span> <span class="kw2" style="box-sizing: border-box; font-weight: bold; margin: 0px; padding: 0px; vertical-align: baseline;">OUTPUT</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px 20px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="kw3" style="box-sizing: border-box; color: #000066; margin: 0px; padding: 0px; vertical-align: baseline;">digitalWrite</span> <span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span>PIN_A<span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span> <span class="kw2" style="box-sizing: border-box; font-weight: bold; margin: 0px; padding: 0px; vertical-align: baseline;">LOW</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px 20px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="kw3" style="box-sizing: border-box; color: #000066; margin: 0px; padding: 0px; vertical-align: baseline;">digitalWrite</span> <span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span>PIN_B<span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span> <span class="kw2" style="box-sizing: border-box; font-weight: bold; margin: 0px; padding: 0px; vertical-align: baseline;">LOW</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px 20px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="kw3" style="box-sizing: border-box; color: #000066; margin: 0px; padding: 0px; vertical-align: baseline;">digitalWrite</span> <span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span>PIN_C<span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span> <span class="kw2" style="box-sizing: border-box; font-weight: bold; margin: 0px; padding: 0px; vertical-align: baseline;">LOW</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px 20px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="kw3" style="box-sizing: border-box; color: #000066; margin: 0px; padding: 0px; vertical-align: baseline;">digitalWrite</span> <span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span>PIN_D<span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span> <span class="kw2" style="box-sizing: border-box; font-weight: bold; margin: 0px; padding: 0px; vertical-align: baseline;">HIGH</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px 20px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="kw2" style="box-sizing: border-box; font-weight: bold; margin: 0px; padding: 0px; vertical-align: baseline;">break</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span> </div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px 20px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="kw1" style="box-sizing: border-box; color: #b1b100; margin: 0px; padding: 0px; vertical-align: baseline;">case</span> <span class="nu0" style="box-sizing: border-box; color: #0000dd; margin: 0px; padding: 0px; vertical-align: baseline;">11</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">:</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px 20px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="kw3" style="box-sizing: border-box; color: #000066; margin: 0px; padding: 0px; vertical-align: baseline;">pinMode</span> <span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span>PIN_A<span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span> <span class="kw2" style="box-sizing: border-box; font-weight: bold; margin: 0px; padding: 0px; vertical-align: baseline;">OUTPUT</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px 20px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="kw3" style="box-sizing: border-box; color: #000066; margin: 0px; padding: 0px; vertical-align: baseline;">pinMode</span> <span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span>PIN_B<span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span> <span class="kw2" style="box-sizing: border-box; font-weight: bold; margin: 0px; padding: 0px; vertical-align: baseline;">INPUT</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px 20px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="kw3" style="box-sizing: border-box; color: #000066; margin: 0px; padding: 0px; vertical-align: baseline;">pinMode</span> <span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span>PIN_C<span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span> <span class="kw2" style="box-sizing: border-box; font-weight: bold; margin: 0px; padding: 0px; vertical-align: baseline;">INPUT</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px 20px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="kw3" style="box-sizing: border-box; color: #000066; margin: 0px; padding: 0px; vertical-align: baseline;">pinMode</span> <span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span>PIN_D<span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span> <span class="kw2" style="box-sizing: border-box; font-weight: bold; margin: 0px; padding: 0px; vertical-align: baseline;">OUTPUT</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px 20px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="kw3" style="box-sizing: border-box; color: #000066; margin: 0px; padding: 0px; vertical-align: baseline;">digitalWrite</span> <span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span>PIN_A<span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span> <span class="kw2" style="box-sizing: border-box; font-weight: bold; margin: 0px; padding: 0px; vertical-align: baseline;">HIGH</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px 20px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="kw3" style="box-sizing: border-box; color: #000066; margin: 0px; padding: 0px; vertical-align: baseline;">digitalWrite</span> <span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span>PIN_B<span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span> <span class="kw2" style="box-sizing: border-box; font-weight: bold; margin: 0px; padding: 0px; vertical-align: baseline;">LOW</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px 20px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="kw3" style="box-sizing: border-box; color: #000066; margin: 0px; padding: 0px; vertical-align: baseline;">digitalWrite</span> <span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span>PIN_C<span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span> <span class="kw2" style="box-sizing: border-box; font-weight: bold; margin: 0px; padding: 0px; vertical-align: baseline;">LOW</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px 20px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="kw3" style="box-sizing: border-box; color: #000066; margin: 0px; padding: 0px; vertical-align: baseline;">digitalWrite</span> <span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span>PIN_D<span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span> <span class="kw2" style="box-sizing: border-box; font-weight: bold; margin: 0px; padding: 0px; vertical-align: baseline;">LOW</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px 20px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="kw2" style="box-sizing: border-box; font-weight: bold; margin: 0px; padding: 0px; vertical-align: baseline;">break</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span> </div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px 20px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="kw1" style="box-sizing: border-box; color: #b1b100; margin: 0px; padding: 0px; vertical-align: baseline;">case</span> <span class="nu0" style="box-sizing: border-box; color: #0000dd; margin: 0px; padding: 0px; vertical-align: baseline;">12</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">:</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px 20px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="kw3" style="box-sizing: border-box; color: #000066; margin: 0px; padding: 0px; vertical-align: baseline;">pinMode</span> <span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span>PIN_A<span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span> <span class="kw2" style="box-sizing: border-box; font-weight: bold; margin: 0px; padding: 0px; vertical-align: baseline;">OUTPUT</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px 20px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="kw3" style="box-sizing: border-box; color: #000066; margin: 0px; padding: 0px; vertical-align: baseline;">pinMode</span> <span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span>PIN_B<span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span> <span class="kw2" style="box-sizing: border-box; font-weight: bold; margin: 0px; padding: 0px; vertical-align: baseline;">INPUT</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px 20px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="kw3" style="box-sizing: border-box; color: #000066; margin: 0px; padding: 0px; vertical-align: baseline;">pinMode</span> <span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span>PIN_C<span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span> <span class="kw2" style="box-sizing: border-box; font-weight: bold; margin: 0px; padding: 0px; vertical-align: baseline;">INPUT</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px 20px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="kw3" style="box-sizing: border-box; color: #000066; margin: 0px; padding: 0px; vertical-align: baseline;">pinMode</span> <span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span>PIN_D<span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span> <span class="kw2" style="box-sizing: border-box; font-weight: bold; margin: 0px; padding: 0px; vertical-align: baseline;">OUTPUT</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px 20px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="kw3" style="box-sizing: border-box; color: #000066; margin: 0px; padding: 0px; vertical-align: baseline;">digitalWrite</span> <span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span>PIN_A<span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span> <span class="kw2" style="box-sizing: border-box; font-weight: bold; margin: 0px; padding: 0px; vertical-align: baseline;">LOW</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px 20px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="kw3" style="box-sizing: border-box; color: #000066; margin: 0px; padding: 0px; vertical-align: baseline;">digitalWrite</span> <span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span>PIN_B<span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span> <span class="kw2" style="box-sizing: border-box; font-weight: bold; margin: 0px; padding: 0px; vertical-align: baseline;">LOW</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px 20px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="kw3" style="box-sizing: border-box; color: #000066; margin: 0px; padding: 0px; vertical-align: baseline;">digitalWrite</span> <span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span>PIN_C<span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span> <span class="kw2" style="box-sizing: border-box; font-weight: bold; margin: 0px; padding: 0px; vertical-align: baseline;">LOW</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px 20px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="kw3" style="box-sizing: border-box; color: #000066; margin: 0px; padding: 0px; vertical-align: baseline;">digitalWrite</span> <span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span>PIN_D<span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span> <span class="kw2" style="box-sizing: border-box; font-weight: bold; margin: 0px; padding: 0px; vertical-align: baseline;">HIGH</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px 20px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="kw2" style="box-sizing: border-box; font-weight: bold; margin: 0px; padding: 0px; vertical-align: baseline;">break</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span> </div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px 20px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">}</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px 20px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">}</span></div></li></ol><p>Chiaramente così facendo potete accendere solo un led alla volta, ma qui viene in contro un altro trucchetto. Infatti se passate tra un led ed un altro molto rapidamente, il vostro cervello viene ingannato e i led accesi contemporaneamente sembreranno 2. provate a realizzare il circuito sopra, e nello sketch mettere un delay molto basso (ad esempio 10 ms) i led sembreranno tutti accesi. </p><p><br /></p><div>Questo è tutto,<br />per qualsiasi domanda lascia pure un commento.<br /><br />Seguimi sulle mie pagine per rimanere sempre aggiornato sui nuovi post!</div><div><br /></div></div>Danielehttp://www.blogger.com/profile/09720964861202313121noreply@blogger.com0tag:blogger.com,1999:blog-390453114990638376.post-32483447562036182092021-08-03T15:45:00.001+02:002021-08-03T15:45:51.214+02:00Arduino e gli RFIDCiao!<br /><br />in questo post vi parlerò degli RFID, in particolare del modulo rc522 e dello standard MIFARE.<div>Questo modulo può essere trovato in moltissimi eCommerce (<a href="https://s.click.aliexpress.com/e/_AFSxF6" target="_blank">Aliexpress ad esempio</a>, se potete attendere)<br /><br /><div class="separator" style="clear: both; text-align: center;"><a href="https://1.bp.blogspot.com/-gBLXtTXFxrw/YDuggB0nSkI/AAAAAAAAHzM/uWY94smFv9sggJtqRhSG50jgg1szIosEwCLcBGAsYHQ/s1920/original.jpg" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="1080" data-original-width="1920" height="360" src="https://1.bp.blogspot.com/-gBLXtTXFxrw/YDuggB0nSkI/AAAAAAAAHzM/uWY94smFv9sggJtqRhSG50jgg1szIosEwCLcBGAsYHQ/w640-h360/original.jpg" width="640" /></a></div></div><div class="separator" style="clear: both; text-align: center;"><br /></div><span><a name='more'></a></span><div><br /></div><div><span color="var(--color-text-secondary)" face="-apple-system, BlinkMacSystemFont, "Segoe UI", Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji"" style="background-color: white; font-size: 16px;">Questo lettore è compatibile con la <a href="https://en.wikipedia.org/wiki/MIFARE">serie MIFARE della NXP</a>, basata </span>sullo standard <a href="https://en.wikipedia.org/wiki/ISO/IEC_14443">ISO/IEC 14443</a> (Type A) che opera alla frequenza 13.56 MHz</div><div><span color="var(--color-text-secondary)" face="-apple-system, BlinkMacSystemFont, "Segoe UI", Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji"" style="background-color: white; font-size: 16px;">I formati previsti da questo standard sono vari, probabilmente assieme al modulo vi arriverà un tag e/o una card da 1KB.</span></div><div><span color="var(--color-text-secondary)" face="-apple-system, BlinkMacSystemFont, "Segoe UI", Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji"" style="background-color: white; font-size: 16px;"><br /></span></div><div><span color="var(--color-text-secondary)" face="-apple-system, BlinkMacSystemFont, "Segoe UI", Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji"" style="background-color: white; font-size: 16px;">Dentro la card è presente una antenna ed un chip (potete vederli se mettete una torcia dietro la card), il chip ha della memoria (in gran parte disponibile per i nostri scopi), ad esempio la memoria di una scheda da 1K è strutturata in 16 settori da 4 blocchi, ogni blocco ha una capacità di 16 Byte.</span></div><div><br /></div><div><br /></div><div class="separator" style="clear: both; text-align: center;"><a href="https://1.bp.blogspot.com/-WvKR7snGLZ0/YD98yHlUiCI/AAAAAAAAH0A/xrcYvUq-GpYu9_SvZnQjVDdDBvZ_Wo0BQCLcBGAsYHQ/s2048/mifare-1.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="1652" data-original-width="2048" height="516" src="https://1.bp.blogspot.com/-WvKR7snGLZ0/YD98yHlUiCI/AAAAAAAAH0A/xrcYvUq-GpYu9_SvZnQjVDdDBvZ_Wo0BQCLcBGAsYHQ/w640-h516/mifare-1.png" width="640" /></a></div><br /><div class="separator" style="clear: both; text-align: center;"><a href="https://1.bp.blogspot.com/-UHDtJkPN_Ac/YD98yfPgMaI/AAAAAAAAH0E/8K4xVqSnOEYBDhEHadsWL7cM3I5yv4LigCLcBGAsYHQ/s1420/mifare-2.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="549" data-original-width="1420" src="https://1.bp.blogspot.com/-UHDtJkPN_Ac/YD98yfPgMaI/AAAAAAAAH0E/8K4xVqSnOEYBDhEHadsWL7cM3I5yv4LigCLcBGAsYHQ/s320/mifare-2.png" width="320" /></a></div><div><i><br /></i></div><div><i><a href="https://commons.wikimedia.org/w/index.php?curid=44345620">By Adontz - Own work, CC BY-SA 4.0</a>, immagini ritagliate per motivi di leggibilità.</i></div><div><br /></div><div>Il funzionamento di un RFID è abbastanza complesso.</div><div>Come potete vedere sopra sono presenti 2 chiavi in ogni settore, e degli access bit per regolare i permessi di accesso ai vari blocchi.</div><div>La comunicazione tra modulo e tag avviene in modo cifrato, quindi anche "sniffando" ciò che passa tra tag e modulo non vedremo in chiaro le informazioni che ci interessano.</div><div><br /></div><div><div>Fortunatamente esistono varie librerie per semplificarcene l'uso, una valida soluzione sicuramente è <a href="https://github.com/miguelbalboa/rfid" target="_blank">questa</a>, scaricatela ed installatela nel vostro IDE.</div><div><br /></div><div>Se dovete utilizzare questo sistema per scopi critici, sappiate che la libreria utilizza da cifratura proprietaria CRYPTO1, non è un sistema infallibile, le sue <a href="https://link.springer.com/content/pdf/10.1007%2F978-3-540-85893-5_20.pdf">vulnerabilità sono note da tempo</a>.</div><div><br /></div><div>Due esempi interessanti per capire il funzionamento di questo sistema sono il "<a href="https://github.com/miguelbalboa/rfid/blob/master/examples/rfid_write_personal_data/rfid_write_personal_data.ino" target="_blank">rfid_write_personal_data</a>" <span style="font-family: inherit;">e il "<u><a data-pjax="true" href="https://github.com/miguelbalboa/rfid/blob/master/examples/rfid_read_personal_data/rfid_read_personal_data.ino" style="box-sizing: border-box; font-size: 16px; text-decoration-line: none;">rfid_read_personal_data</a></u><span color="var(--color-text-secondary)" face="-apple-system, BlinkMacSystemFont, "Segoe UI", Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji"" style="background-color: white; font-size: 16px;">"</span></span><br /></div></div><p> </p><p>Il modulo si interfaccia ad Arduino tramite protocollo SPI,<br />ecco lo schema di collegamento compatibile con i 2 esempi linkati sopra:</p><p> </p><div><br /></div><div class="separator" style="clear: both; text-align: center;"><a href="https://1.bp.blogspot.com/-lZdqYqzeUQw/YQlHlTyAuoI/AAAAAAAAIFY/xCcSr1MMVNwHgkKtKPaTbXonffimtO77gCLcBGAsYHQ/s1593/rfid_bb.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="1593" data-original-width="1017" height="640" src="https://1.bp.blogspot.com/-lZdqYqzeUQw/YQlHlTyAuoI/AAAAAAAAIFY/xCcSr1MMVNwHgkKtKPaTbXonffimtO77gCLcBGAsYHQ/w408-h640/rfid_bb.png" width="408" /></a></div><br /><div><br /></div><div><br /></div><div><br />Questo è tutto,<br />per qualsiasi domanda lascia pure un commento.<br /><br />Seguimi sulle mie pagine per rimanere sempre aggiornato sui nuovi post!</div><div><br /></div><div><br /></div><div><br /></div><div>LINK UTILI: </div><div><a href="https://github.com/miguelbalboa/rfid/issues/188" target="_blank">qui</a> ho trovato informazioni utili su come rilevare la presenza e la rimozione di una card.</div><div>Moltissime informazioni aggiuntive possono essere trovare nel <a href="https://www.nxp.com/docs/en/data-sheet/MFRC522.pdf">datasheet NXP MFRC522</a>.</div>Danielehttp://www.blogger.com/profile/09720964861202313121noreply@blogger.com0tag:blogger.com,1999:blog-390453114990638376.post-23556257046571356452021-07-16T21:27:00.002+02:002021-08-03T15:44:12.492+02:00Arduino Cloud ESP8266<p>Ciao!</p><p>in questo post vedremo come compiere i primi passi con Arduino Cloud, piattaforma che permette di controllare le nostre schede tramite internet, attraverso dashboards pratiche ed eleganti. </p><p><br /></p><div class="separator" style="clear: both; text-align: center;"><a href="https://1.bp.blogspot.com/-7BJ67o1_V8o/YO7Dc0mzN7I/AAAAAAAAIDI/jH1hL6vZ4AEWjk0bf4u7hGXFk5poLflSwCLcBGAsYHQ/s1024/fabrizio-garda-Sim-Cloud-1024x559.gif" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="559" data-original-width="1024" height="350" src="https://1.bp.blogspot.com/-7BJ67o1_V8o/YO7Dc0mzN7I/AAAAAAAAIDI/jH1hL6vZ4AEWjk0bf4u7hGXFk5poLflSwCLcBGAsYHQ/w640-h350/fabrizio-garda-Sim-Cloud-1024x559.gif" width="640" /></a></div><br /><p><br /></p><span><a name='more'></a></span><p><br /></p><p>Il primo passo consiste nel creare un <a href="https://store.arduino.cc/digital/create#">piano Arduino Cloud</a>, ci sono diversi piani in base all'utilizzo di cui necessitate. </p><p>Per l'esempio oggetto di questo post sarà sufficiente l'account FREE, gli account a pagamento permettono maggiore espandibilità e la possibilità ad esempio di condividere le dashboard.</p><p>Una volta ottenuto l'account occorre scaricare un agent che consentirà al web editor di comunicare con la scheda collegata al pc. Scaricate ed installate quello compatibile con il vostro sistema in <a href="https://github.com/arduino/arduino-create-agent/releases">questa pagina</a> o seguendo il <a href="https://create.arduino.cc/getting-started/plugin/welcome">wizard</a>.</p><p>Entrate ora nella pagina <a href="https://create.arduino.cc/iot/things">Arduino IoT Cloud</a> e create la vostra prima Thing.</p><p><br /></p><p></p><div class="separator" style="clear: both; text-align: center;"><a href="https://1.bp.blogspot.com/-_p0NoAGkO1M/YO8_ujiuBnI/AAAAAAAAIDQ/BUENExAnXlEiBQ5ChFHVI36LQiLQZOVGwCLcBGAsYHQ/s1920/Cattura.PNG" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="1030" data-original-width="1920" height="344" src="https://1.bp.blogspot.com/-_p0NoAGkO1M/YO8_ujiuBnI/AAAAAAAAIDQ/BUENExAnXlEiBQ5ChFHVI36LQiLQZOVGwCLcBGAsYHQ/w640-h344/Cattura.PNG" width="640" /></a></div><p><br /></p>Sulla destra inserite il vostro Device, scegliendo tra quelli di terze parti, poi la vostra scheda (ESP8266 Wemos D1 R1 nel mio caso).<p></p><p>Salvatevi la secret key, vi servirà in seguito. In basso a destra configurate i parametri della rete wifi a cui si dovrà collegare la vostra scheda, inserite anche la secret key appena ottenuta.</p><p>Aggiungete poi una variabile (tasto ADD VARIABLE in centro a sinistra), di tipo Boolean e chiamatela "ledStatus" </p><div class="separator" style="clear: both; text-align: center;"><a href="https://1.bp.blogspot.com/-y8r9SnLbXhE/YO9A-eiU5FI/AAAAAAAAIDY/Vp9xaKZGrw0RdsUq6MicbGO4pbr4xs1GQCLcBGAsYHQ/s1920/Cattura.PNG" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="1030" data-original-width="1920" height="344" src="https://1.bp.blogspot.com/-y8r9SnLbXhE/YO9A-eiU5FI/AAAAAAAAIDY/Vp9xaKZGrw0RdsUq6MicbGO4pbr4xs1GQCLcBGAsYHQ/w640-h344/Cattura.PNG" width="640" /></a></div><br /><p>Spostatevi poi nella scheda "Sketch", qui vi verrà mostrato uno sketch dal quale dovrete partire per le vostre personalizzazioni lato hardware. Per caricare il codice ho dovuto procedere dall'arduino editor, che si apre cliccando il pulsante "Open full editor".</p><p><br /></p><div class="separator" style="clear: both; text-align: center;"><a href="https://1.bp.blogspot.com/-qkLRMLUXJ7E/YO9C4aVoTlI/AAAAAAAAIDg/vacnpVZrMT8ca2o_1LIdDPYo-qeVV_sjACLcBGAsYHQ/s1920/Cattura.PNG" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="1030" data-original-width="1920" height="344" src="https://1.bp.blogspot.com/-qkLRMLUXJ7E/YO9C4aVoTlI/AAAAAAAAIDg/vacnpVZrMT8ca2o_1LIdDPYo-qeVV_sjACLcBGAsYHQ/w640-h344/Cattura.PNG" width="640" /></a></div><br /><p>Dall'editor, modificate il codice aggiungendo la modalià output per il pin del led interno (nel mio caso il pin 2) e il comando del pin sul cambiamento della variabile "ledStatus", in questo modo:</p><div style="text-align: left;"><ol class="arduino" style="background: rgb(255, 255, 255) none repeat scroll 0% 0%; box-sizing: border-box; color: #333333; font-family: Consolas, Menlo, Monaco, "Lucida Console", "Liberation Mono", "DejaVu Sans Mono", "Bitstream Vera Sans Mono", monospace, serif; font-size: 12px; margin: 0px; padding: 0px 10px; vertical-align: baseline;"><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"><span class="coMULTI" style="box-sizing: border-box; color: grey; font-style: italic; margin: 0px; padding: 0px; vertical-align: baseline;">/* </span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"><span class="coMULTI" style="box-sizing: border-box; color: grey; font-style: italic; margin: 0px; padding: 0px; vertical-align: baseline;"> Sketch generated by the Arduino IoT Cloud Thing "Blynk"</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"><span class="coMULTI" style="box-sizing: border-box; color: grey; font-style: italic; margin: 0px; padding: 0px; vertical-align: baseline;"> https://create.arduino.cc/cloud/things/f34e07ee-0c73-49d5-bf57-35e7248ad6ec </span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> </div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"><span class="coMULTI" style="box-sizing: border-box; color: grey; font-style: italic; margin: 0px; padding: 0px; vertical-align: baseline;"> Arduino IoT Cloud Variables description</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> </div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"><span class="coMULTI" style="box-sizing: border-box; color: grey; font-style: italic; margin: 0px; padding: 0px; vertical-align: baseline;"> The following variables are automatically generated and updated when changes are made to the Thing</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> </div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"><span class="coMULTI" style="box-sizing: border-box; color: grey; font-style: italic; margin: 0px; padding: 0px; vertical-align: baseline;"> bool ledStatus;</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> </div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"><span class="coMULTI" style="box-sizing: border-box; color: grey; font-style: italic; margin: 0px; padding: 0px; vertical-align: baseline;"> Variables which are marked as READ/WRITE in the Cloud Thing will also have functions</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"><span class="coMULTI" style="box-sizing: border-box; color: grey; font-style: italic; margin: 0px; padding: 0px; vertical-align: baseline;"> which are called when their values are changed from the Dashboard.</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"><span class="coMULTI" style="box-sizing: border-box; color: grey; font-style: italic; margin: 0px; padding: 0px; vertical-align: baseline;"> These functions are generated with the Thing and added at the end of this sketch.</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"><span class="coMULTI" style="box-sizing: border-box; color: grey; font-style: italic; margin: 0px; padding: 0px; vertical-align: baseline;">*/</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> </div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"><span class="co2" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">#include "thingProperties.h"</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> </div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"><span class="kw4" style="box-sizing: border-box; color: #993333; margin: 0px; padding: 0px; vertical-align: baseline;">void</span> setup<span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span> <span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">{</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="kw3" style="box-sizing: border-box; color: #000066; margin: 0px; padding: 0px; vertical-align: baseline;">pinMode</span> <span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span><span class="nu0" style="box-sizing: border-box; color: #0000dd; margin: 0px; padding: 0px; vertical-align: baseline;">2</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span> <span class="kw2" style="box-sizing: border-box; font-weight: bold; margin: 0px; padding: 0px; vertical-align: baseline;">OUTPUT</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="co1" style="box-sizing: border-box; color: #666666; font-style: italic; margin: 0px; padding: 0px; vertical-align: baseline;">// Initialize serial and wait for port to open:</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="kw3" style="box-sizing: border-box; color: #000066; margin: 0px; padding: 0px; vertical-align: baseline;">Serial</span>.<span class="me1" style="box-sizing: border-box; color: #202020; margin: 0px; padding: 0px; vertical-align: baseline;">begin</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span><span class="nu0" style="box-sizing: border-box; color: #0000dd; margin: 0px; padding: 0px; vertical-align: baseline;">9600</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="co1" style="box-sizing: border-box; color: #666666; font-style: italic; margin: 0px; padding: 0px; vertical-align: baseline;">// This delay gives the chance to wait for a Serial Monitor without blocking if none is found</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="kw3" style="box-sizing: border-box; color: #000066; margin: 0px; padding: 0px; vertical-align: baseline;">delay</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span><span class="nu0" style="box-sizing: border-box; color: #0000dd; margin: 0px; padding: 0px; vertical-align: baseline;">1500</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span> </div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> </div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="co1" style="box-sizing: border-box; color: #666666; font-style: italic; margin: 0px; padding: 0px; vertical-align: baseline;">// Defined in thingProperties.h</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> initProperties<span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> </div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="co1" style="box-sizing: border-box; color: #666666; font-style: italic; margin: 0px; padding: 0px; vertical-align: baseline;">// Connect to Arduino IoT Cloud</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> ArduinoCloud.<span class="me1" style="box-sizing: border-box; color: #202020; margin: 0px; padding: 0px; vertical-align: baseline;">begin</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span>ArduinoIoTPreferredConnection<span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> </div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="coMULTI" style="box-sizing: border-box; color: grey; font-style: italic; margin: 0px; padding: 0px; vertical-align: baseline;">/*</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"><span class="coMULTI" style="box-sizing: border-box; color: grey; font-style: italic; margin: 0px; padding: 0px; vertical-align: baseline;"> The following function allows you to obtain more information</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"><span class="coMULTI" style="box-sizing: border-box; color: grey; font-style: italic; margin: 0px; padding: 0px; vertical-align: baseline;"> related to the state of network and IoT Cloud connection and errors</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"><span class="coMULTI" style="box-sizing: border-box; color: grey; font-style: italic; margin: 0px; padding: 0px; vertical-align: baseline;"> the higher number the more granular information you’ll get.</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"><span class="coMULTI" style="box-sizing: border-box; color: grey; font-style: italic; margin: 0px; padding: 0px; vertical-align: baseline;"> The default is 0 (only errors).</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"><span class="coMULTI" style="box-sizing: border-box; color: grey; font-style: italic; margin: 0px; padding: 0px; vertical-align: baseline;"> Maximum is 4</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"><span class="coMULTI" style="box-sizing: border-box; color: grey; font-style: italic; margin: 0px; padding: 0px; vertical-align: baseline;"> */</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> setDebugMessageLevel<span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span><span class="nu0" style="box-sizing: border-box; color: #0000dd; margin: 0px; padding: 0px; vertical-align: baseline;">2</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> ArduinoCloud.<span class="me1" style="box-sizing: border-box; color: #202020; margin: 0px; padding: 0px; vertical-align: baseline;">printDebugInfo</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">}</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> </div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"><span class="kw4" style="box-sizing: border-box; color: #993333; margin: 0px; padding: 0px; vertical-align: baseline;">void</span> loop<span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span> <span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">{</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> ArduinoCloud.<span class="me1" style="box-sizing: border-box; color: #202020; margin: 0px; padding: 0px; vertical-align: baseline;">update</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="co1" style="box-sizing: border-box; color: #666666; font-style: italic; margin: 0px; padding: 0px; vertical-align: baseline;">// Your code here </span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> </div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> </div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">}</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> </div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"><span class="kw4" style="box-sizing: border-box; color: #993333; margin: 0px; padding: 0px; vertical-align: baseline;">void</span> onLedStatusChange<span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span> <span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">{</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> </div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="kw3" style="box-sizing: border-box; color: #000066; margin: 0px; padding: 0px; vertical-align: baseline;">digitalWrite</span> <span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span><span class="nu0" style="box-sizing: border-box; color: #0000dd; margin: 0px; padding: 0px; vertical-align: baseline;">2</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span> ledStatus<span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="co1" style="box-sizing: border-box; color: #666666; font-style: italic; margin: 0px; padding: 0px; vertical-align: baseline;">// Do something</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">}</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> </div></li></ol></div><div style="text-align: left;"><br /></div><div style="text-align: left;"><br /></div><div style="text-align: left;">Caricate il codice selezionando porta e scheda. </div><div style="text-align: left;">Fatto ciò tornate ad Arduino IoT Cloud e cliccate il menu Dashboards, createne una, editatela aggiungendo uno switch.</div><div style="text-align: left;"><br /></div><br /><div class="separator" style="clear: both; text-align: center;"><a href="https://1.bp.blogspot.com/-IwgT09HblbI/YO9IOS3ov-I/AAAAAAAAIDo/UQpiYvg_POwJJKGE7qVc-QYUkRwPL28mACLcBGAsYHQ/s1920/Cattura.PNG" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="1030" data-original-width="1920" height="344" src="https://1.bp.blogspot.com/-IwgT09HblbI/YO9IOS3ov-I/AAAAAAAAIDo/UQpiYvg_POwJJKGE7qVc-QYUkRwPL28mACLcBGAsYHQ/w640-h344/Cattura.PNG" width="640" /></a></div><div><br /></div><div><br /></div><div>Collegate allo switch la variabile ledStatus</div><br /><p></p><div class="separator" style="clear: both; text-align: center;"><a href="https://lh3.googleusercontent.com/-YQT58u3D17o/YO9LLQNgIXI/AAAAAAAAIDw/r4AqxdpLyXQWAk6UYNwgaSyhY7qkOTArgCLcBGAsYHQ/image.png" style="margin-left: 1em; margin-right: 1em;"><img alt="" data-original-height="1030" data-original-width="1920" height="344" src="https://lh3.googleusercontent.com/-YQT58u3D17o/YO9LLQNgIXI/AAAAAAAAIDw/r4AqxdpLyXQWAk6UYNwgaSyhY7qkOTArgCLcBGAsYHQ/w640-h344/image.png" width="640" /></a></div><br />Ora non vi resta che provarlo, infatti agendo sullo switch il led sul vostro Wemos si accenderà.<p></p><br /><br />Questo è tutto,<br />per qualsiasi domanda lascia pure un commento.<br /><br />Seguimi sulle mie pagine per rimanere sempre aggiornato sui nuovi post!<p><br /></p><p>Fonti:</p><div style="text-align: left;"><a href="https://blog.arduino.cc/2021/05/28/arduino-cloud-now-supports-esp32-devices/">notizia supporto esp32<br /></a><a href="https://docs.arduino.cc/cloud/iot-cloud/tutorials/iot-cloud-getting-started">tutorial ufficiale (in inglese)</a></div>Danielehttp://www.blogger.com/profile/09720964861202313121noreply@blogger.com0tag:blogger.com,1999:blog-390453114990638376.post-68799723780876244212021-06-17T22:08:00.004+02:002021-06-17T22:08:57.746+02:00L'orologio di Arduino: RTC DS3231<div dir="ltr" style="text-align: left;" trbidi="on">
Ciao!</div><div dir="ltr" style="text-align: left;" trbidi="on">in questo post vedremo come interfacciare ad Arduino il molto popolare modulo RTC basato sul chip DS3231 (<a href="https://datasheets.maximintegrated.com/en/ds/DS3231.pdf">datasheet</a>)<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://1.bp.blogspot.com/-K3EpdfFHi2I/XpG49iq-9cI/AAAAAAAAHDs/G9fjX29yC0s0RWacZJiNxL6yKt6YKqmOgCLcBGAsYHQ/s1600/s-l1600.jpg" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="1000" data-original-width="1000" height="320" src="https://1.bp.blogspot.com/-K3EpdfFHi2I/XpG49iq-9cI/AAAAAAAAHDs/G9fjX29yC0s0RWacZJiNxL6yKt6YKqmOgCLcBGAsYHQ/s320/s-l1600.jpg" width="320" /></a></div>
<br />
<a name='more'></a><br />Esistono molti moduli RTC, alcuni dal costo anche elevato.</div><div dir="ltr" style="text-align: left;" trbidi="on">Il DS3231, nonostante il basso costo, offre una precisione valida per moltissime applicazioni.</div><div dir="ltr" style="text-align: left;" trbidi="on">L'errore indicato dal datasheet infatti è compreso tra 2 e 3.5ppm (in base alla temperatura ambientale).</div><div dir="ltr" style="text-align: left;" trbidi="on"><br /></div><div dir="ltr" style="text-align: left;" trbidi="on">Prendendo il dato peggiore (3.5ppm) l'errore in un giorno (86400 secondi) si calcola in questo modo:</div><div dir="ltr" style="text-align: left;" trbidi="on"><br /></div><div dir="ltr" style="text-align: left;" trbidi="on">3.5/1000000 = 0,0000035</div><div dir="ltr" style="text-align: left;" trbidi="on">86400 * 0,0000035 = 0,3024 secondi in un giorno.</div><div dir="ltr" style="text-align: left;" trbidi="on"><br /></div><div dir="ltr" style="text-align: left;" trbidi="on"><br /></div><div dir="ltr" style="text-align: left;" trbidi="on">Il modulo comunica tramite Arduino con il protocollo I2C, quindi il collegamento è quello tipico:</div><div dir="ltr" style="text-align: left;" trbidi="on"><br /></div><div dir="ltr" style="text-align: left;" trbidi="on"><br /></div><div class="separator" style="clear: both; text-align: center;"><a href="https://1.bp.blogspot.com/-kpMutqDjBro/YMpYxKM07qI/AAAAAAAAIB0/Ykf2ep-uhg44aO5P-QrpilqdS83wVmjmQCLcBGAsYHQ/s1236/rtc%2Bds3231_bb.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="948" data-original-width="1236" height="490" src="https://1.bp.blogspot.com/-kpMutqDjBro/YMpYxKM07qI/AAAAAAAAIB0/Ykf2ep-uhg44aO5P-QrpilqdS83wVmjmQCLcBGAsYHQ/w640-h490/rtc%2Bds3231_bb.png" width="640" /></a></div><br /><div dir="ltr" style="text-align: left;" trbidi="on"><br />
<br />
Per utilizzare il modulo è necessario scaricare ed installare questa <a href="https://github.com/rodan/ds3231">libreria</a><br />
<br />Un pratico esempio di sketch per l'utilizzo è il "rtc_ds3231.ino", disponibile tra gli esempi della libreria linkata sopra</div><div dir="ltr" style="text-align: left;" trbidi="on">
<br />
<ol class="arduino" style="background: rgb(247, 247, 247); color: #acacac; font-family: Consolas, Menlo, Monaco, "Lucida Console", "Liberation Mono", "DejaVu Sans Mono", "Bitstream Vera Sans Mono", monospace, serif; font-size: 12px; margin: 0px; padding: 0px 0px 0px 55px;">
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
<span class="co2" style="color: #339933;">#include <wire .h=""></wire></span><span style="color: #acacac;"><</span><span face="ui-monospace, SFMono-Regular, "SF Mono", Consolas, "Liberation Mono", Menlo, monospace" style="color: #032f62; white-space: pre;">Wire.h</span><span class="pl-pds" face="ui-monospace, SFMono-Regular, "SF Mono", Consolas, "Liberation Mono", Menlo, monospace" style="box-sizing: border-box; color: #032f62; white-space: pre;">></span></div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
<span class="co2" style="color: #339933;">#include "ds3231.h"</span></div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
</div>
</li>
<li class="li2" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de2" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
<span class="co2" style="color: #339933;">#define BUFF_MAX 128</span></div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
</div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
uint8_t Time<span class="br0" style="color: #009900;">[</span><span class="nu0" style="color: #0000dd;">8</span><span class="br0" style="color: #009900;">]</span><span class="sy0" style="color: #339933;">;</span></div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
<span class="kw4" style="color: #993333;">char</span> recv<span class="br0" style="color: #009900;">[</span>BUFF_MAX<span class="br0" style="color: #009900;">]</span><span class="sy0" style="color: #339933;">;</span></div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
<span class="kw4" style="color: #993333;">unsigned</span> <span class="kw4" style="color: #993333;">int</span> recv_size <span class="sy0" style="color: #339933;">=</span> <span class="nu0" style="color: #0000dd;">0</span><span class="sy0" style="color: #339933;">;</span></div>
</li>
<li class="li2" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de2" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
<span class="kw4" style="color: #993333;">unsigned</span> <span class="kw4" style="color: #993333;">long</span> prev<span class="sy0" style="color: #339933;">,</span> interval <span class="sy0" style="color: #339933;">=</span> <span class="nu0" style="color: #0000dd;">5000</span><span class="sy0" style="color: #339933;">;</span></div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
</div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
<span class="kw4" style="color: #993333;">void</span> parse_cmd<span class="br0" style="color: #009900;">(</span><span class="kw4" style="color: #993333;">char</span> <span class="sy0" style="color: #339933;">*</span>cmd<span class="sy0" style="color: #339933;">,</span> <span class="kw4" style="color: #993333;">int</span> cmdsize<span class="br0" style="color: #009900;">)</span><span class="sy0" style="color: #339933;">;</span></div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
</div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
<span class="kw4" style="color: #993333;">void</span> setup<span class="br0" style="color: #009900;">(</span><span class="br0" style="color: #009900;">)</span></div>
</li>
<li class="li2" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de2" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
<span class="br0" style="color: #009900;">{</span></div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
<span class="kw3" style="color: #000066;">Serial</span>.<span class="me1" style="color: #202020;">begin</span><span class="br0" style="color: #009900;">(</span><span class="nu0" style="color: #0000dd;">9600</span><span class="br0" style="color: #009900;">)</span><span class="sy0" style="color: #339933;">;</span></div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
Wire.<span class="me1" style="color: #202020;">begin</span><span class="br0" style="color: #009900;">(</span><span class="br0" style="color: #009900;">)</span><span class="sy0" style="color: #339933;">;</span></div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
DS3231_init<span class="br0" style="color: #009900;">(</span>DS3231_CONTROL_INTCN<span class="br0" style="color: #009900;">)</span><span class="sy0" style="color: #339933;">;</span></div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
memset<span class="br0" style="color: #009900;">(</span>recv<span class="sy0" style="color: #339933;">,</span> <span class="nu0" style="color: #0000dd;">0</span><span class="sy0" style="color: #339933;">,</span> BUFF_MAX<span class="br0" style="color: #009900;">)</span><span class="sy0" style="color: #339933;">;</span></div>
</li>
<li class="li2" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de2" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
<span class="kw3" style="color: #000066;">Serial</span>.<span class="me1" style="color: #202020;">println</span><span class="br0" style="color: #009900;">(</span><span class="st0" style="color: red;">"GET time"</span><span class="br0" style="color: #009900;">)</span><span class="sy0" style="color: #339933;">;</span></div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
<span class="br0" style="color: #009900;">}</span></div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
</div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
<span class="kw4" style="color: #993333;">void</span> loop<span class="br0" style="color: #009900;">(</span><span class="br0" style="color: #009900;">)</span></div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
<span class="br0" style="color: #009900;">{</span></div>
</li>
<li class="li2" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de2" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
<span class="kw4" style="color: #993333;">char</span> in<span class="sy0" style="color: #339933;">;</span></div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
<span class="kw4" style="color: #993333;">char</span> buff<span class="br0" style="color: #009900;">[</span>BUFF_MAX<span class="br0" style="color: #009900;">]</span><span class="sy0" style="color: #339933;">;</span></div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
<span class="kw4" style="color: #993333;">unsigned</span> <span class="kw4" style="color: #993333;">long</span> now <span class="sy0" style="color: #339933;">=</span> <span class="kw3" style="color: #000066;">millis</span><span class="br0" style="color: #009900;">(</span><span class="br0" style="color: #009900;">)</span><span class="sy0" style="color: #339933;">;</span></div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
struct ts t<span class="sy0" style="color: #339933;">;</span></div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
</div>
</li>
<li class="li2" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de2" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
<span class="co1" style="color: #666666; font-style: italic;">// show time once in a while</span></div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
<span class="kw1" style="color: #b1b100;">if</span> <span class="br0" style="color: #009900;">(</span><span class="br0" style="color: #009900;">(</span>now <span class="sy0" style="color: #339933;">-</span> prev <span class="sy0" style="color: #339933;">></span> interval<span class="br0" style="color: #009900;">)</span> <span class="sy0" style="color: #339933;">&&</span> <span class="br0" style="color: #009900;">(</span><span class="kw3" style="color: #000066;">Serial</span>.<span class="me1" style="color: #202020;">available</span><span class="br0" style="color: #009900;">(</span><span class="br0" style="color: #009900;">)</span> <span class="sy0" style="color: #339933;"><=</span> <span class="nu0" style="color: #0000dd;">0</span><span class="br0" style="color: #009900;">)</span><span class="br0" style="color: #009900;">)</span> <span class="br0" style="color: #009900;">{</span></div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
DS3231_get<span class="br0" style="color: #009900;">(</span><span class="sy0" style="color: #339933;">&</span>t<span class="br0" style="color: #009900;">)</span><span class="sy0" style="color: #339933;">;</span></div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
</div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
<span class="co1" style="color: #666666; font-style: italic;">// there is a compile time option in the library to include unixtime support</span></div>
</li>
<li class="li2" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de2" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
<span class="co2" style="color: #339933;">#ifdef CONFIG_UNIXTIME</span></div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
<span class="co2" style="color: #339933;">#ifdef __AVR__</span></div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
snprintf<span class="br0" style="color: #009900;">(</span>buff<span class="sy0" style="color: #339933;">,</span> BUFF_MAX<span class="sy0" style="color: #339933;">,</span> <span class="st0" style="color: red;">"%d.%02d.%02d %02d:%02d:%02d %ld"</span><span class="sy0" style="color: #339933;">,</span> t.<span class="me1" style="color: #202020;">year</span><span class="sy0" style="color: #339933;">,</span></div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
<span class="co2" style="color: #339933;">#error AVR</span></div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
<span class="co2" style="color: #339933;">#else</span></div>
</li>
<li class="li2" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de2" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
snprintf<span class="br0" style="color: #009900;">(</span>buff<span class="sy0" style="color: #339933;">,</span> BUFF_MAX<span class="sy0" style="color: #339933;">,</span> <span class="st0" style="color: red;">"%d.%02d.%02d %02d:%02d:%02d %d"</span><span class="sy0" style="color: #339933;">,</span> t.<span class="me1" style="color: #202020;">year</span><span class="sy0" style="color: #339933;">,</span></div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
<span class="co2" style="color: #339933;">#endif</span></div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
t.<span class="me1" style="color: #202020;">mon</span><span class="sy0" style="color: #339933;">,</span> t.<span class="me1" style="color: #202020;">mday</span><span class="sy0" style="color: #339933;">,</span> t.<span class="me1" style="color: #202020;">hour</span><span class="sy0" style="color: #339933;">,</span> t.<span class="kw3" style="color: #000066;">min</span><span class="sy0" style="color: #339933;">,</span> t.<span class="me1" style="color: #202020;">sec</span><span class="sy0" style="color: #339933;">,</span> t.<span class="me1" style="color: #202020;">unixtime</span><span class="br0" style="color: #009900;">)</span><span class="sy0" style="color: #339933;">;</span></div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
<span class="co2" style="color: #339933;">#else</span></div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
snprintf<span class="br0" style="color: #009900;">(</span>buff<span class="sy0" style="color: #339933;">,</span> BUFF_MAX<span class="sy0" style="color: #339933;">,</span> <span class="st0" style="color: red;">"%d.%02d.%02d %02d:%02d:%02d"</span><span class="sy0" style="color: #339933;">,</span> t.<span class="me1" style="color: #202020;">year</span><span class="sy0" style="color: #339933;">,</span></div>
</li>
<li class="li2" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de2" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
t.<span class="me1" style="color: #202020;">mon</span><span class="sy0" style="color: #339933;">,</span> t.<span class="me1" style="color: #202020;">mday</span><span class="sy0" style="color: #339933;">,</span> t.<span class="me1" style="color: #202020;">hour</span><span class="sy0" style="color: #339933;">,</span> t.<span class="kw3" style="color: #000066;">min</span><span class="sy0" style="color: #339933;">,</span> t.<span class="me1" style="color: #202020;">sec</span><span class="br0" style="color: #009900;">)</span><span class="sy0" style="color: #339933;">;</span></div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
<span class="co2" style="color: #339933;">#endif</span></div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
</div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
<span class="kw3" style="color: #000066;">Serial</span>.<span class="me1" style="color: #202020;">println</span><span class="br0" style="color: #009900;">(</span>buff<span class="br0" style="color: #009900;">)</span><span class="sy0" style="color: #339933;">;</span></div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
prev <span class="sy0" style="color: #339933;">=</span> now<span class="sy0" style="color: #339933;">;</span></div>
</li>
<li class="li2" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de2" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
<span class="br0" style="color: #009900;">}</span></div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
</div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
<span class="kw1" style="color: #b1b100;">if</span> <span class="br0" style="color: #009900;">(</span><span class="kw3" style="color: #000066;">Serial</span>.<span class="me1" style="color: #202020;">available</span><span class="br0" style="color: #009900;">(</span><span class="br0" style="color: #009900;">)</span> <span class="sy0" style="color: #339933;">></span> <span class="nu0" style="color: #0000dd;">0</span><span class="br0" style="color: #009900;">)</span> <span class="br0" style="color: #009900;">{</span></div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
in <span class="sy0" style="color: #339933;">=</span> <span class="kw3" style="color: #000066;">Serial</span>.<span class="me1" style="color: #202020;">read</span><span class="br0" style="color: #009900;">(</span><span class="br0" style="color: #009900;">)</span><span class="sy0" style="color: #339933;">;</span></div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
</div>
</li>
<li class="li2" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de2" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
<span class="kw1" style="color: #b1b100;">if</span> <span class="br0" style="color: #009900;">(</span><span class="br0" style="color: #009900;">(</span>in <span class="sy0" style="color: #339933;">==</span> <span class="nu0" style="color: #0000dd;">10</span> <span class="sy0" style="color: #339933;">||</span> in <span class="sy0" style="color: #339933;">==</span> <span class="nu0" style="color: #0000dd;">13</span><span class="br0" style="color: #009900;">)</span> <span class="sy0" style="color: #339933;">&&</span> <span class="br0" style="color: #009900;">(</span>recv_size <span class="sy0" style="color: #339933;">></span> <span class="nu0" style="color: #0000dd;">0</span><span class="br0" style="color: #009900;">)</span><span class="br0" style="color: #009900;">)</span> <span class="br0" style="color: #009900;">{</span></div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
parse_cmd<span class="br0" style="color: #009900;">(</span>recv<span class="sy0" style="color: #339933;">,</span> recv_size<span class="br0" style="color: #009900;">)</span><span class="sy0" style="color: #339933;">;</span></div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
recv_size <span class="sy0" style="color: #339933;">=</span> <span class="nu0" style="color: #0000dd;">0</span><span class="sy0" style="color: #339933;">;</span></div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
recv<span class="br0" style="color: #009900;">[</span><span class="nu0" style="color: #0000dd;">0</span><span class="br0" style="color: #009900;">]</span> <span class="sy0" style="color: #339933;">=</span> <span class="nu0" style="color: #0000dd;">0</span><span class="sy0" style="color: #339933;">;</span></div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
<span class="br0" style="color: #009900;">}</span> <span class="kw1" style="color: #b1b100;">else</span> <span class="kw1" style="color: #b1b100;">if</span> <span class="br0" style="color: #009900;">(</span>in <span class="sy0" style="color: #339933;"><</span> <span class="nu0" style="color: #0000dd;">48</span> <span class="sy0" style="color: #339933;">||</span> in <span class="sy0" style="color: #339933;">></span> <span class="nu0" style="color: #0000dd;">122</span><span class="br0" style="color: #009900;">)</span> <span class="br0" style="color: #009900;">{</span><span class="sy0" style="color: #339933;">;</span> <span class="co1" style="color: #666666; font-style: italic;">// ignore ~[0-9A-Za-z]</span></div>
</li>
<li class="li2" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de2" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
<span class="br0" style="color: #009900;">}</span> <span class="kw1" style="color: #b1b100;">else</span> <span class="kw1" style="color: #b1b100;">if</span> <span class="br0" style="color: #009900;">(</span>recv_size <span class="sy0" style="color: #339933;">></span> BUFF_MAX <span class="sy0" style="color: #339933;">-</span> <span class="nu0" style="color: #0000dd;">2</span><span class="br0" style="color: #009900;">)</span> <span class="br0" style="color: #009900;">{</span> <span class="co1" style="color: #666666; font-style: italic;">// drop lines that are too long</span></div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
<span class="co1" style="color: #666666; font-style: italic;">// drop</span></div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
recv_size <span class="sy0" style="color: #339933;">=</span> <span class="nu0" style="color: #0000dd;">0</span><span class="sy0" style="color: #339933;">;</span></div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
recv<span class="br0" style="color: #009900;">[</span><span class="nu0" style="color: #0000dd;">0</span><span class="br0" style="color: #009900;">]</span> <span class="sy0" style="color: #339933;">=</span> <span class="nu0" style="color: #0000dd;">0</span><span class="sy0" style="color: #339933;">;</span></div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
<span class="br0" style="color: #009900;">}</span> <span class="kw1" style="color: #b1b100;">else</span> <span class="kw1" style="color: #b1b100;">if</span> <span class="br0" style="color: #009900;">(</span>recv_size <span class="sy0" style="color: #339933;"><</span> BUFF_MAX <span class="sy0" style="color: #339933;">-</span> <span class="nu0" style="color: #0000dd;">2</span><span class="br0" style="color: #009900;">)</span> <span class="br0" style="color: #009900;">{</span></div>
</li>
<li class="li2" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de2" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
recv<span class="br0" style="color: #009900;">[</span>recv_size<span class="br0" style="color: #009900;">]</span> <span class="sy0" style="color: #339933;">=</span> in<span class="sy0" style="color: #339933;">;</span></div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
recv<span class="br0" style="color: #009900;">[</span>recv_size <span class="sy0" style="color: #339933;">+</span> <span class="nu0" style="color: #0000dd;">1</span><span class="br0" style="color: #009900;">]</span> <span class="sy0" style="color: #339933;">=</span> <span class="nu0" style="color: #0000dd;">0</span><span class="sy0" style="color: #339933;">;</span></div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
recv_size <span class="sy0" style="color: #339933;">+=</span> <span class="nu0" style="color: #0000dd;">1</span><span class="sy0" style="color: #339933;">;</span></div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
<span class="br0" style="color: #009900;">}</span></div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
</div>
</li>
<li class="li2" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de2" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
<span class="br0" style="color: #009900;">}</span></div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
<span class="br0" style="color: #009900;">}</span></div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
</div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
<span class="kw4" style="color: #993333;">void</span> parse_cmd<span class="br0" style="color: #009900;">(</span><span class="kw4" style="color: #993333;">char</span> <span class="sy0" style="color: #339933;">*</span>cmd<span class="sy0" style="color: #339933;">,</span> <span class="kw4" style="color: #993333;">int</span> cmdsize<span class="br0" style="color: #009900;">)</span></div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
<span class="br0" style="color: #009900;">{</span></div>
</li>
<li class="li2" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de2" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
uint8_t i<span class="sy0" style="color: #339933;">;</span></div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
uint8_t reg_val<span class="sy0" style="color: #339933;">;</span></div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
<span class="kw4" style="color: #993333;">char</span> buff<span class="br0" style="color: #009900;">[</span>BUFF_MAX<span class="br0" style="color: #009900;">]</span><span class="sy0" style="color: #339933;">;</span></div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
struct ts t<span class="sy0" style="color: #339933;">;</span></div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
</div>
</li>
<li class="li2" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de2" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
<span class="co1" style="color: #666666; font-style: italic;">//snprintf(buff, BUFF_MAX, "cmd was '%s' %d\n", cmd, cmdsize);</span></div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
<span class="co1" style="color: #666666; font-style: italic;">//Serial.print(buff);</span></div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
</div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
<span class="co1" style="color: #666666; font-style: italic;">// TssmmhhWDDMMYYYY aka set time</span></div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
<span class="kw1" style="color: #b1b100;">if</span> <span class="br0" style="color: #009900;">(</span>cmd<span class="br0" style="color: #009900;">[</span><span class="nu0" style="color: #0000dd;">0</span><span class="br0" style="color: #009900;">]</span> <span class="sy0" style="color: #339933;">==</span> <span class="nu0" style="color: #0000dd;">84</span> <span class="sy0" style="color: #339933;">&&</span> cmdsize <span class="sy0" style="color: #339933;">==</span> <span class="nu0" style="color: #0000dd;">16</span><span class="br0" style="color: #009900;">)</span> <span class="br0" style="color: #009900;">{</span></div>
</li>
<li class="li2" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de2" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
<span class="co1" style="color: #666666; font-style: italic;">//T355720619112011</span></div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
t.<span class="me1" style="color: #202020;">sec</span> <span class="sy0" style="color: #339933;">=</span> inp2toi<span class="br0" style="color: #009900;">(</span>cmd<span class="sy0" style="color: #339933;">,</span> <span class="nu0" style="color: #0000dd;">1</span><span class="br0" style="color: #009900;">)</span><span class="sy0" style="color: #339933;">;</span></div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
t.<span class="kw3" style="color: #000066;">min</span> <span class="sy0" style="color: #339933;">=</span> inp2toi<span class="br0" style="color: #009900;">(</span>cmd<span class="sy0" style="color: #339933;">,</span> <span class="nu0" style="color: #0000dd;">3</span><span class="br0" style="color: #009900;">)</span><span class="sy0" style="color: #339933;">;</span></div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
t.<span class="me1" style="color: #202020;">hour</span> <span class="sy0" style="color: #339933;">=</span> inp2toi<span class="br0" style="color: #009900;">(</span>cmd<span class="sy0" style="color: #339933;">,</span> <span class="nu0" style="color: #0000dd;">5</span><span class="br0" style="color: #009900;">)</span><span class="sy0" style="color: #339933;">;</span></div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
t.<span class="me1" style="color: #202020;">wday</span> <span class="sy0" style="color: #339933;">=</span> cmd<span class="br0" style="color: #009900;">[</span><span class="nu0" style="color: #0000dd;">7</span><span class="br0" style="color: #009900;">]</span> <span class="sy0" style="color: #339933;">-</span> <span class="nu0" style="color: #0000dd;">48</span><span class="sy0" style="color: #339933;">;</span></div>
</li>
<li class="li2" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de2" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
t.<span class="me1" style="color: #202020;">mday</span> <span class="sy0" style="color: #339933;">=</span> inp2toi<span class="br0" style="color: #009900;">(</span>cmd<span class="sy0" style="color: #339933;">,</span> <span class="nu0" style="color: #0000dd;">8</span><span class="br0" style="color: #009900;">)</span><span class="sy0" style="color: #339933;">;</span></div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
t.<span class="me1" style="color: #202020;">mon</span> <span class="sy0" style="color: #339933;">=</span> inp2toi<span class="br0" style="color: #009900;">(</span>cmd<span class="sy0" style="color: #339933;">,</span> <span class="nu0" style="color: #0000dd;">10</span><span class="br0" style="color: #009900;">)</span><span class="sy0" style="color: #339933;">;</span></div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
t.<span class="me1" style="color: #202020;">year</span> <span class="sy0" style="color: #339933;">=</span> inp2toi<span class="br0" style="color: #009900;">(</span>cmd<span class="sy0" style="color: #339933;">,</span> <span class="nu0" style="color: #0000dd;">12</span><span class="br0" style="color: #009900;">)</span> <span class="sy0" style="color: #339933;">*</span> <span class="nu0" style="color: #0000dd;">100</span> <span class="sy0" style="color: #339933;">+</span> inp2toi<span class="br0" style="color: #009900;">(</span>cmd<span class="sy0" style="color: #339933;">,</span> <span class="nu0" style="color: #0000dd;">14</span><span class="br0" style="color: #009900;">)</span><span class="sy0" style="color: #339933;">;</span></div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
DS3231_set<span class="br0" style="color: #009900;">(</span>t<span class="br0" style="color: #009900;">)</span><span class="sy0" style="color: #339933;">;</span></div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
<span class="kw3" style="color: #000066;">Serial</span>.<span class="me1" style="color: #202020;">println</span><span class="br0" style="color: #009900;">(</span><span class="st0" style="color: red;">"OK"</span><span class="br0" style="color: #009900;">)</span><span class="sy0" style="color: #339933;">;</span></div>
</li>
<li class="li2" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de2" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
<span class="br0" style="color: #009900;">}</span> <span class="kw1" style="color: #b1b100;">else</span> <span class="kw1" style="color: #b1b100;">if</span> <span class="br0" style="color: #009900;">(</span>cmd<span class="br0" style="color: #009900;">[</span><span class="nu0" style="color: #0000dd;">0</span><span class="br0" style="color: #009900;">]</span> <span class="sy0" style="color: #339933;">==</span> <span class="nu0" style="color: #0000dd;">49</span> <span class="sy0" style="color: #339933;">&&</span> cmdsize <span class="sy0" style="color: #339933;">==</span> <span class="nu0" style="color: #0000dd;">1</span><span class="br0" style="color: #009900;">)</span> <span class="br0" style="color: #009900;">{</span> <span class="co1" style="color: #666666; font-style: italic;">// "1" get alarm 1</span></div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
DS3231_get_a1<span class="br0" style="color: #009900;">(</span><span class="sy0" style="color: #339933;">&</span>buff<span class="br0" style="color: #009900;">[</span><span class="nu0" style="color: #0000dd;">0</span><span class="br0" style="color: #009900;">]</span><span class="sy0" style="color: #339933;">,</span> <span class="nu0" style="color: #0000dd;">59</span><span class="br0" style="color: #009900;">)</span><span class="sy0" style="color: #339933;">;</span></div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
<span class="kw3" style="color: #000066;">Serial</span>.<span class="me1" style="color: #202020;">println</span><span class="br0" style="color: #009900;">(</span>buff<span class="br0" style="color: #009900;">)</span><span class="sy0" style="color: #339933;">;</span></div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
<span class="br0" style="color: #009900;">}</span> <span class="kw1" style="color: #b1b100;">else</span> <span class="kw1" style="color: #b1b100;">if</span> <span class="br0" style="color: #009900;">(</span>cmd<span class="br0" style="color: #009900;">[</span><span class="nu0" style="color: #0000dd;">0</span><span class="br0" style="color: #009900;">]</span> <span class="sy0" style="color: #339933;">==</span> <span class="nu0" style="color: #0000dd;">50</span> <span class="sy0" style="color: #339933;">&&</span> cmdsize <span class="sy0" style="color: #339933;">==</span> <span class="nu0" style="color: #0000dd;">1</span><span class="br0" style="color: #009900;">)</span> <span class="br0" style="color: #009900;">{</span> <span class="co1" style="color: #666666; font-style: italic;">// "2" get alarm 1</span></div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
DS3231_get_a2<span class="br0" style="color: #009900;">(</span><span class="sy0" style="color: #339933;">&</span>buff<span class="br0" style="color: #009900;">[</span><span class="nu0" style="color: #0000dd;">0</span><span class="br0" style="color: #009900;">]</span><span class="sy0" style="color: #339933;">,</span> <span class="nu0" style="color: #0000dd;">59</span><span class="br0" style="color: #009900;">)</span><span class="sy0" style="color: #339933;">;</span></div>
</li>
<li class="li2" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de2" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
<span class="kw3" style="color: #000066;">Serial</span>.<span class="me1" style="color: #202020;">println</span><span class="br0" style="color: #009900;">(</span>buff<span class="br0" style="color: #009900;">)</span><span class="sy0" style="color: #339933;">;</span></div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
<span class="br0" style="color: #009900;">}</span> <span class="kw1" style="color: #b1b100;">else</span> <span class="kw1" style="color: #b1b100;">if</span> <span class="br0" style="color: #009900;">(</span>cmd<span class="br0" style="color: #009900;">[</span><span class="nu0" style="color: #0000dd;">0</span><span class="br0" style="color: #009900;">]</span> <span class="sy0" style="color: #339933;">==</span> <span class="nu0" style="color: #0000dd;">51</span> <span class="sy0" style="color: #339933;">&&</span> cmdsize <span class="sy0" style="color: #339933;">==</span> <span class="nu0" style="color: #0000dd;">1</span><span class="br0" style="color: #009900;">)</span> <span class="br0" style="color: #009900;">{</span> <span class="co1" style="color: #666666; font-style: italic;">// "3" get aging register</span></div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
<span class="kw3" style="color: #000066;">Serial</span>.<span class="me1" style="color: #202020;">print</span><span class="br0" style="color: #009900;">(</span><span class="st0" style="color: red;">"aging reg is "</span><span class="br0" style="color: #009900;">)</span><span class="sy0" style="color: #339933;">;</span></div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
<span class="kw3" style="color: #000066;">Serial</span>.<span class="me1" style="color: #202020;">println</span><span class="br0" style="color: #009900;">(</span>DS3231_get_aging<span class="br0" style="color: #009900;">(</span><span class="br0" style="color: #009900;">)</span><span class="sy0" style="color: #339933;">,</span> DEC<span class="br0" style="color: #009900;">)</span><span class="sy0" style="color: #339933;">;</span></div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
<span class="br0" style="color: #009900;">}</span> <span class="kw1" style="color: #b1b100;">else</span> <span class="kw1" style="color: #b1b100;">if</span> <span class="br0" style="color: #009900;">(</span>cmd<span class="br0" style="color: #009900;">[</span><span class="nu0" style="color: #0000dd;">0</span><span class="br0" style="color: #009900;">]</span> <span class="sy0" style="color: #339933;">==</span> <span class="nu0" style="color: #0000dd;">65</span> <span class="sy0" style="color: #339933;">&&</span> cmdsize <span class="sy0" style="color: #339933;">==</span> <span class="nu0" style="color: #0000dd;">9</span><span class="br0" style="color: #009900;">)</span> <span class="br0" style="color: #009900;">{</span> <span class="co1" style="color: #666666; font-style: italic;">// "A" set alarm 1</span></div>
</li>
<li class="li2" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de2" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
DS3231_set_creg<span class="br0" style="color: #009900;">(</span>DS3231_CONTROL_INTCN <span class="sy0" style="color: #339933;">|</span> DS3231_CONTROL_A1IE<span class="br0" style="color: #009900;">)</span><span class="sy0" style="color: #339933;">;</span></div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
<span class="co1" style="color: #666666; font-style: italic;">//ASSMMHHDD</span></div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
<span class="kw1" style="color: #b1b100;">for</span> <span class="br0" style="color: #009900;">(</span>i <span class="sy0" style="color: #339933;">=</span> <span class="nu0" style="color: #0000dd;">0</span><span class="sy0" style="color: #339933;">;</span> i <span class="sy0" style="color: #339933;"><</span> <span class="nu0" style="color: #0000dd;">4</span><span class="sy0" style="color: #339933;">;</span> i<span class="sy0" style="color: #339933;">++</span><span class="br0" style="color: #009900;">)</span> <span class="br0" style="color: #009900;">{</span></div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
Time<span class="br0" style="color: #009900;">[</span>i<span class="br0" style="color: #009900;">]</span> <span class="sy0" style="color: #339933;">=</span> <span class="br0" style="color: #009900;">(</span>cmd<span class="br0" style="color: #009900;">[</span><span class="nu0" style="color: #0000dd;">2</span> <span class="sy0" style="color: #339933;">*</span> i <span class="sy0" style="color: #339933;">+</span> <span class="nu0" style="color: #0000dd;">1</span><span class="br0" style="color: #009900;">]</span> <span class="sy0" style="color: #339933;">-</span> <span class="nu0" style="color: #0000dd;">48</span><span class="br0" style="color: #009900;">)</span> <span class="sy0" style="color: #339933;">*</span> <span class="nu0" style="color: #0000dd;">10</span> <span class="sy0" style="color: #339933;">+</span> cmd<span class="br0" style="color: #009900;">[</span><span class="nu0" style="color: #0000dd;">2</span> <span class="sy0" style="color: #339933;">*</span> i <span class="sy0" style="color: #339933;">+</span> <span class="nu0" style="color: #0000dd;">2</span><span class="br0" style="color: #009900;">]</span> <span class="sy0" style="color: #339933;">-</span> <span class="nu0" style="color: #0000dd;">48</span><span class="sy0" style="color: #339933;">;</span> <span class="co1" style="color: #666666; font-style: italic;">// ss, mm, hh, dd</span></div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
<span class="br0" style="color: #009900;">}</span></div>
</li>
<li class="li2" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de2" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
uint8_t flags<span class="br0" style="color: #009900;">[</span><span class="nu0" style="color: #0000dd;">5</span><span class="br0" style="color: #009900;">]</span> <span class="sy0" style="color: #339933;">=</span> <span class="br0" style="color: #009900;">{</span> <span class="nu0" style="color: #0000dd;">0</span><span class="sy0" style="color: #339933;">,</span> <span class="nu0" style="color: #0000dd;">0</span><span class="sy0" style="color: #339933;">,</span> <span class="nu0" style="color: #0000dd;">0</span><span class="sy0" style="color: #339933;">,</span> <span class="nu0" style="color: #0000dd;">0</span><span class="sy0" style="color: #339933;">,</span> <span class="nu0" style="color: #0000dd;">0</span> <span class="br0" style="color: #009900;">}</span><span class="sy0" style="color: #339933;">;</span></div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
DS3231_set_a1<span class="br0" style="color: #009900;">(</span>Time<span class="br0" style="color: #009900;">[</span><span class="nu0" style="color: #0000dd;">0</span><span class="br0" style="color: #009900;">]</span><span class="sy0" style="color: #339933;">,</span> Time<span class="br0" style="color: #009900;">[</span><span class="nu0" style="color: #0000dd;">1</span><span class="br0" style="color: #009900;">]</span><span class="sy0" style="color: #339933;">,</span> Time<span class="br0" style="color: #009900;">[</span><span class="nu0" style="color: #0000dd;">2</span><span class="br0" style="color: #009900;">]</span><span class="sy0" style="color: #339933;">,</span> Time<span class="br0" style="color: #009900;">[</span><span class="nu0" style="color: #0000dd;">3</span><span class="br0" style="color: #009900;">]</span><span class="sy0" style="color: #339933;">,</span> flags<span class="br0" style="color: #009900;">)</span><span class="sy0" style="color: #339933;">;</span></div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
DS3231_get_a1<span class="br0" style="color: #009900;">(</span><span class="sy0" style="color: #339933;">&</span>buff<span class="br0" style="color: #009900;">[</span><span class="nu0" style="color: #0000dd;">0</span><span class="br0" style="color: #009900;">]</span><span class="sy0" style="color: #339933;">,</span> <span class="nu0" style="color: #0000dd;">59</span><span class="br0" style="color: #009900;">)</span><span class="sy0" style="color: #339933;">;</span></div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
<span class="kw3" style="color: #000066;">Serial</span>.<span class="me1" style="color: #202020;">println</span><span class="br0" style="color: #009900;">(</span>buff<span class="br0" style="color: #009900;">)</span><span class="sy0" style="color: #339933;">;</span></div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
<span class="br0" style="color: #009900;">}</span> <span class="kw1" style="color: #b1b100;">else</span> <span class="kw1" style="color: #b1b100;">if</span> <span class="br0" style="color: #009900;">(</span>cmd<span class="br0" style="color: #009900;">[</span><span class="nu0" style="color: #0000dd;">0</span><span class="br0" style="color: #009900;">]</span> <span class="sy0" style="color: #339933;">==</span> <span class="nu0" style="color: #0000dd;">66</span> <span class="sy0" style="color: #339933;">&&</span> cmdsize <span class="sy0" style="color: #339933;">==</span> <span class="nu0" style="color: #0000dd;">7</span><span class="br0" style="color: #009900;">)</span> <span class="br0" style="color: #009900;">{</span> <span class="co1" style="color: #666666; font-style: italic;">// "B" Set Alarm 2</span></div>
</li>
<li class="li2" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de2" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
DS3231_set_creg<span class="br0" style="color: #009900;">(</span>DS3231_CONTROL_INTCN <span class="sy0" style="color: #339933;">|</span> DS3231_CONTROL_A2IE<span class="br0" style="color: #009900;">)</span><span class="sy0" style="color: #339933;">;</span></div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
<span class="co1" style="color: #666666; font-style: italic;">//BMMHHDD</span></div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
<span class="kw1" style="color: #b1b100;">for</span> <span class="br0" style="color: #009900;">(</span>i <span class="sy0" style="color: #339933;">=</span> <span class="nu0" style="color: #0000dd;">0</span><span class="sy0" style="color: #339933;">;</span> i <span class="sy0" style="color: #339933;"><</span> <span class="nu0" style="color: #0000dd;">4</span><span class="sy0" style="color: #339933;">;</span> i<span class="sy0" style="color: #339933;">++</span><span class="br0" style="color: #009900;">)</span> <span class="br0" style="color: #009900;">{</span></div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
Time<span class="br0" style="color: #009900;">[</span>i<span class="br0" style="color: #009900;">]</span> <span class="sy0" style="color: #339933;">=</span> <span class="br0" style="color: #009900;">(</span>cmd<span class="br0" style="color: #009900;">[</span><span class="nu0" style="color: #0000dd;">2</span> <span class="sy0" style="color: #339933;">*</span> i <span class="sy0" style="color: #339933;">+</span> <span class="nu0" style="color: #0000dd;">1</span><span class="br0" style="color: #009900;">]</span> <span class="sy0" style="color: #339933;">-</span> <span class="nu0" style="color: #0000dd;">48</span><span class="br0" style="color: #009900;">)</span> <span class="sy0" style="color: #339933;">*</span> <span class="nu0" style="color: #0000dd;">10</span> <span class="sy0" style="color: #339933;">+</span> cmd<span class="br0" style="color: #009900;">[</span><span class="nu0" style="color: #0000dd;">2</span> <span class="sy0" style="color: #339933;">*</span> i <span class="sy0" style="color: #339933;">+</span> <span class="nu0" style="color: #0000dd;">2</span><span class="br0" style="color: #009900;">]</span> <span class="sy0" style="color: #339933;">-</span> <span class="nu0" style="color: #0000dd;">48</span><span class="sy0" style="color: #339933;">;</span> <span class="co1" style="color: #666666; font-style: italic;">// mm, hh, dd</span></div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
<span class="br0" style="color: #009900;">}</span></div>
</li>
<li class="li2" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de2" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
uint8_t flags<span class="br0" style="color: #009900;">[</span><span class="nu0" style="color: #0000dd;">5</span><span class="br0" style="color: #009900;">]</span> <span class="sy0" style="color: #339933;">=</span> <span class="br0" style="color: #009900;">{</span> <span class="nu0" style="color: #0000dd;">0</span><span class="sy0" style="color: #339933;">,</span> <span class="nu0" style="color: #0000dd;">0</span><span class="sy0" style="color: #339933;">,</span> <span class="nu0" style="color: #0000dd;">0</span><span class="sy0" style="color: #339933;">,</span> <span class="nu0" style="color: #0000dd;">0</span> <span class="br0" style="color: #009900;">}</span><span class="sy0" style="color: #339933;">;</span></div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
DS3231_set_a2<span class="br0" style="color: #009900;">(</span>Time<span class="br0" style="color: #009900;">[</span><span class="nu0" style="color: #0000dd;">0</span><span class="br0" style="color: #009900;">]</span><span class="sy0" style="color: #339933;">,</span> Time<span class="br0" style="color: #009900;">[</span><span class="nu0" style="color: #0000dd;">1</span><span class="br0" style="color: #009900;">]</span><span class="sy0" style="color: #339933;">,</span> Time<span class="br0" style="color: #009900;">[</span><span class="nu0" style="color: #0000dd;">2</span><span class="br0" style="color: #009900;">]</span><span class="sy0" style="color: #339933;">,</span> flags<span class="br0" style="color: #009900;">)</span><span class="sy0" style="color: #339933;">;</span></div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
DS3231_get_a2<span class="br0" style="color: #009900;">(</span><span class="sy0" style="color: #339933;">&</span>buff<span class="br0" style="color: #009900;">[</span><span class="nu0" style="color: #0000dd;">0</span><span class="br0" style="color: #009900;">]</span><span class="sy0" style="color: #339933;">,</span> <span class="nu0" style="color: #0000dd;">59</span><span class="br0" style="color: #009900;">)</span><span class="sy0" style="color: #339933;">;</span></div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
<span class="kw3" style="color: #000066;">Serial</span>.<span class="me1" style="color: #202020;">println</span><span class="br0" style="color: #009900;">(</span>buff<span class="br0" style="color: #009900;">)</span><span class="sy0" style="color: #339933;">;</span></div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
<span class="br0" style="color: #009900;">}</span> <span class="kw1" style="color: #b1b100;">else</span> <span class="kw1" style="color: #b1b100;">if</span> <span class="br0" style="color: #009900;">(</span>cmd<span class="br0" style="color: #009900;">[</span><span class="nu0" style="color: #0000dd;">0</span><span class="br0" style="color: #009900;">]</span> <span class="sy0" style="color: #339933;">==</span> <span class="nu0" style="color: #0000dd;">67</span> <span class="sy0" style="color: #339933;">&&</span> cmdsize <span class="sy0" style="color: #339933;">==</span> <span class="nu0" style="color: #0000dd;">1</span><span class="br0" style="color: #009900;">)</span> <span class="br0" style="color: #009900;">{</span> <span class="co1" style="color: #666666; font-style: italic;">// "C" - get temperature register</span></div>
</li>
<li class="li2" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de2" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
<span class="kw3" style="color: #000066;">Serial</span>.<span class="me1" style="color: #202020;">print</span><span class="br0" style="color: #009900;">(</span><span class="st0" style="color: red;">"temperature reg is "</span><span class="br0" style="color: #009900;">)</span><span class="sy0" style="color: #339933;">;</span></div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
<span class="kw3" style="color: #000066;">Serial</span>.<span class="me1" style="color: #202020;">println</span><span class="br0" style="color: #009900;">(</span>DS3231_get_treg<span class="br0" style="color: #009900;">(</span><span class="br0" style="color: #009900;">)</span><span class="sy0" style="color: #339933;">,</span> DEC<span class="br0" style="color: #009900;">)</span><span class="sy0" style="color: #339933;">;</span></div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
<span class="br0" style="color: #009900;">}</span> <span class="kw1" style="color: #b1b100;">else</span> <span class="kw1" style="color: #b1b100;">if</span> <span class="br0" style="color: #009900;">(</span>cmd<span class="br0" style="color: #009900;">[</span><span class="nu0" style="color: #0000dd;">0</span><span class="br0" style="color: #009900;">]</span> <span class="sy0" style="color: #339933;">==</span> <span class="nu0" style="color: #0000dd;">68</span> <span class="sy0" style="color: #339933;">&&</span> cmdsize <span class="sy0" style="color: #339933;">==</span> <span class="nu0" style="color: #0000dd;">1</span><span class="br0" style="color: #009900;">)</span> <span class="br0" style="color: #009900;">{</span> <span class="co1" style="color: #666666; font-style: italic;">// "D" - reset status register alarm flags</span></div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
reg_val <span class="sy0" style="color: #339933;">=</span> DS3231_get_sreg<span class="br0" style="color: #009900;">(</span><span class="br0" style="color: #009900;">)</span><span class="sy0" style="color: #339933;">;</span></div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
reg_val <span class="sy0" style="color: #339933;">&=</span> B11111100<span class="sy0" style="color: #339933;">;</span></div>
</li>
<li class="li2" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de2" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
DS3231_set_sreg<span class="br0" style="color: #009900;">(</span>reg_val<span class="br0" style="color: #009900;">)</span><span class="sy0" style="color: #339933;">;</span></div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
<span class="br0" style="color: #009900;">}</span> <span class="kw1" style="color: #b1b100;">else</span> <span class="kw1" style="color: #b1b100;">if</span> <span class="br0" style="color: #009900;">(</span>cmd<span class="br0" style="color: #009900;">[</span><span class="nu0" style="color: #0000dd;">0</span><span class="br0" style="color: #009900;">]</span> <span class="sy0" style="color: #339933;">==</span> <span class="nu0" style="color: #0000dd;">70</span> <span class="sy0" style="color: #339933;">&&</span> cmdsize <span class="sy0" style="color: #339933;">==</span> <span class="nu0" style="color: #0000dd;">1</span><span class="br0" style="color: #009900;">)</span> <span class="br0" style="color: #009900;">{</span> <span class="co1" style="color: #666666; font-style: italic;">// "F" - custom fct</span></div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
reg_val <span class="sy0" style="color: #339933;">=</span> DS3231_get_addr<span class="br0" style="color: #009900;">(</span><span class="nu12" style="color: #208080;">0x5</span><span class="br0" style="color: #009900;">)</span><span class="sy0" style="color: #339933;">;</span></div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
<span class="kw3" style="color: #000066;">Serial</span>.<span class="me1" style="color: #202020;">print</span><span class="br0" style="color: #009900;">(</span><span class="st0" style="color: red;">"orig "</span><span class="br0" style="color: #009900;">)</span><span class="sy0" style="color: #339933;">;</span></div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
<span class="kw3" style="color: #000066;">Serial</span>.<span class="me1" style="color: #202020;">print</span><span class="br0" style="color: #009900;">(</span>reg_val<span class="sy0" style="color: #339933;">,</span>DEC<span class="br0" style="color: #009900;">)</span><span class="sy0" style="color: #339933;">;</span></div>
</li>
<li class="li2" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de2" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
<span class="kw3" style="color: #000066;">Serial</span>.<span class="me1" style="color: #202020;">print</span><span class="br0" style="color: #009900;">(</span><span class="st0" style="color: red;">"month is "</span><span class="br0" style="color: #009900;">)</span><span class="sy0" style="color: #339933;">;</span></div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
<span class="kw3" style="color: #000066;">Serial</span>.<span class="me1" style="color: #202020;">println</span><span class="br0" style="color: #009900;">(</span>bcdtodec<span class="br0" style="color: #009900;">(</span>reg_val <span class="sy0" style="color: #339933;">&</span> <span class="nu12" style="color: #208080;">0x1F</span><span class="br0" style="color: #009900;">)</span><span class="sy0" style="color: #339933;">,</span>DEC<span class="br0" style="color: #009900;">)</span><span class="sy0" style="color: #339933;">;</span></div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
<span class="br0" style="color: #009900;">}</span> <span class="kw1" style="color: #b1b100;">else</span> <span class="kw1" style="color: #b1b100;">if</span> <span class="br0" style="color: #009900;">(</span>cmd<span class="br0" style="color: #009900;">[</span><span class="nu0" style="color: #0000dd;">0</span><span class="br0" style="color: #009900;">]</span> <span class="sy0" style="color: #339933;">==</span> <span class="nu0" style="color: #0000dd;">71</span> <span class="sy0" style="color: #339933;">&&</span> cmdsize <span class="sy0" style="color: #339933;">==</span> <span class="nu0" style="color: #0000dd;">1</span><span class="br0" style="color: #009900;">)</span> <span class="br0" style="color: #009900;">{</span> <span class="co1" style="color: #666666; font-style: italic;">// "G" - set aging status register</span></div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
DS3231_set_aging<span class="br0" style="color: #009900;">(</span><span class="nu0" style="color: #0000dd;">0</span><span class="br0" style="color: #009900;">)</span><span class="sy0" style="color: #339933;">;</span></div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
<span class="br0" style="color: #009900;">}</span> <span class="kw1" style="color: #b1b100;">else</span> <span class="kw1" style="color: #b1b100;">if</span> <span class="br0" style="color: #009900;">(</span>cmd<span class="br0" style="color: #009900;">[</span><span class="nu0" style="color: #0000dd;">0</span><span class="br0" style="color: #009900;">]</span> <span class="sy0" style="color: #339933;">==</span> <span class="nu0" style="color: #0000dd;">83</span> <span class="sy0" style="color: #339933;">&&</span> cmdsize <span class="sy0" style="color: #339933;">==</span> <span class="nu0" style="color: #0000dd;">1</span><span class="br0" style="color: #009900;">)</span> <span class="br0" style="color: #009900;">{</span> <span class="co1" style="color: #666666; font-style: italic;">// "S" - get status register</span></div>
</li>
<li class="li2" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de2" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
<span class="kw3" style="color: #000066;">Serial</span>.<span class="me1" style="color: #202020;">print</span><span class="br0" style="color: #009900;">(</span><span class="st0" style="color: red;">"status reg is "</span><span class="br0" style="color: #009900;">)</span><span class="sy0" style="color: #339933;">;</span></div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
<span class="kw3" style="color: #000066;">Serial</span>.<span class="me1" style="color: #202020;">println</span><span class="br0" style="color: #009900;">(</span>DS3231_get_sreg<span class="br0" style="color: #009900;">(</span><span class="br0" style="color: #009900;">)</span><span class="sy0" style="color: #339933;">,</span> DEC<span class="br0" style="color: #009900;">)</span><span class="sy0" style="color: #339933;">;</span></div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
<span class="br0" style="color: #009900;">}</span> <span class="kw1" style="color: #b1b100;">else</span> <span class="br0" style="color: #009900;">{</span></div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
<span class="kw3" style="color: #000066;">Serial</span>.<span class="me1" style="color: #202020;">print</span><span class="br0" style="color: #009900;">(</span><span class="st0" style="color: red;">"unknown command prefix "</span><span class="br0" style="color: #009900;">)</span><span class="sy0" style="color: #339933;">;</span></div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
<span class="kw3" style="color: #000066;">Serial</span>.<span class="me1" style="color: #202020;">println</span><span class="br0" style="color: #009900;">(</span>cmd<span class="br0" style="color: #009900;">[</span><span class="nu0" style="color: #0000dd;">0</span><span class="br0" style="color: #009900;">]</span><span class="br0" style="color: #009900;">)</span><span class="sy0" style="color: #339933;">;</span></div>
</li>
<li class="li2" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de2" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
<span class="kw3" style="color: #000066;">Serial</span>.<span class="me1" style="color: #202020;">println</span><span class="br0" style="color: #009900;">(</span>cmd<span class="br0" style="color: #009900;">[</span><span class="nu0" style="color: #0000dd;">0</span><span class="br0" style="color: #009900;">]</span><span class="sy0" style="color: #339933;">,</span> DEC<span class="br0" style="color: #009900;">)</span><span class="sy0" style="color: #339933;">;</span></div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
<span class="br0" style="color: #009900;">}</span></div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
<span class="br0" style="color: #009900;">}</span></div>
</li>
</ol>
<div>
<span style="color: #009900; font-family: "consolas" , "menlo" , "monaco" , "lucida console" , "liberation mono" , "dejavu sans mono" , "bitstream vera sans mono" , monospace , serif;"><span style="font-size: 12px;"><br /></span></span></div>
<div>
<span style="color: #009900; font-family: "consolas" , "menlo" , "monaco" , "lucida console" , "liberation mono" , "dejavu sans mono" , "bitstream vera sans mono" , monospace , serif;"><span style="font-size: 12px;"><br /></span></span></div>
Ora aprite il serial monitor, vedrete una data ed ora (sbagliata),<br />
<div>
per correggerla digitate nel serial monitor quella corretta con la seguente sintassi:</div>
<div>
<br /></div>
<div>
<i>TssmmhhWDDMMYYYY</i></div>
<div>
<i><br /></i></div>
<div>
Dove:</div>
<div>
T = comando per settare la data e ora</div>
<div>
ss = secondi</div>
<div>
mm = minuti</div>
<div>
hh = ore</div>
<div>
W = giorno della settimana (1 = lunedì)</div>
<div>
DD = giorno</div>
<div>
MM = mese</div>
<div>
YYYY = anno</div>
<div>
<div>
<div>
<span style="color: #009900; font-family: "consolas" , "menlo" , "monaco" , "lucida console" , "liberation mono" , "dejavu sans mono" , "bitstream vera sans mono" , monospace , serif;"><span style="font-size: 12px;"><br /></span></span></div>
<div>
<span style="color: #009900; font-family: "consolas" , "menlo" , "monaco" , "lucida console" , "liberation mono" , "dejavu sans mono" , "bitstream vera sans mono" , monospace , serif;"><span style="font-size: 12px;"><br /></span></span>
<span style="color: #009900; font-family: "consolas" , "menlo" , "monaco" , "lucida console" , "liberation mono" , "dejavu sans mono" , "bitstream vera sans mono" , monospace , serif;"><span style="font-size: 12px;"><span style="color: black; font-family: "Times New Roman"; font-size: small;">Questo è tutto,</span><br style="color: black; font-family: "Times New Roman"; font-size: medium;" /><span style="color: black; font-family: "Times New Roman"; font-size: small;">per qualsiasi domanda lascia pure un commento.</span><br style="color: black; font-family: "Times New Roman"; font-size: medium;" /><br style="color: black; font-family: "Times New Roman"; font-size: medium;" /><span style="color: black; font-family: "Times New Roman"; font-size: small;">Seguimi sulle mie pagine per rimanere sempre aggiornato sui nuovi post!</span></span></span></div>
</div>
</div>
</div>
Danielehttp://www.blogger.com/profile/09720964861202313121noreply@blogger.com2tag:blogger.com,1999:blog-390453114990638376.post-48106815487086760172021-05-19T22:21:00.000+02:002021-05-19T22:21:56.877+02:00Come ottenere i file compilati (bin) con Arduino<p>Ciao!</p><p>questo è un semplice trucchetto che risulta particolarmente utile se avete intenzione di "flashare" il programma che avete realizzato, su molte schede rapidamente.</p><p><br /></p><div class="separator" style="clear: both; text-align: center;"><a href="https://1.bp.blogspot.com/-WB9bQ79UtUI/YJwvAjap8CI/AAAAAAAAH54/VaiUhxn-kU4QUorZ5Z5pld1s0lXEb6ixACLcBGAsYHQ/s400/normal_usbtinyisp_5%255B1%255D.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="300" data-original-width="400" height="300" src="https://1.bp.blogspot.com/-WB9bQ79UtUI/YJwvAjap8CI/AAAAAAAAH54/VaiUhxn-kU4QUorZ5Z5pld1s0lXEb6ixACLcBGAsYHQ/w400-h300/normal_usbtinyisp_5%255B1%255D.png" width="400" /></a></div><br /><span><a name='more'></a></span><div class="separator" style="clear: both; text-align: center;"><br /></div><p>Grazie a questa procedura sarà possibile evitare di ricompilare sempre lo stesso codice con l'IDE di Arduino, velocizzando di molto la procedura di caricamento. </p><p>Questo post infatti fa il paio con quest'altro visto recentemente, dove mostravo <a href="https://www.danielealberti.it/2021/04/caricare-software-su-esp8266-e-esp32.html">come caricare il programma su una scheda ESP8266 o ESP32</a>.</p><p>Infatti per eseguire l'operazione indicata nel post linkato avrete bisogno della "materia prima", cioè lo sketch compilato e gli eventuali altri file (SPIFFS o altro).</p><p>Ottenerlo è davvero molto semplice, è sufficiente compilare il codice con l'IDE Arduino (tasto con la spunta) e poi recarsi nella cartella dove l'ide "appoggia" temporaneamente i file compilati. Nel mio caso un percorso plausibile potrebbe essere: </p><p>C:\Users\nomeutente\AppData\Local\Temp\arduino_build_123456\MioSketch.ino.bin </p><p>Fate attenzione che la cartella AppData è nascosta di default in Windows, quindi per vederla dovete abilitare la visualizzazione dei file nascosti (pannello di controllo, opzioni esplora file, visualizza file cartelle nascosti).</p>Una volta ottenuti i file non vi resta che caricarli seguendo la procedura linkata sopra, ed il gioco è fatto.<br /><br />Questo è tutto,<br />per qualsiasi domanda lascia pure un commento.<br />Seguimi sulle mie pagine per rimanere sempre aggiornato sui nuovi post!Danielehttp://www.blogger.com/profile/09720964861202313121noreply@blogger.com0tag:blogger.com,1999:blog-390453114990638376.post-5673862487016679582021-04-23T12:53:00.001+02:002021-04-23T12:53:43.434+02:00Caricare software su ESP8266 e ESP32 senza Arduino IDE<p>Ciao!</p><p>Questa guida è utile nel caso abbiate già sviluppato il vostro firmware con Arduino e vogliate semplicemente caricare questo codice rapidamente all'interno di più schede dello stesso tipo. </p><p>Una situazione tipica che si verifica in fase di produzione.</p><p>Il sistema è molto simile a quello che abbiamo visto per <a href="https://www.danielealberti.it/2020/05/flashare-file-bin-su-nodemcu-senza.html">NodeMCU</a>, ma questo metodo è valido sia per la famiglia ESP8266 che per ESP32.</p><div class="separator" style="clear: both; text-align: center;"><a href="https://1.bp.blogspot.com/-Ub_lej8qfYk/YIHi0mcNO8I/AAAAAAAAH34/YsFNQz6Rpv0CzH1mJPkzSdlTqBdyJYBsgCLcBGAsYHQ/s800/esp32.jpg" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="800" data-original-width="800" height="400" src="https://1.bp.blogspot.com/-Ub_lej8qfYk/YIHi0mcNO8I/AAAAAAAAH34/YsFNQz6Rpv0CzH1mJPkzSdlTqBdyJYBsgCLcBGAsYHQ/w400-h400/esp32.jpg" width="400" /></a></div><br /><span><a name='more'></a></span><p><br /></p><p>Per prima cosa vi serve il <a href="https://www.espressif.com/sites/default/files/tools/flash_download_tool_v3.8.5.zip">flash download tool</a>, scaricatelo ed estraete lo zip.</p><p>Avviate il software, scegliete la modalità "Developer" e poi la scheda su cui volete caricare il vostro firmware, ad esempio ESP32</p><p><br /></p><div class="separator" style="clear: both; text-align: center;"><a href="https://1.bp.blogspot.com/-J5iBi-KHtwQ/YIHZxvkiT3I/AAAAAAAAH3k/-BnmS7CwL2QPNbZXXJ1uNtr4am4zjtgiwCLcBGAsYHQ/s357/1.JPG" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="341" data-original-width="357" height="306" src="https://1.bp.blogspot.com/-J5iBi-KHtwQ/YIHZxvkiT3I/AAAAAAAAH3k/-BnmS7CwL2QPNbZXXJ1uNtr4am4zjtgiwCLcBGAsYHQ/w320-h306/1.JPG" width="320" /></a></div><div class="separator" style="clear: both; text-align: center;"><br /></div><div class="separator" style="clear: both; text-align: center;"><br /></div><br /><div class="separator" style="clear: both; text-align: center;"><a href="https://1.bp.blogspot.com/-YEDklHecMww/YIHZxl25ifI/AAAAAAAAH3g/C-WusC1NYiMGiFqSTpLqjmeW166jvfW4QCLcBGAsYHQ/s679/2.JPG" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="679" data-original-width="357" height="640" src="https://1.bp.blogspot.com/-YEDklHecMww/YIHZxl25ifI/AAAAAAAAH3g/C-WusC1NYiMGiFqSTpLqjmeW166jvfW4QCLcBGAsYHQ/w336-h640/2.JPG" width="336" /></a></div><div class="separator" style="clear: both; text-align: center;"><br /></div><div class="separator" style="clear: both; text-align: center;"><br /></div><div class="separator" style="clear: both; text-align: left;">A questo punto non vi resta che selezionare il firmware compilato da caricare, indicare l'indirizzo in cui caricarlo (0x10000) e cliccare sul tasto START. </div><div class="separator" style="clear: both; text-align: left;"><br /></div><div class="separator" style="clear: both; text-align: left;"><br /></div><div class="separator" style="clear: both; text-align: left;"><span style="color: #3d85c6;">OPZIONALE:</span></div><div class="separator" style="clear: both; text-align: left;"><br /></div><div class="separator" style="clear: both; text-align: left;"><span style="color: #3d85c6;">Nel caso vogliate caricare altri file nello stesso momento è possibile farlo (ad esempio i file gestiti in SPIFFS o il bootloader) aggiungendoli in un altra riga e scrivendo l'indirizzo corretto. Di seguito gli indirizzi e i percorsi simili a quelli in cui si troveranno i vostri file:</span></div><div class="separator" style="clear: both; text-align: left;"><span style="color: #3d85c6;"><br /></span></div><div class="separator" style="clear: both; text-align: left;"><div class="separator" style="clear: both;"><span style="color: #3d85c6;">0x1000 C:\Users\dania\AppData\Local\Arduino15\packages\esp32\hardware\esp32\1.0.6/tools/sdk/bin/bootloader_qio_80m.bin</span></div><div class="separator" style="clear: both;"><span style="color: #3d85c6;"><br /></span></div><div class="separator" style="clear: both;"><span style="color: #3d85c6;">0x8000 </span></div><div class="separator" style="clear: both;"><span style="color: #3d85c6;">C:\Users\dania\AppData\Local\Temp\arduino_build_134498/MioSketch.ino.partitions.bin </span></div><div class="separator" style="clear: both;"><span style="color: #3d85c6;">esptool.py v3.0-dev </span></div><div class="separator" style="clear: both;"><span style="color: #3d85c6;"><br /></span></div><div class="separator" style="clear: both;"><span style="color: #3d85c6;">0xe000 C:\Users\dania\AppData\Local\Arduino15\packages\esp32\hardware\esp32\1.0.6/tools/partitions/boot_app0.bin </span></div><div class="separator" style="clear: both;"><span style="color: #3d85c6;"><br /></span></div><div class="separator" style="clear: both;"><span style="color: #3d85c6;">0x10000 </span></div><div class="separator" style="clear: both;"><span style="color: #3d85c6;">C:\Users\dania\AppData\Local\Temp\arduino_build_134498/MioSketch.ino.bin </span></div><div class="separator" style="clear: both;"><span style="color: #3d85c6;"><br /></span></div><div class="separator" style="clear: both;"><span style="color: #3d85c6;">0x290000</span></div><div class="separator" style="clear: both;"><div class="separator" style="clear: both;"><span style="color: #3d85c6;">C:\Users\dania\AppData\Local\Temp\arduino_build_134498/MioSketch.spiffs.bin</span></div></div><div><br /></div></div><br /><div class="separator" style="clear: both; text-align: center;"><a href="https://1.bp.blogspot.com/-tS-EJ4dBWsg/YIHZxkSKbsI/AAAAAAAAH3o/MKHQLIBvipUeMbWSCBLJGWOuVssC8FBIwCLcBGAsYHQ/s934/3.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="847" data-original-width="934" height="580" src="https://1.bp.blogspot.com/-tS-EJ4dBWsg/YIHZxkSKbsI/AAAAAAAAH3o/MKHQLIBvipUeMbWSCBLJGWOuVssC8FBIwCLcBGAsYHQ/w640-h580/3.png" width="640" /></a></div><br /><br />In basso a sinistra (dove ora c'è la scritta FINISH) apparirà la scritta SYNC, se utilizzate una scheda di sviluppo premete il tasto boot presente sulla scheda. Il download verrò avviato e la scheda verrò programmata.<br /><br /><br /><br />Questo è tutto,<br />per qualsiasi domanda lascia pure un commento.<br /><br />Seguimi sulle mie pagine per rimanere sempre aggiornato sui nuovi post!<p></p>Danielehttp://www.blogger.com/profile/09720964861202313121noreply@blogger.com0tag:blogger.com,1999:blog-390453114990638376.post-34759263462917057402021-04-03T14:48:00.006+02:002021-04-03T14:48:52.114+02:00Arduino: risparmiare memoria (RAM) con la macro F( )<p>Ciao!</p><p>in questo post vi parlerò di come risparmiare memoria RAM nel vostro Arduino, </p><p>è sufficiente infatti un semplice trucchetto per toglierci dai guai in questi casi.</p><p><br /></p><div class="separator" style="clear: both; text-align: center;"><a href="https://1.bp.blogspot.com/-jcRTS0FlLZw/YB_27dZt7lI/AAAAAAAAHvc/8CN-237-GSQBqX7oWSe6agwx_SRt5XNkACLcBGAsYHQ/s320/rom-30098_1280.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="235" data-original-width="320" height="294" src="https://1.bp.blogspot.com/-jcRTS0FlLZw/YB_27dZt7lI/AAAAAAAAHvc/8CN-237-GSQBqX7oWSe6agwx_SRt5XNkACLcBGAsYHQ/w400-h294/rom-30098_1280.png" width="400" /></a></div><br /><p><br /></p><span><a name='more'></a></span><p><br /></p><p>se avete realizzato uno sketch contente molte stringhe di testo (per essere visualizzate su un display ad esempio),</p><p>potrebbe esservi capitato di vedere questo warning compilando il codice:</p><p><span style="color: red;"><br /></span></p><p><span style="color: red;">Low memory available, stability problems may occur</span></p><p><br /></p><p>Questo messaggio indica che avete utilizzato quasi tutta la RAM che il vostro microcontrollore vi mette a disposizione.</p><p>Quindi la ram è agli sgoccioli, ma probabilmente avete ancora molta memoria flash (quella che contiene il programma che avete caricato). Grazie alla macro F( ) è però possibile spostare le vostre stringhe statiche dalla memoria ram alla memoria flash.</p><p>l'utilizzo è molto semplice, basta aggiungere F( ) attorno alla vostra stringa:</p><p><span style="color: #3d85c6;">Serial.print(F("hello world"!));</span></p><p>automaticamente le stringhe identificate in questo modo verranno memorizzate in flash.</p><p><br /></p><p>fonte:</p><p><a href="https://www.arduino.cc/reference/en/language/variables/utilities/progmem/" target="_blank">Arduino reference - PROGMEM</a></p><p><br /></p>Questo è tutto!<br />Seguimi sulle mie pagine per rimanere sempre aggiornato sui nuovi post!Danielehttp://www.blogger.com/profile/09720964861202313121noreply@blogger.com0tag:blogger.com,1999:blog-390453114990638376.post-68876437062626358892021-03-06T14:50:00.001+01:002021-03-06T14:50:10.383+01:00Come aumentare il numero di porte di Arduino<div dir="ltr" style="text-align: left;" trbidi="on">Ciao! </div><div dir="ltr" style="text-align: left;" trbidi="on">se siete rimasti a corto di porte, e per completare il vostro progetto ve ne servono altre,</div><div dir="ltr" style="text-align: left;" trbidi="on">potete utilizzare il port expander i2C della Microchip MCP23017</div><div dir="ltr" style="text-align: left;" trbidi="on">
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://1.bp.blogspot.com/-VqeGu25SvKo/XjSMYKvG9RI/AAAAAAAAG1w/7t-_ZIVeywMHwviLKXbhsMnqmNROeEflwCLcBGAsYHQ/s1600/mcp23017_pinout.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="650" data-original-width="800" height="325" src="https://1.bp.blogspot.com/-VqeGu25SvKo/XjSMYKvG9RI/AAAAAAAAG1w/7t-_ZIVeywMHwviLKXbhsMnqmNROeEflwCLcBGAsYHQ/s400/mcp23017_pinout.png" width="400" /></a></div>
<div dir="ltr" style="text-align: left;" trbidi="on"><br /></div></div><div dir="ltr" trbidi="on">
<a name='more'></a><br /><div dir="ltr" trbidi="on">Gli ingressi/uscite a disposizione sono ben 16, inoltre è possibile utilizzare sulla stessa linea fino ad 8 di questi componenti (in base alla configurazione dei pin A0, AI e A2) in modo da aumentare moltissimo il numero di porte disponibili.</div><div dir="ltr" trbidi="on">Naturalmente tutto questo avrà un costo in termini di prestazioni, in quanto questi componenti verranno controllati in cascata, generando un ritardo.</div><div dir="ltr" trbidi="on"><br />Questo componente può essere reperito sia in formato adatto per il montaggio tradizionale, sia SMD.</div><div dir="ltr" trbidi="on">Ecco il <a href="https://ww1.microchip.com/downloads/en/devicedoc/20001952c.pdfhttps://ww1.microchip.com/downloads/en/devicedoc/20001952c.pdf">datasheet</a>.</div><div dir="ltr" trbidi="on"><br /></div><div dir="ltr" trbidi="on">Per utilizzare il componente con Arduino è possibile utilizzare questa <a href="https://github.com/adafruit/Adafruit-MCP23017-Arduino-Library">libreria</a>, quindi scaricatela ed installatela nel vostro IDE.</div><div dir="ltr" trbidi="on"><br /></div><div dir="ltr" trbidi="on">Ecco un semplice esempio, aprendo il serial monitor potrete leggere il livello logico presente sulla porta 0 dell'MCP23017.</div><div dir="ltr" trbidi="on">Nelle righe dalla 7 alla 10 potete leggere come collegare il componente al vostro Arduino</div>
<br />
<ol class="arduino" style="background: rgb(247, 247, 247); color: #acacac; font-family: Consolas, Menlo, Monaco, "Lucida Console", "Liberation Mono", "DejaVu Sans Mono", "Bitstream Vera Sans Mono", monospace, serif; font-size: 12px; margin: 0px; padding: 0px 0px 0px 55px;">
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
<span class="co2" style="color: #339933;">#include <wire .h=""></wire></span></div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
<span class="co2" style="color: #339933;">#include "Adafruit_MCP23017.h"</span></div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
</div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
<span class="co1" style="color: #666666; font-style: italic;">// Basic pin reading and pullup test for the MCP23017 I/O expander</span></div>
</li>
<li class="li2" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de2" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
<span class="co1" style="color: #666666; font-style: italic;">// public domain!</span></div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
</div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
<span class="co1" style="color: #666666; font-style: italic;">// Connect pin #12 of the expander to Analog 5 (i2c clock)</span></div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
<span class="co1" style="color: #666666; font-style: italic;">// Connect pin #13 of the expander to Analog 4 (i2c data)</span></div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
<span class="co1" style="color: #666666; font-style: italic;">// Connect pins #15, 16 and 17 of the expander to ground (address selection)</span></div>
</li>
<li class="li2" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de2" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
<span class="co1" style="color: #666666; font-style: italic;">// Connect pin #9 of the expander to 5V (power)</span></div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
<span class="co1" style="color: #666666; font-style: italic;">// Connect pin #10 of the expander to ground (common ground)</span></div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
<span class="co1" style="color: #666666; font-style: italic;">// Connect pin #18 through a ~10kohm resistor to 5V (reset pin, active low)</span></div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
</div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
<span class="co1" style="color: #666666; font-style: italic;">// Input #0 is on pin 21 so connect a button or switch from there to ground</span></div>
</li>
<li class="li2" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de2" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
</div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
Adafruit_MCP23017 mcp<span class="sy0" style="color: #339933;">;</span></div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
</div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
<span class="kw4" style="color: #993333;">void</span> setup<span class="br0" style="color: #009900;">(</span><span class="br0" style="color: #009900;">)</span> <span class="br0" style="color: #009900;">{</span> </div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
mcp.<span class="me1" style="color: #202020;">begin</span><span class="br0" style="color: #009900;">(</span><span class="br0" style="color: #009900;">)</span><span class="sy0" style="color: #339933;">;</span> <span class="co1" style="color: #666666; font-style: italic;">// use default address 0</span></div>
</li>
<li class="li2" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de2" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
</div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
mcp.<span class="kw3" style="color: #000066;">pinMode</span><span class="br0" style="color: #009900;">(</span><span class="nu0" style="color: #0000dd;">0</span><span class="sy0" style="color: #339933;">,</span> <span class="kw2" style="color: black; font-weight: bold;">INPUT</span><span class="br0" style="color: #009900;">)</span><span class="sy0" style="color: #339933;">;</span></div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
mcp.<span class="me1" style="color: #202020;">pullUp</span><span class="br0" style="color: #009900;">(</span><span class="nu0" style="color: #0000dd;">0</span><span class="sy0" style="color: #339933;">,</span> <span class="kw2" style="color: black; font-weight: bold;">HIGH</span><span class="br0" style="color: #009900;">)</span><span class="sy0" style="color: #339933;">;</span> <span class="co1" style="color: #666666; font-style: italic;">// turn on a 100K pullup internally</span></div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
</div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
<span class="kw3" style="color: #000066;">Serial</span>.<span class="me1" style="color: #202020;">begin</span><span class="br0" style="color: #009900;">(</span><span class="nu0" style="color: #0000dd;">9600</span><span class="br0" style="color: #009900;">)</span><span class="sy0" style="color: #339933;">;</span></div>
</li>
<li class="li2" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de2" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
</div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
<span class="br0" style="color: #009900;">}</span></div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
</div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
</div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
</div>
</li>
<li class="li2" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de2" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
<span class="kw4" style="color: #993333;">void</span> loop<span class="br0" style="color: #009900;">(</span><span class="br0" style="color: #009900;">)</span> <span class="br0" style="color: #009900;">{</span></div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
</div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
<span class="kw3" style="color: #000066;">Serial</span>.<span class="me1" style="color: #202020;">println</span><span class="br0" style="color: #009900;">(</span>mcp.<span class="kw3" style="color: #000066;">digitalRead</span><span class="br0" style="color: #009900;">(</span><span class="nu0" style="color: #0000dd;">0</span><span class="br0" style="color: #009900;">)</span><span class="br0" style="color: #009900;">)</span><span class="sy0" style="color: #339933;">;</span></div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
<span class="br0" style="color: #009900;">}</span></div>
</li>
</ol>
<div>
<span style="color: #009900; font-family: consolas, menlo, monaco, lucida console, liberation mono, dejavu sans mono, bitstream vera sans mono, monospace, serif;"><span style="font-size: 12px;"><br /></span></span></div><div><span style="color: #009900; font-family: consolas, menlo, monaco, lucida console, liberation mono, dejavu sans mono, bitstream vera sans mono, monospace, serif;"><span style="font-size: 12px;"><br /></span></span></div>Questa tabellina (che trovate nella libreria) vi permette di associare la porta con il pin fisico dell'MCP23017</div><div dir="ltr" trbidi="on"><br /><div><span style="color: #009900; font-family: consolas, menlo, monaco, lucida console, liberation mono, dejavu sans mono, bitstream vera sans mono, monospace, serif;"><span style="font-size: 12px;"><br /></span></span></div><div><span style="color: #009900; font-family: consolas, menlo, monaco, lucida console, liberation mono, dejavu sans mono, bitstream vera sans mono, monospace, serif;"><span style="font-size: 12px;"><a href="https://lh3.googleusercontent.com/-u31bbGigR3U/YEOG9cSC16I/AAAAAAAAH00/6N-l0erHfLUzGYK_xNT1oeyn7BcloNsKgCLcBGAsYHQ/image.png" style="font-family: "Times New Roman"; font-size: medium; margin-left: 1em; margin-right: 1em; text-align: center;"><img alt="" data-original-height="451" data-original-width="241" height="400" src="https://lh3.googleusercontent.com/-u31bbGigR3U/YEOG9cSC16I/AAAAAAAAH00/6N-l0erHfLUzGYK_xNT1oeyn7BcloNsKgCLcBGAsYHQ/w213-h400/image.png" width="213" /></a></span></span></div><div><span style="color: #009900; font-family: consolas, menlo, monaco, lucida console, liberation mono, dejavu sans mono, bitstream vera sans mono, monospace, serif;"><br /></span></div>
<div>
<span style="color: #009900; font-family: consolas, menlo, monaco, lucida console, liberation mono, dejavu sans mono, bitstream vera sans mono, monospace, serif;"><span style="font-size: 12px;"><br /></span></span></div>
<div>
Questo è tutto,<br />per qualsiasi domanda lascia pure un commento.<br /><br />Seguimi sulle mie pagine per rimanere sempre aggiornato sui nuovi post!</div>
</div>
Danielehttp://www.blogger.com/profile/09720964861202313121noreply@blogger.com0tag:blogger.com,1999:blog-390453114990638376.post-73728839027160534742021-02-28T14:07:00.000+01:002021-02-28T14:07:21.633+01:00ESP32: Touch pin con Arduino<div>Ciao!</div><div>in questo post vedremo brevemente come utilizzare i touch pin presenti sull'ESP32.</div><div><br /></div><div class="separator" style="clear: both; text-align: center;"><a href="https://1.bp.blogspot.com/-wJ86yyAA_W4/X_SE2P5aWZI/AAAAAAAAHqY/vvZEUDWAbXsG1HpdBE3aEemcS-gKkiBxACLcBGAsYHQ/s768/touch.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="432" data-original-width="768" height="360" src="https://1.bp.blogspot.com/-wJ86yyAA_W4/X_SE2P5aWZI/AAAAAAAAHqY/vvZEUDWAbXsG1HpdBE3aEemcS-gKkiBxACLcBGAsYHQ/w640-h360/touch.png" width="640" /></a></div><br /><span><a name='more'></a></span><div><br /></div><div>questo microcontrollore è infatti in grado di rilevare la variazione di capacità su alcuni suoi pin, questa variazione può essere utilizzata per capire, ad esempio, se si è avvicinato un dito al pin e quindi eseguire un'azione come alla pressione di un pulsante.</div><div>Verrà restituito un valore numerico, minore al diminuire della capacità.</div><div><br /></div><div>I pin che supportano questa funzionalità sono:</div><div><br /></div><div>Touch0 = GPIO4</div><div>Touch1 = GPIO0</div><div>Touch2 = GPIO2</div><div>Touch3 = GPIO15</div><div>Touch4 = GPIO13</div><div>Touch5 = GPIO12</div><div>Touch6 = GPIO14</div><div>Touch7 = GPIO27</div><div>Touch8 = GPIO33</div><div>Touch9 = GPIO32</div><div><br /></div><div>Testare questa funzionalità è semplicissimo, è sufficiente infatti caricare il codice che trovate qui sotto (è l'esempio leggermente modificato che potete trovare sotto "File > Esempi> ESP32 > Touch > TouchRead") poi aprite il serial monitor per visualizzare i valori sui 2 pin.</div><div>Avvicinando un dito ad essi (potete anche aiutarvi con un filo) il valore si abbasserà.</div><div><br /></div><div><p><span face=""Open Sans", sans-serif" style="background-color: white; color: #3a3a3a; font-size: 18px;"></span></p><ol class="arduino" style="background: rgb(255, 255, 255); box-sizing: border-box; color: #333333; font-family: Consolas, Menlo, Monaco, "Lucida Console", "Liberation Mono", "DejaVu Sans Mono", "Bitstream Vera Sans Mono", monospace, serif; font-size: 12px; margin: 0px; padding: 0px 10px; vertical-align: baseline;"><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"><span class="co1" style="box-sizing: border-box; color: #666666; font-style: italic; margin: 0px; padding: 0px; vertical-align: baseline;">// ESP32 Touch Test</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"><span class="co1" style="box-sizing: border-box; color: #666666; font-style: italic; margin: 0px; padding: 0px; vertical-align: baseline;">// Just test touch pin</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> </div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"><span class="kw4" style="box-sizing: border-box; color: #993333; margin: 0px; padding: 0px; vertical-align: baseline;">void</span> setup<span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">{</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="kw3" style="box-sizing: border-box; color: #000066; margin: 0px; padding: 0px; vertical-align: baseline;">Serial</span>.<span class="me1" style="box-sizing: border-box; color: #202020; margin: 0px; padding: 0px; vertical-align: baseline;">begin</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span><span class="nu0" style="box-sizing: border-box; color: #0000dd; margin: 0px; padding: 0px; vertical-align: baseline;">115200</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="kw3" style="box-sizing: border-box; color: #000066; margin: 0px; padding: 0px; vertical-align: baseline;">delay</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span><span class="nu0" style="box-sizing: border-box; color: #0000dd; margin: 0px; padding: 0px; vertical-align: baseline;">1000</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span> <span class="co1" style="box-sizing: border-box; color: #666666; font-style: italic; margin: 0px; padding: 0px; vertical-align: baseline;">// give me time to bring up serial monitor</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="kw3" style="box-sizing: border-box; color: #000066; margin: 0px; padding: 0px; vertical-align: baseline;">Serial</span>.<span class="me1" style="box-sizing: border-box; color: #202020; margin: 0px; padding: 0px; vertical-align: baseline;">println</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span><span class="st0" style="box-sizing: border-box; color: red; margin: 0px; padding: 0px; vertical-align: baseline;">"ESP32 Touch Test"</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">}</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> </div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"><span class="kw4" style="box-sizing: border-box; color: #993333; margin: 0px; padding: 0px; vertical-align: baseline;">void</span> loop<span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">{</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="kw3" style="box-sizing: border-box; color: #000066; margin: 0px; padding: 0px; vertical-align: baseline;">Serial</span>.<span class="me1" style="box-sizing: border-box; color: #202020; margin: 0px; padding: 0px; vertical-align: baseline;">println</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span>touchRead<span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span>T4<span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span> <span class="co1" style="box-sizing: border-box; color: #666666; font-style: italic; margin: 0px; padding: 0px; vertical-align: baseline;">// gpio13</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="kw3" style="box-sizing: border-box; color: #000066; margin: 0px; padding: 0px; vertical-align: baseline;">Serial</span>.<span class="me1" style="box-sizing: border-box; color: #202020; margin: 0px; padding: 0px; vertical-align: baseline;">println</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span>touchRead<span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span>T3<span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span> <span class="co1" style="box-sizing: border-box; color: #666666; font-style: italic; margin: 0px; padding: 0px; vertical-align: baseline;">// gpio15</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="kw3" style="box-sizing: border-box; color: #000066; margin: 0px; padding: 0px; vertical-align: baseline;">delay</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span><span class="nu0" style="box-sizing: border-box; color: #0000dd; margin: 0px; padding: 0px; vertical-align: baseline;">1000</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">}</span></div></li></ol><div class="separator" style="clear: both; text-align: center;"><br /></div><br />è possibile un controllo avanzato per questa funzionalità, per approfondimenti vi lascio il link della <a href="https://docs.espressif.com/projects/esp-idf/en/latest/esp32/api-reference/peripherals/touch_pad.html">reference ufficiale</a></div><div><br /></div><div>Per ora è tutto!<br />Seguimi sulle mie pagine per rimanere sempre aggiornato sui nuovi post!</div>Danielehttp://www.blogger.com/profile/09720964861202313121noreply@blogger.com0tag:blogger.com,1999:blog-390453114990638376.post-87104987639859917282021-02-01T19:00:00.001+01:002021-02-01T19:00:02.216+01:00Arduino: Sensore di movimento RCWL-0516<p>Ciao!</p><p>in questo breve post vi parlerò del sensore di movimento a microonde RCWL-0516.</p><p><br /></p><div class="separator" style="clear: both; text-align: center;"><a href="https://1.bp.blogspot.com/-HMS8QqpXQIs/YBfurIy9FEI/AAAAAAAAHus/RXtVsJSqKTk-fQW_NoJ6VXDzlikhzvK2ACLcBGAsYHQ/s473/rcwl0516-microwave-radar-sensor-front.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="473" data-original-width="467" height="400" src="https://1.bp.blogspot.com/-HMS8QqpXQIs/YBfurIy9FEI/AAAAAAAAHus/RXtVsJSqKTk-fQW_NoJ6VXDzlikhzvK2ACLcBGAsYHQ/w395-h400/rcwl0516-microwave-radar-sensor-front.jpg" width="395" /></a></div><br /><span><a name='more'></a></span><p><br /></p><p>Rispetto ad i sensori PIR, questo modulo, non essendo ottico, ha il vantaggio di poter funzionare anche attraverso ad ostacoli (entro alcuni limiti ovviamente). Il range di funzionamento teorico è di circa 7 metri in campo aperto.</p><p>Un altro vantaggio che ho potuto riscontrare rispetto ad i PIR è la maggiore accuratezza e ripetibilità del funzionamento.</p><p>Il modulo è estremamente economico (<a href="https://s.click.aliexpress.com/e/_APJtOF" target="_blank">link Aliexpress</a>, attenzione, la spedizione può richiedere molti giorni)</p><p><br /></p><p>Il collegamento ad Arduino è estremamente semplice, il modulo cambia il livello del pin OUT quando rileva un movimento, quindi per leggere l'informazione è possibile utilizzare qualunque input.</p><div class="separator" style="clear: both; text-align: center;"><br /></div><div class="separator" style="clear: both; text-align: center;"><a href="https://1.bp.blogspot.com/-QnpV1H-hO_o/X9Z_shs5qPI/AAAAAAAAHnk/rixszUTNPtULbfS9u0RgojL3zg145xRewCLcBGAsYHQ/s1296/RCWL-0516_bb.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="867" data-original-width="1296" height="428" src="https://1.bp.blogspot.com/-QnpV1H-hO_o/X9Z_shs5qPI/AAAAAAAAHnk/rixszUTNPtULbfS9u0RgojL3zg145xRewCLcBGAsYHQ/w640-h428/RCWL-0516_bb.png" width="640" /></a></div><br /><p>Di conseguenza anche lo sketch è semplicissimo, aprite il serial monitor per vedere lo stato del segnale.</p><p><br /></p><ol class="arduino" style="background: rgb(255, 255, 255); box-sizing: border-box; color: #333333; font-family: Consolas, Menlo, Monaco, "Lucida Console", "Liberation Mono", "DejaVu Sans Mono", "Bitstream Vera Sans Mono", monospace, serif; font-size: 12px; margin: 0px; padding: 0px 10px; vertical-align: baseline;"><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"><span class="co2" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">#define pinSens 9</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> </div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"><span class="kw4" style="box-sizing: border-box; color: #993333; margin: 0px; padding: 0px; vertical-align: baseline;">void</span> setup<span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span> <span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">{</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="kw3" style="box-sizing: border-box; color: #000066; margin: 0px; padding: 0px; vertical-align: baseline;">pinMode</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span>pinSens<span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">,</span> <span class="kw2" style="box-sizing: border-box; font-weight: bold; margin: 0px; padding: 0px; vertical-align: baseline;">INPUT</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="kw3" style="box-sizing: border-box; color: #000066; margin: 0px; padding: 0px; vertical-align: baseline;">Serial</span>.<span class="me1" style="box-sizing: border-box; color: #202020; margin: 0px; padding: 0px; vertical-align: baseline;">begin</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span><span class="nu0" style="box-sizing: border-box; color: #0000dd; margin: 0px; padding: 0px; vertical-align: baseline;">115200</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">}</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> </div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"><span class="kw4" style="box-sizing: border-box; color: #993333; margin: 0px; padding: 0px; vertical-align: baseline;">void</span> loop<span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span> <span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">{</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="kw3" style="box-sizing: border-box; color: #000066; margin: 0px; padding: 0px; vertical-align: baseline;">Serial</span>.<span class="me1" style="box-sizing: border-box; color: #202020; margin: 0px; padding: 0px; vertical-align: baseline;">println</span> <span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span><span class="kw3" style="box-sizing: border-box; color: #000066; margin: 0px; padding: 0px; vertical-align: baseline;">digitalRead</span> <span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">(</span>pinSens<span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin: 0px; padding: 0px; vertical-align: baseline;">;</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin: 0px 0px 0px -6px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"><span class="br0" style="box-sizing: border-box; color: #009900; margin: 0px; padding: 0px; vertical-align: baseline;">}</span></div></li></ol><p><br /></p><p>Per ora è tutto!<br />Seguimi sulle mie pagine per rimanere sempre aggiornato sui nuovi post!</p>Danielehttp://www.blogger.com/profile/09720964861202313121noreply@blogger.com0tag:blogger.com,1999:blog-390453114990638376.post-36950448868817662092021-01-06T17:50:00.003+01:002021-01-06T17:50:37.350+01:00Come collegare una scheda micro SD ad un ESP32<p>Ciao!<br /><br />In questo breve post vedremo come collegare una scheda micro SD ad un ESP32.</p><p><br /></p><div class="separator" style="clear: both; text-align: center;"><a href="https://1.bp.blogspot.com/-UNjGgXTT0l8/X81FKOBihsI/AAAAAAAAHmA/7MxLDCgOxX8RRhl0WKamnfKt-nG635yswCLcBGAsYHQ/s575/standard-sd-cards-and-microsd-cards.jpg" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="284" data-original-width="575" height="316" src="https://1.bp.blogspot.com/-UNjGgXTT0l8/X81FKOBihsI/AAAAAAAAHmA/7MxLDCgOxX8RRhl0WKamnfKt-nG635yswCLcBGAsYHQ/w640-h316/standard-sd-cards-and-microsd-cards.jpg" width="640" /></a></div><br /><span><a name='more'></a></span><p><br /></p><p>Partiamo subito col vedere il collegamento, esistono vari moduli che potete trovare facilmente online (ad esempio <a href="https://www.ebay.it/sch/i.html?_from=R40&_trksid=p2380057.m570.l1313&_nkw=micro+sd+modulo&_sacat=0" target="_blank">su eBay</a>). </p><p>Una rapida alternativa è quella di saldare direttamente dei cavetti su un adattatore SD - microSD, come ho fatto io:</p><p><br /></p><div class="separator" style="clear: both; text-align: center;"><a href="https://1.bp.blogspot.com/-ON-qfAE_NCk/X81DSyea7II/AAAAAAAAHls/MEUNQzDNLmwyAF8BT6wPKg6TWkdvvaavwCPcBGAsYHg/s4032/PXL_20201121_123223832.jpg" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="4032" data-original-width="3024" height="320" src="https://1.bp.blogspot.com/-ON-qfAE_NCk/X81DSyea7II/AAAAAAAAHls/MEUNQzDNLmwyAF8BT6wPKg6TWkdvvaavwCPcBGAsYHg/s320/PXL_20201121_123223832.jpg" /></a></div><br /><p>Per il collegamento con l'ESP32 ho proseguito in questo modo, ecco lo schema:<br /></p><p> </p><div class="separator" style="clear: both; text-align: center;"><a href="https://1.bp.blogspot.com/-aHcpcmuLvE4/X7kPo2wpcAI/AAAAAAAAHkU/dV3TShtteWcX5-3rrrcPyh_Nq3mvIg1_gCLcBGAsYHQ/s1467/esp32%2BSD_bb.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="897" data-original-width="1467" height="392" src="https://1.bp.blogspot.com/-aHcpcmuLvE4/X7kPo2wpcAI/AAAAAAAAHkU/dV3TShtteWcX5-3rrrcPyh_Nq3mvIg1_gCLcBGAsYHQ/w640-h392/esp32%2BSD_bb.png" width="640" /></a></div><br /><p></p><p>Fatto questo non ci resta che testare il tutto, inserite una scheda microSD nell'adattatore e collegate l'esp32 al vostro pc.</p><p>La scheda microSD deve essere in formato FAT e la dimensione massima supportata è 32GB.</p><p>Selezionate dal menu di Arduino la scheda esp32 che state usando (dal menu "Strumenti", "Scheda...") poi aprite l'esempio "SD_Test" che trovate in "File", "Esempi", "SD(ESP32)")</p><p>l'esempio contiene istruzioni utili e funzioni di base per la gestione di file e cartelle nella scheda sd.<br />Al termine dell'esecuzione del <i>setup </i>potete verificare che tutto sia andato a buon fine, sarà sufficiente rimuovere la scheda collegata all'esp32 ed inserirla nel pc, troverete 2 file, "foo.txt" e "test.txt".</p><p>Questo è tutto, ciao!<br />Seguimi sulle mie pagine per rimanere sempre aggiornato sui nuovi post!</p>Danielehttp://www.blogger.com/profile/09720964861202313121noreply@blogger.com0tag:blogger.com,1999:blog-390453114990638376.post-91822972639940528892020-12-20T21:26:00.003+01:002020-12-20T21:26:25.107+01:00ESP32 Camera<p></p>Ciao!<br />in questo post vi parlerò del modulo ESP32-CAM.<br />Questo modulo è davvero molto interessante, basato sul potente <a href="https://www.espressif.com/en/products/socs/esp32" target="_blank">ESP32</a>, è dotato di una camera (con flash) ed ha anche uno slot microSD.<div><div class="separator" style="clear: both; text-align: center;"><a href="https://1.bp.blogspot.com/-17tryfdX6LY/X9p0XGoQvsI/AAAAAAAAHoY/4J4EikbZtqYpBL9Dw7a7c4pBDau6kGvGACLcBGAsYHQ/s800/esp32-cam-wifi-bluetooth-camera-module-development-board-esp32-with-camera-module-ov2640-robotics-bangladesh.jpg" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="800" data-original-width="800" height="640" src="https://1.bp.blogspot.com/-17tryfdX6LY/X9p0XGoQvsI/AAAAAAAAHoY/4J4EikbZtqYpBL9Dw7a7c4pBDau6kGvGACLcBGAsYHQ/w640-h640/esp32-cam-wifi-bluetooth-camera-module-development-board-esp32-with-camera-module-ov2640-robotics-bangladesh.jpg" width="640" /></a></div><br /><div class="separator" style="clear: both; text-align: center;"><br /></div><span><a name='more'></a><br /><br /></span><div class="separator" style="clear: both; text-align: center;"><br /></div><div class="separator" style="clear: both; text-align: left;">La cosa forse che mi ha colpito di più è il prezzo, infatti tutto ciò può essere acquistato per circa 10 euro, in alcuni casi e se si ha la pazienza di attendere l'arrivo dalla Cina, è possibile trovarlo anche alla metà.</div><div class="separator" style="clear: both; text-align: center;"><br /></div><div class="separator" style="clear: both; text-align: center;"><a href="https://1.bp.blogspot.com/-xWBerc2EcYo/X9io3ehYroI/AAAAAAAAHn0/Vw80N47EdoQbTn6L69dbtHGxRltrgyq-gCLcBGAsYHQ/s813/ESP32%2Bcam_bb.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="621" data-original-width="813" height="488" src="https://1.bp.blogspot.com/-xWBerc2EcYo/X9io3ehYroI/AAAAAAAAHn0/Vw80N47EdoQbTn6L69dbtHGxRltrgyq-gCLcBGAsYHQ/w640-h488/ESP32%2Bcam_bb.png" width="640" /></a></div><p></p>Per programmare la ESP32-CAM occorre un <a href="https://www.ebay.it/sch/i.html?_from=R40&_trksid=p2334524.m570.l1313&_nkw=usb+ttl+uart&_sacat=0&LH_TitleDesc=0&_osacat=0&_odkw=usb+seriale">convertitore usb-seriale ttl</a>, infatti la scheda non è provvista di interfaccia usb.</div><div><br /></div><div>Per utilizzare questa scheda dovete aver installato il modulo per ESP32 nel vostro IDE Arduino (qui maggiori info per l'<a href="https://www.danielealberti.it/2019/05/lista-di-url-aggiuntive-per-il-gestore.html">installazione delle schede aggiuntive</a>)</div><div><br /></div><div><br /></div><div><br /></div><div>Siamo pronti finalmente per caricare il primo firmware sul nostro modulo, i passi da seguire sono:</div><div><br />collegare l'adattatore alla scheda ESP32-CAM, facendo attenzione che il ponticello dell'adattatore sia tra VCC e 3V3 (se previsto nel modulo).<div>Per la programmazione della scheda, il ponticello tra il pin IO0 e GND deve essere connesso.<br /><br />scegliere la scheda ESP32 Wrover module, fate attenzione di impostare tra le opzioni il "Partition scheme" con il valore "Huge App (...);<br /><br />aprite l'esempio "CameraWebServer" (File > Esempi > ESP32 > Camera) </div><div><br />Commentate la riga </div><div>#define CAMERA_MODEL_WROVER_KIT </div><div>e decommentate </div><div>#define CAMERA_MODEL_AI_THINKER </div><div>(si trovano tra le prime righe)</div><div><br />Caricate lo sketch<br /><br />Scollegate la scheda dal pc<br /><br />togliete il jumper (tra il pin IO0 e GND)<br /><br />Ricollegate la scheda al pc, aprite il serial monitor (potrebbe essere necessario dare un resettare la scheda dopo che è alimentato il convertitore usb-seriale , potete farlo togliendo e rimettendo il filo sul pin 5V della scheda)<br /><br />Se tutto è andato a buon fine vedrete un output simile a questo:<br /><span style="color: #999999;">......<br />WiFi connected<br />Starting web server on port: '80'<br />Starting stream server on port: '81'<br />Camera Ready! Use 'http://192.168.1.109' to connect</span><div><span style="color: #999999;"><br /></span></div><div>Aprite un browser ed digitate 192.168.1.109</div><div><br /></div><div>Verrà caricata una pagina presente all'interno del modulo ESP32-CAM, dalla quale potrete smanettare con i parametri della scheda e vedere in tempo reale ciò che vede la camera.</div><div><br /><div><br /></div><div class="separator" style="clear: both; text-align: center;"><a href="https://1.bp.blogspot.com/-oJObVCbPTlw/X9TMYQvpwwI/AAAAAAAAHnE/UknhBhdlW8MRzp6uju45vhPcmnTDyW19ACLcBGAsYHQ/s1920/Cattura.PNG" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="1030" data-original-width="1920" height="343" src="https://1.bp.blogspot.com/-oJObVCbPTlw/X9TMYQvpwwI/AAAAAAAAHnE/UknhBhdlW8MRzp6uju45vhPcmnTDyW19ACLcBGAsYHQ/w640-h343/Cattura.PNG" width="640" /></a></div><br /><br /><br />Questo è tutto!<br />per eventuali dubbi lascia pure un commento qui sotto.<br /><br /><p>Fonti: </p><p><a href="https://randomnerdtutorials.com/esp32-cam-video-streaming-face-recognition-arduino-ide/">randomnerdtutorials.com</a> (in inglese)</p></div></div></div>Danielehttp://www.blogger.com/profile/09720964861202313121noreply@blogger.com4tag:blogger.com,1999:blog-390453114990638376.post-1181449165774335902020-12-08T14:37:00.002+01:002020-12-08T14:37:55.784+01:00Arduino: Comunicazione con database FirebaseCiao!<br /><br />in questi giorni sto facendo le primissime prove di comunicazione tra un database Firebase e Arduino,<div>in questo post vedremo i primissimi test.</div><div></div><div></div><div></div><div><br />Firebase è una piattaforma offerta da Google che consente, tra le varie funzioni, di semplificare la gestione e l'accesso ai dati, in modo da permettere agli sviluppatori di concentrarsi sullo sviluppo Front-End della loro applicazione</div><div><br /></div><div>Una spiegazione molto bella e chiara l'ho trovata in <a href="https://www.emanuelepaluzzi.it/2019/03/04/cose-firebase/" target="_blank">questo post</a><div class="separator" style="clear: both; text-align: center;"><a href="https://1.bp.blogspot.com/-PGJiQx0h_Io/X06mPik41yI/AAAAAAAAHb8/Mt3bxUNMt0IGv6V41dALKwwUhTqBTVYxQCLcBGAsYHQ/s800/google-firebase.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="600" data-original-width="800" height="480" src="https://1.bp.blogspot.com/-PGJiQx0h_Io/X06mPik41yI/AAAAAAAAHb8/Mt3bxUNMt0IGv6V41dALKwwUhTqBTVYxQCLcBGAsYHQ/w640-h480/google-firebase.png" width="640" /></a></div><br /><span><a name='more'></a></span><p><br /></p><p>Nel brevissimo esempio di questo post, vedremo come leggere e scrivere un dato presente nel nostro database Firebase di test.</p><p>Per fare ciò dovremo creare un account dal <a href="https://firebase.google.com/?hl=it">sito di Firebase </a><br /></p><div class="separator" style="clear: both; text-align: center;"><a href="https://1.bp.blogspot.com/-AkmOBQRqKiM/X0_4vp-8QtI/AAAAAAAAHcQ/PkYp5P2ssoYIEuSnZ-D5jMIpkP6OzXxHgCLcBGAsYHQ/s1920/db0.PNG" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="883" data-original-width="1920" src="https://1.bp.blogspot.com/-AkmOBQRqKiM/X0_4vp-8QtI/AAAAAAAAHcQ/PkYp5P2ssoYIEuSnZ-D5jMIpkP6OzXxHgCLcBGAsYHQ/s640/db0.PNG" width="640" /></a></div><div><br /></div>Configurate il database come da printscreen seguenti:</div><div> </div><div><div class="separator" style="clear: both; text-align: center;"><a href="https://1.bp.blogspot.com/-LAlmGos-VI4/X0_4vpSBTtI/AAAAAAAAHcM/JJmjImkDS18U4qBk9o1PNBmz6ZKmpnPpwCLcBGAsYHQ/s1899/db01.PNG" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="883" data-original-width="1899" src="https://1.bp.blogspot.com/-LAlmGos-VI4/X0_4vpSBTtI/AAAAAAAAHcM/JJmjImkDS18U4qBk9o1PNBmz6ZKmpnPpwCLcBGAsYHQ/s640/db01.PNG" width="640" /></a></div><div><br /></div><br /><div class="separator" style="clear: both; text-align: center;"><a href="https://1.bp.blogspot.com/-17TEVrndrfY/X0_4v8qjDmI/AAAAAAAAHcU/pt5EZtEYq4olkmpMbvMJAgirKXI1wC3dgCLcBGAsYHQ/s1920/db1.PNG" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="880" data-original-width="1920" src="https://1.bp.blogspot.com/-17TEVrndrfY/X0_4v8qjDmI/AAAAAAAAHcU/pt5EZtEYq4olkmpMbvMJAgirKXI1wC3dgCLcBGAsYHQ/s640/db1.PNG" width="640" /></a></div><div><br /></div><br /><div class="separator" style="clear: both; text-align: center;"><a href="https://1.bp.blogspot.com/-gFBge6wBwAo/X0_4vkJODPI/AAAAAAAAHcI/FQiGqBHbzK8n-v6lodCQDSckCs7vWoDBgCLcBGAsYHQ/s1919/db02.PNG" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="880" data-original-width="1919" src="https://1.bp.blogspot.com/-gFBge6wBwAo/X0_4vkJODPI/AAAAAAAAHcI/FQiGqBHbzK8n-v6lodCQDSckCs7vWoDBgCLcBGAsYHQ/s640/db02.PNG" width="640" /></a></div><br /><p>Per la parte elettronica ho utilizzato una Wemos D1 Mini (va bene qualsiasi scheda basata su esp8266).</p><p>Dovete installare nell'IDE di Arduino la <a href="https://github.com/FirebaseExtended/firebase-arduino">libreria Firebase-Arduino</a>, e caricare nel Wemos l'esempio "FirebaseDemo_ESP8266" che trovate tra gli esempi della libreria.</p><p>E' necessario modificare le righe 24-27 con i dati del database e della vostra rete wifi.</p></div><div><p style="text-align: left;">In particolare alla riga 24 va inserito <i><span>nomevostrodb</span></i>.firebaseio.com</p><p style="text-align: left;">Mentre alla riga 25 serve l'auth (lo trovate in panoramica di progetto, impostazioni progetto, account di servizio)</p></div><div><div class="separator" style="clear: both; text-align: center;"><a href="https://1.bp.blogspot.com/-ZZ7O4BLHp_o/XzKWMqTqdKI/AAAAAAAAHZM/B6W7gDVrM_IeqM5DdGpMCIKqddjxHA8jACLcBGAsYHQ/s1920/Cattura.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="989" data-original-width="1920" src="https://1.bp.blogspot.com/-ZZ7O4BLHp_o/XzKWMqTqdKI/AAAAAAAAHZM/B6W7gDVrM_IeqM5DdGpMCIKqddjxHA8jACLcBGAsYHQ/s640/Cattura.png" width="640" /></a></div><br /><br />Come potete vedere dal printscreen, i "Segreti database non sono più validi", da quello che ho potuto capire non sembra essere una funzionalità che è stata resa obsoleta da relativamente poco, ed in ogni caso attualmente è ancora funzionante. Cercherò di approfondire la cosa in seguito, qualche approfondimento su <a href="https://www.blogger.com/#">Stackoverflow</a>, se avete informazioni aggiuntive un commento sotto è graditissimo.<br /><br /></div><div>fonti:</div><div><a href="https://create.arduino.cc/projecthub/electropeak/connecting-arduino-to-firebase-to-send-receive-data-cd8805" target="_blank">Connecting Arduino to Firebase to Send & Receive Data</a> di <a href="https://create.arduino.cc/projecthub/electropeak" target="_blank">ElectroPeak</a></div><div><a href="https://firebase.google.com/docs/database/security" target="_blank">sezione security della wiki Firebase</a></div><div><a href="https://firebase.google.com/docs/auth" target="_blank">sezione auth della wiki Firebase</a></div>Danielehttp://www.blogger.com/profile/09720964861202313121noreply@blogger.com0tag:blogger.com,1999:blog-390453114990638376.post-73571014776166497182020-11-07T15:01:00.000+01:002020-11-07T15:01:30.177+01:00Esp-radio: come usare la web radio basata su esp8266 e Arduino<p> Ciao!</p><p>in questo post vedremo come configurare la <a href="https://github.com/Edzelf/Esp-radio">webradio basata sul progetto Esp-radio</a>.</p><div class="separator" style="clear: both; text-align: center;"><br /></div><div class="separator" style="clear: both; text-align: center;"><a href="https://1.bp.blogspot.com/-W1WdW233ulY/X6ReQGfBrfI/AAAAAAAAHh4/6yWzy6TNV3wdK22M43YEbxfwCHhlKLC0gCPcBGAsYHg/s1805/PXL_20201103_212536275_exported_7518_1604607229851%257E2.jpg" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="1805" data-original-width="1015" height="640" src="https://1.bp.blogspot.com/-W1WdW233ulY/X6ReQGfBrfI/AAAAAAAAHh4/6yWzy6TNV3wdK22M43YEbxfwCHhlKLC0gCPcBGAsYHg/w360-h640/PXL_20201103_212536275_exported_7518_1604607229851%257E2.jpg" width="360" /></a></div><br /><span></span><div class="separator" style="clear: both; text-align: center;"><br /></div><span><a name='more'></a></span><div class="separator" style="clear: both; text-align: center;"><br /></div><br /><p>Al codice originale ho effettuato una modifica in modo da visualizzare sempre l'indirizzo IP sul display, trovate <a href="https://github.com/dadone89/Esp-radio">il codice Arduino qui</a>.</p><p>Ci sono vari modi per interfacciarsi con questo dispositivo, io ho scelto questa procedura:</p><p>- create un hotspot dal vostro smartphone con nome (ssid): <span style="color: red;">atlante </span>e password: <span style="color: red;">deitalenti</span></p><p>- accendete la esp-radio</p><p>- attendete l'avvio, sul display rimarrà visualizzato l'indirizzo ip della vostra radio (ad esempio <span style="color: red;">192.168.75.190</span>)</p><p>- prendete lo smartphone da cui avete fatto l'hotspot, aprite il browser (ad esempio Google Chrome), nella barra in alto inserite l'ip che leggete sul display della vostra radio</p><p>- vi si aprirà una pagina simile a questa sotto</p><div class="separator" style="clear: both; text-align: center;"><a href="https://1.bp.blogspot.com/-mD9j-1ztmOs/X6aZ-qsZwQI/AAAAAAAAHi0/US83U2AtFSw4qEzSbPuPxH_x99NU--BdACLcBGAsYHQ/s1920/home.PNG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="1030" data-original-width="1920" height="344" src="https://1.bp.blogspot.com/-mD9j-1ztmOs/X6aZ-qsZwQI/AAAAAAAAHi0/US83U2AtFSw4qEzSbPuPxH_x99NU--BdACLcBGAsYHQ/w640-h344/home.PNG" width="640" /></a></div><div><br /></div><div>da questa pagina potete controllare varie impostazioni della radio, potete anche provare a riprodurre nuove radio.</div><div>Ad esempio potete trovare molte radio su <a href="http://www.internet-radio.com">internet-radio.com</a>.</div><div><br /></div><div>Ottenere i link dal sito internet.radio.com può essere un po' macchinoso.</div><div>Il metodo che uso è questo:</div><div>- cerca una stazione radio, poi clicca su ".pls" con il tasto destro e seleziona "copia indirizzo link"</div><div><br /></div><div class="separator" style="clear: both; text-align: center;"><a href="https://1.bp.blogspot.com/-RyYXXKAHPME/X6alIBETEWI/AAAAAAAAHjI/-RQfekPtXF0iH3kSJAXbZVcwUUa-jEPQgCLcBGAsYHQ/s1920/Cattura.PNG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="1030" data-original-width="1920" height="344" src="https://1.bp.blogspot.com/-RyYXXKAHPME/X6alIBETEWI/AAAAAAAAHjI/-RQfekPtXF0iH3kSJAXbZVcwUUa-jEPQgCLcBGAsYHQ/w640-h344/Cattura.PNG" width="640" /></a></div><br /><div><br /></div><div>incolla il link nella pagina di configurazione di esp-radio, la stringa incollata sarà simile a questa:</div><div><br /></div><div>https://www.internet-radio.com/servers/tools/playlistgenerator/?u=http://<span style="color: #2b00fe;">us4.internet-radio.com:8258</span>/listen.pls&t=.pls</div><div><br /></div><div>la parte che a noi serve è solo quella evidenziata in blu, quindi cancellate tutto il resto e lasciate solo</div><div><span style="color: #2b00fe;">us4.internet-radio.com:8258 </span>poi cliccate su play.</div><div>Questo metodo non funziona sempre, ma a volte è necessario lasciare anche /listen o /listen.pls (es. us4.internet-radio.com:8258/listen.pls), purtroppo bisogna procedere un po' per tentativi.</div><div><br /></div><div>Se volete memorizzare in modo definitivo le stazioni che avete trovato, dovrete includerle nel file di configurazione, cliccate sul pulsante "Config" in alto, modificate i preset con i nuovi link e salvate.</div><div>al riavvio ascolterete le nuove stazioni!</div><br /><div class="separator" style="clear: both; text-align: center;"><a href="https://1.bp.blogspot.com/-J6HctpXP_MQ/X6aaDQPgqlI/AAAAAAAAHi4/WwCog0R_-cMKTDIPXOcBcTynx-m8sqaIQCLcBGAsYHQ/s1920/1.PNG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="1030" data-original-width="1920" height="344" src="https://1.bp.blogspot.com/-J6HctpXP_MQ/X6aaDQPgqlI/AAAAAAAAHi4/WwCog0R_-cMKTDIPXOcBcTynx-m8sqaIQCLcBGAsYHQ/w640-h344/1.PNG" width="640" /></a></div><br /><p>Dal file config è possibile anche impostare il nome e la password della rete wifi alla quale la radio si collegherà, potrete impostare ad esempio la rete di casa. Attenzione però, per poter entrare nuovamente nella pagina di configurazione dovrete essere collegati alla nuova rete.</p><p>Fonti: <a href="https://github.com/dadone89/Esp-radio/blob/master/ESP-radio.pdf">documentazione completa (in inglese)</a></p><p>Questo è tutto!<br />Seguimi sulle mie pagine per rimanere sempre aggiornato sui nuovi post!</p>Danielehttp://www.blogger.com/profile/09720964861202313121noreply@blogger.com0tag:blogger.com,1999:blog-390453114990638376.post-21534823761504030472020-10-30T13:03:00.001+01:002020-10-30T13:03:09.454+01:00Display SSD1309 con Arduino<p>Ciao!<br /><br /> in questo post vedremo come collegare e testare un display SSD1309 con Arduino.</p><div class="separator" style="clear: both; text-align: center;"><a href="https://1.bp.blogspot.com/-07RjcBgIRJI/X5v-Ehw42mI/AAAAAAAAHgc/3TDfpWOXp9oBO1uEfGc2YbiIFen59oppwCLcBGAsYHQ/s1000/2-42.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="1000" data-original-width="1000" height="640" src="https://1.bp.blogspot.com/-07RjcBgIRJI/X5v-Ehw42mI/AAAAAAAAHgc/3TDfpWOXp9oBO1uEfGc2YbiIFen59oppwCLcBGAsYHQ/w640-h640/2-42.jpg" width="640" /></a></div><br /><span><a name='more'></a></span><p><br /></p><p><br />Questo display, si differenzia leggermente dal più noto SSD1306 perchè più grande (2.42" contro 0.96")</p><p>Il display è meno diffuso del suo cugino SSD1306, ma è comunque facilmente reperibile anche su Amazon.</p><p><br /></p><p>I collegamenti ad Arduino sono molto semplici:</p><br /><div class="separator" style="clear: both; text-align: center;"><a href="https://lh3.googleusercontent.com/-nRinGtrgKQk/X5v_mjFJO5I/AAAAAAAAHgo/cfJWpWROi8gg2IGMfkN_iDC9fwqf2kXaQCLcBGAsYHQ/image.png" style="margin-left: 1em; margin-right: 1em;"><img alt="" data-original-height="247" data-original-width="212" height="240" src="https://lh3.googleusercontent.com/-nRinGtrgKQk/X5v_mjFJO5I/AAAAAAAAHgo/cfJWpWROi8gg2IGMfkN_iDC9fwqf2kXaQCLcBGAsYHQ/image.png" width="206" /></a></div><br /><div><p> <br />Per il test ho utilizzato la notevole <a href="https://github.com/olikraus/u8g2" target="_blank">libreria u8g2</a>, dovrete scaricarla ed aggiungerla nella directory libraries del vostro ide Arduino per poter compilare il codice sottostante.</p><p>Per testare il display ho caricato l'esempio <i>HelloWorld </i> nel quale ho lasciato solo il display che ci interessa</p><div><br /></div><div><ol class="arduino" style="background: none 0% 0% repeat scroll rgb(255, 255, 255); box-sizing: border-box; color: #333333; font-family: Consolas, Menlo, Monaco, "Lucida Console", "Liberation Mono", "DejaVu Sans Mono", "Bitstream Vera Sans Mono", monospace, serif; font-size: 12px; margin-bottom: 0px; margin-top: 0px; margin: 0px; padding-bottom: 0px; padding-top: 0px; padding: 0px 10px; vertical-align: baseline;"><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin-bottom: 0px; margin-top: 0px; margin: 0px 0px 0px -6px; padding-bottom: 0px; padding-top: 0px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin-bottom: 0px; margin-top: 0px; margin: 0px 0px 0px -7px; padding-bottom: 0px; padding-top: 0px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"><span class="coMULTI" style="box-sizing: border-box; color: grey; font-style: italic; margin-bottom: 0px; margin-top: 0px; margin: 0px; padding-bottom: 0px; padding-top: 0px; padding: 0px; vertical-align: baseline;">/*</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin-bottom: 0px; margin-top: 0px; margin: 0px 0px 0px -6px; padding-bottom: 0px; padding-top: 0px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin-bottom: 0px; margin-top: 0px; margin: 0px 0px 0px -7px; padding-bottom: 0px; padding-top: 0px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> </div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin-bottom: 0px; margin-top: 0px; margin: 0px 0px 0px -6px; padding-bottom: 0px; padding-top: 0px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin-bottom: 0px; margin-top: 0px; margin: 0px 0px 0px -7px; padding-bottom: 0px; padding-top: 0px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"><span class="coMULTI" style="box-sizing: border-box; color: grey; font-style: italic; margin-bottom: 0px; margin-top: 0px; margin: 0px; padding-bottom: 0px; padding-top: 0px; padding: 0px; vertical-align: baseline;"> HelloWorld.ino</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin-bottom: 0px; margin-top: 0px; margin: 0px 0px 0px -6px; padding-bottom: 0px; padding-top: 0px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin-bottom: 0px; margin-top: 0px; margin: 0px 0px 0px -7px; padding-bottom: 0px; padding-top: 0px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> </div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin-bottom: 0px; margin-top: 0px; margin: 0px 0px 0px -6px; padding-bottom: 0px; padding-top: 0px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin-bottom: 0px; margin-top: 0px; margin: 0px 0px 0px -7px; padding-bottom: 0px; padding-top: 0px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"><span class="coMULTI" style="box-sizing: border-box; color: grey; font-style: italic; margin-bottom: 0px; margin-top: 0px; margin: 0px; padding-bottom: 0px; padding-top: 0px; padding: 0px; vertical-align: baseline;"> Universal 8bit Graphics Library (https://github.com/olikraus/u8g2/)</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin-bottom: 0px; margin-top: 0px; margin: 0px 0px 0px -6px; padding-bottom: 0px; padding-top: 0px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin-bottom: 0px; margin-top: 0px; margin: 0px 0px 0px -7px; padding-bottom: 0px; padding-top: 0px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> </div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin-bottom: 0px; margin-top: 0px; margin: 0px 0px 0px -6px; padding-bottom: 0px; padding-top: 0px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin-bottom: 0px; margin-top: 0px; margin: 0px 0px 0px -7px; padding-bottom: 0px; padding-top: 0px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"><span class="coMULTI" style="box-sizing: border-box; color: grey; font-style: italic; margin-bottom: 0px; margin-top: 0px; margin: 0px; padding-bottom: 0px; padding-top: 0px; padding: 0px; vertical-align: baseline;"> Copyright (c) 2016, olikraus@gmail.com</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin-bottom: 0px; margin-top: 0px; margin: 0px 0px 0px -6px; padding-bottom: 0px; padding-top: 0px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin-bottom: 0px; margin-top: 0px; margin: 0px 0px 0px -7px; padding-bottom: 0px; padding-top: 0px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"><span class="coMULTI" style="box-sizing: border-box; color: grey; font-style: italic; margin-bottom: 0px; margin-top: 0px; margin: 0px; padding-bottom: 0px; padding-top: 0px; padding: 0px; vertical-align: baseline;"> All rights reserved.</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin-bottom: 0px; margin-top: 0px; margin: 0px 0px 0px -6px; padding-bottom: 0px; padding-top: 0px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin-bottom: 0px; margin-top: 0px; margin: 0px 0px 0px -7px; padding-bottom: 0px; padding-top: 0px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> </div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin-bottom: 0px; margin-top: 0px; margin: 0px 0px 0px -6px; padding-bottom: 0px; padding-top: 0px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin-bottom: 0px; margin-top: 0px; margin: 0px 0px 0px -7px; padding-bottom: 0px; padding-top: 0px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"><span class="coMULTI" style="box-sizing: border-box; color: grey; font-style: italic; margin-bottom: 0px; margin-top: 0px; margin: 0px; padding-bottom: 0px; padding-top: 0px; padding: 0px; vertical-align: baseline;"> Redistribution and use in source and binary forms, with or without modification, </span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin-bottom: 0px; margin-top: 0px; margin: 0px 0px 0px -6px; padding-bottom: 0px; padding-top: 0px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin-bottom: 0px; margin-top: 0px; margin: 0px 0px 0px -7px; padding-bottom: 0px; padding-top: 0px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"><span class="coMULTI" style="box-sizing: border-box; color: grey; font-style: italic; margin-bottom: 0px; margin-top: 0px; margin: 0px; padding-bottom: 0px; padding-top: 0px; padding: 0px; vertical-align: baseline;"> are permitted provided that the following conditions are met:</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin-bottom: 0px; margin-top: 0px; margin: 0px 0px 0px -6px; padding-bottom: 0px; padding-top: 0px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin-bottom: 0px; margin-top: 0px; margin: 0px 0px 0px -7px; padding-bottom: 0px; padding-top: 0px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> </div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin-bottom: 0px; margin-top: 0px; margin: 0px 0px 0px -6px; padding-bottom: 0px; padding-top: 0px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin-bottom: 0px; margin-top: 0px; margin: 0px 0px 0px -7px; padding-bottom: 0px; padding-top: 0px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"><span class="coMULTI" style="box-sizing: border-box; color: grey; font-style: italic; margin-bottom: 0px; margin-top: 0px; margin: 0px; padding-bottom: 0px; padding-top: 0px; padding: 0px; vertical-align: baseline;"> * Redistributions of source code must retain the above copyright notice, this list </span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin-bottom: 0px; margin-top: 0px; margin: 0px 0px 0px -6px; padding-bottom: 0px; padding-top: 0px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin-bottom: 0px; margin-top: 0px; margin: 0px 0px 0px -7px; padding-bottom: 0px; padding-top: 0px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"><span class="coMULTI" style="box-sizing: border-box; color: grey; font-style: italic; margin-bottom: 0px; margin-top: 0px; margin: 0px; padding-bottom: 0px; padding-top: 0px; padding: 0px; vertical-align: baseline;"> of conditions and the following disclaimer.</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin-bottom: 0px; margin-top: 0px; margin: 0px 0px 0px -6px; padding-bottom: 0px; padding-top: 0px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin-bottom: 0px; margin-top: 0px; margin: 0px 0px 0px -7px; padding-bottom: 0px; padding-top: 0px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"><span class="coMULTI" style="box-sizing: border-box; color: grey; font-style: italic; margin-bottom: 0px; margin-top: 0px; margin: 0px; padding-bottom: 0px; padding-top: 0px; padding: 0px; vertical-align: baseline;"> </span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin-bottom: 0px; margin-top: 0px; margin: 0px 0px 0px -6px; padding-bottom: 0px; padding-top: 0px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin-bottom: 0px; margin-top: 0px; margin: 0px 0px 0px -7px; padding-bottom: 0px; padding-top: 0px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"><span class="coMULTI" style="box-sizing: border-box; color: grey; font-style: italic; margin-bottom: 0px; margin-top: 0px; margin: 0px; padding-bottom: 0px; padding-top: 0px; padding: 0px; vertical-align: baseline;"> * Redistributions in binary form must reproduce the above copyright notice, this </span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin-bottom: 0px; margin-top: 0px; margin: 0px 0px 0px -6px; padding-bottom: 0px; padding-top: 0px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin-bottom: 0px; margin-top: 0px; margin: 0px 0px 0px -7px; padding-bottom: 0px; padding-top: 0px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"><span class="coMULTI" style="box-sizing: border-box; color: grey; font-style: italic; margin-bottom: 0px; margin-top: 0px; margin: 0px; padding-bottom: 0px; padding-top: 0px; padding: 0px; vertical-align: baseline;"> list of conditions and the following disclaimer in the documentation and/or other </span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin-bottom: 0px; margin-top: 0px; margin: 0px 0px 0px -6px; padding-bottom: 0px; padding-top: 0px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin-bottom: 0px; margin-top: 0px; margin: 0px 0px 0px -7px; padding-bottom: 0px; padding-top: 0px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"><span class="coMULTI" style="box-sizing: border-box; color: grey; font-style: italic; margin-bottom: 0px; margin-top: 0px; margin: 0px; padding-bottom: 0px; padding-top: 0px; padding: 0px; vertical-align: baseline;"> materials provided with the distribution.</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin-bottom: 0px; margin-top: 0px; margin: 0px 0px 0px -6px; padding-bottom: 0px; padding-top: 0px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin-bottom: 0px; margin-top: 0px; margin: 0px 0px 0px -7px; padding-bottom: 0px; padding-top: 0px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> </div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin-bottom: 0px; margin-top: 0px; margin: 0px 0px 0px -6px; padding-bottom: 0px; padding-top: 0px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin-bottom: 0px; margin-top: 0px; margin: 0px 0px 0px -7px; padding-bottom: 0px; padding-top: 0px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"><span class="coMULTI" style="box-sizing: border-box; color: grey; font-style: italic; margin-bottom: 0px; margin-top: 0px; margin: 0px; padding-bottom: 0px; padding-top: 0px; padding: 0px; vertical-align: baseline;"> THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND </span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin-bottom: 0px; margin-top: 0px; margin: 0px 0px 0px -6px; padding-bottom: 0px; padding-top: 0px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin-bottom: 0px; margin-top: 0px; margin: 0px 0px 0px -7px; padding-bottom: 0px; padding-top: 0px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"><span class="coMULTI" style="box-sizing: border-box; color: grey; font-style: italic; margin-bottom: 0px; margin-top: 0px; margin: 0px; padding-bottom: 0px; padding-top: 0px; padding: 0px; vertical-align: baseline;"> CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, </span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin-bottom: 0px; margin-top: 0px; margin: 0px 0px 0px -6px; padding-bottom: 0px; padding-top: 0px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin-bottom: 0px; margin-top: 0px; margin: 0px 0px 0px -7px; padding-bottom: 0px; padding-top: 0px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"><span class="coMULTI" style="box-sizing: border-box; color: grey; font-style: italic; margin-bottom: 0px; margin-top: 0px; margin: 0px; padding-bottom: 0px; padding-top: 0px; padding: 0px; vertical-align: baseline;"> INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF </span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin-bottom: 0px; margin-top: 0px; margin: 0px 0px 0px -6px; padding-bottom: 0px; padding-top: 0px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin-bottom: 0px; margin-top: 0px; margin: 0px 0px 0px -7px; padding-bottom: 0px; padding-top: 0px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"><span class="coMULTI" style="box-sizing: border-box; color: grey; font-style: italic; margin-bottom: 0px; margin-top: 0px; margin: 0px; padding-bottom: 0px; padding-top: 0px; padding: 0px; vertical-align: baseline;"> MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE </span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin-bottom: 0px; margin-top: 0px; margin: 0px 0px 0px -6px; padding-bottom: 0px; padding-top: 0px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin-bottom: 0px; margin-top: 0px; margin: 0px 0px 0px -7px; padding-bottom: 0px; padding-top: 0px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"><span class="coMULTI" style="box-sizing: border-box; color: grey; font-style: italic; margin-bottom: 0px; margin-top: 0px; margin: 0px; padding-bottom: 0px; padding-top: 0px; padding: 0px; vertical-align: baseline;"> DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR </span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin-bottom: 0px; margin-top: 0px; margin: 0px 0px 0px -6px; padding-bottom: 0px; padding-top: 0px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin-bottom: 0px; margin-top: 0px; margin: 0px 0px 0px -7px; padding-bottom: 0px; padding-top: 0px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"><span class="coMULTI" style="box-sizing: border-box; color: grey; font-style: italic; margin-bottom: 0px; margin-top: 0px; margin: 0px; padding-bottom: 0px; padding-top: 0px; padding: 0px; vertical-align: baseline;"> CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, </span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin-bottom: 0px; margin-top: 0px; margin: 0px 0px 0px -6px; padding-bottom: 0px; padding-top: 0px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin-bottom: 0px; margin-top: 0px; margin: 0px 0px 0px -7px; padding-bottom: 0px; padding-top: 0px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"><span class="coMULTI" style="box-sizing: border-box; color: grey; font-style: italic; margin-bottom: 0px; margin-top: 0px; margin: 0px; padding-bottom: 0px; padding-top: 0px; padding: 0px; vertical-align: baseline;"> SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT </span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin-bottom: 0px; margin-top: 0px; margin: 0px 0px 0px -6px; padding-bottom: 0px; padding-top: 0px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin-bottom: 0px; margin-top: 0px; margin: 0px 0px 0px -7px; padding-bottom: 0px; padding-top: 0px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"><span class="coMULTI" style="box-sizing: border-box; color: grey; font-style: italic; margin-bottom: 0px; margin-top: 0px; margin: 0px; padding-bottom: 0px; padding-top: 0px; padding: 0px; vertical-align: baseline;"> NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; </span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin-bottom: 0px; margin-top: 0px; margin: 0px 0px 0px -6px; padding-bottom: 0px; padding-top: 0px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin-bottom: 0px; margin-top: 0px; margin: 0px 0px 0px -7px; padding-bottom: 0px; padding-top: 0px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"><span class="coMULTI" style="box-sizing: border-box; color: grey; font-style: italic; margin-bottom: 0px; margin-top: 0px; margin: 0px; padding-bottom: 0px; padding-top: 0px; padding: 0px; vertical-align: baseline;"> LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER </span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin-bottom: 0px; margin-top: 0px; margin: 0px 0px 0px -6px; padding-bottom: 0px; padding-top: 0px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin-bottom: 0px; margin-top: 0px; margin: 0px 0px 0px -7px; padding-bottom: 0px; padding-top: 0px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"><span class="coMULTI" style="box-sizing: border-box; color: grey; font-style: italic; margin-bottom: 0px; margin-top: 0px; margin: 0px; padding-bottom: 0px; padding-top: 0px; padding: 0px; vertical-align: baseline;"> CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, </span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin-bottom: 0px; margin-top: 0px; margin: 0px 0px 0px -6px; padding-bottom: 0px; padding-top: 0px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin-bottom: 0px; margin-top: 0px; margin: 0px 0px 0px -7px; padding-bottom: 0px; padding-top: 0px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"><span class="coMULTI" style="box-sizing: border-box; color: grey; font-style: italic; margin-bottom: 0px; margin-top: 0px; margin: 0px; padding-bottom: 0px; padding-top: 0px; padding: 0px; vertical-align: baseline;"> STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) </span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin-bottom: 0px; margin-top: 0px; margin: 0px 0px 0px -6px; padding-bottom: 0px; padding-top: 0px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin-bottom: 0px; margin-top: 0px; margin: 0px 0px 0px -7px; padding-bottom: 0px; padding-top: 0px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"><span class="coMULTI" style="box-sizing: border-box; color: grey; font-style: italic; margin-bottom: 0px; margin-top: 0px; margin: 0px; padding-bottom: 0px; padding-top: 0px; padding: 0px; vertical-align: baseline;"> ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF </span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin-bottom: 0px; margin-top: 0px; margin: 0px 0px 0px -6px; padding-bottom: 0px; padding-top: 0px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin-bottom: 0px; margin-top: 0px; margin: 0px 0px 0px -7px; padding-bottom: 0px; padding-top: 0px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"><span class="coMULTI" style="box-sizing: border-box; color: grey; font-style: italic; margin-bottom: 0px; margin-top: 0px; margin: 0px; padding-bottom: 0px; padding-top: 0px; padding: 0px; vertical-align: baseline;"> ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. </span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin-bottom: 0px; margin-top: 0px; margin: 0px 0px 0px -6px; padding-bottom: 0px; padding-top: 0px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin-bottom: 0px; margin-top: 0px; margin: 0px 0px 0px -7px; padding-bottom: 0px; padding-top: 0px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> </div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin-bottom: 0px; margin-top: 0px; margin: 0px 0px 0px -6px; padding-bottom: 0px; padding-top: 0px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin-bottom: 0px; margin-top: 0px; margin: 0px 0px 0px -7px; padding-bottom: 0px; padding-top: 0px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"><span class="coMULTI" style="box-sizing: border-box; color: grey; font-style: italic; margin-bottom: 0px; margin-top: 0px; margin: 0px; padding-bottom: 0px; padding-top: 0px; padding: 0px; vertical-align: baseline;">*/</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin-bottom: 0px; margin-top: 0px; margin: 0px 0px 0px -6px; padding-bottom: 0px; padding-top: 0px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin-bottom: 0px; margin-top: 0px; margin: 0px 0px 0px -7px; padding-bottom: 0px; padding-top: 0px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> </div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin-bottom: 0px; margin-top: 0px; margin: 0px 0px 0px -6px; padding-bottom: 0px; padding-top: 0px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin-bottom: 0px; margin-top: 0px; margin: 0px 0px 0px -7px; padding-bottom: 0px; padding-top: 0px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"><span class="co2" style="box-sizing: border-box; color: #339933; margin-bottom: 0px; margin-top: 0px; margin: 0px; padding-bottom: 0px; padding-top: 0px; padding: 0px; vertical-align: baseline;">#include <Arduino.h></span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin-bottom: 0px; margin-top: 0px; margin: 0px 0px 0px -6px; padding-bottom: 0px; padding-top: 0px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin-bottom: 0px; margin-top: 0px; margin: 0px 0px 0px -7px; padding-bottom: 0px; padding-top: 0px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"><span class="co2" style="box-sizing: border-box; color: #339933; margin-bottom: 0px; margin-top: 0px; margin: 0px; padding-bottom: 0px; padding-top: 0px; padding: 0px; vertical-align: baseline;">#include <U8g2lib.h></span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin-bottom: 0px; margin-top: 0px; margin: 0px 0px 0px -6px; padding-bottom: 0px; padding-top: 0px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin-bottom: 0px; margin-top: 0px; margin: 0px 0px 0px -7px; padding-bottom: 0px; padding-top: 0px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> </div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin-bottom: 0px; margin-top: 0px; margin: 0px 0px 0px -6px; padding-bottom: 0px; padding-top: 0px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin-bottom: 0px; margin-top: 0px; margin: 0px 0px 0px -7px; padding-bottom: 0px; padding-top: 0px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"><span class="co2" style="box-sizing: border-box; color: #339933; margin-bottom: 0px; margin-top: 0px; margin: 0px; padding-bottom: 0px; padding-top: 0px; padding: 0px; vertical-align: baseline;">#ifdef U8X8_HAVE_HW_SPI</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin-bottom: 0px; margin-top: 0px; margin: 0px 0px 0px -6px; padding-bottom: 0px; padding-top: 0px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin-bottom: 0px; margin-top: 0px; margin: 0px 0px 0px -7px; padding-bottom: 0px; padding-top: 0px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"><span class="co2" style="box-sizing: border-box; color: #339933; margin-bottom: 0px; margin-top: 0px; margin: 0px; padding-bottom: 0px; padding-top: 0px; padding: 0px; vertical-align: baseline;">#include <SPI.h></span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin-bottom: 0px; margin-top: 0px; margin: 0px 0px 0px -6px; padding-bottom: 0px; padding-top: 0px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin-bottom: 0px; margin-top: 0px; margin: 0px 0px 0px -7px; padding-bottom: 0px; padding-top: 0px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"><span class="co2" style="box-sizing: border-box; color: #339933; margin-bottom: 0px; margin-top: 0px; margin: 0px; padding-bottom: 0px; padding-top: 0px; padding: 0px; vertical-align: baseline;">#endif</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin-bottom: 0px; margin-top: 0px; margin: 0px 0px 0px -6px; padding-bottom: 0px; padding-top: 0px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin-bottom: 0px; margin-top: 0px; margin: 0px 0px 0px -7px; padding-bottom: 0px; padding-top: 0px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"><span class="co2" style="box-sizing: border-box; color: #339933; margin-bottom: 0px; margin-top: 0px; margin: 0px; padding-bottom: 0px; padding-top: 0px; padding: 0px; vertical-align: baseline;">#ifdef U8X8_HAVE_HW_I2C</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin-bottom: 0px; margin-top: 0px; margin: 0px 0px 0px -6px; padding-bottom: 0px; padding-top: 0px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin-bottom: 0px; margin-top: 0px; margin: 0px 0px 0px -7px; padding-bottom: 0px; padding-top: 0px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"><span class="co2" style="box-sizing: border-box; color: #339933; margin-bottom: 0px; margin-top: 0px; margin: 0px; padding-bottom: 0px; padding-top: 0px; padding: 0px; vertical-align: baseline;">#include <Wire.h></span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin-bottom: 0px; margin-top: 0px; margin: 0px 0px 0px -6px; padding-bottom: 0px; padding-top: 0px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin-bottom: 0px; margin-top: 0px; margin: 0px 0px 0px -7px; padding-bottom: 0px; padding-top: 0px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"><span class="co2" style="box-sizing: border-box; color: #339933; margin-bottom: 0px; margin-top: 0px; margin: 0px; padding-bottom: 0px; padding-top: 0px; padding: 0px; vertical-align: baseline;">#endif</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin-bottom: 0px; margin-top: 0px; margin: 0px 0px 0px -6px; padding-bottom: 0px; padding-top: 0px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin-bottom: 0px; margin-top: 0px; margin: 0px 0px 0px -7px; padding-bottom: 0px; padding-top: 0px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> </div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin-bottom: 0px; margin-top: 0px; margin: 0px 0px 0px -6px; padding-bottom: 0px; padding-top: 0px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin-bottom: 0px; margin-top: 0px; margin: 0px 0px 0px -7px; padding-bottom: 0px; padding-top: 0px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"><span class="coMULTI" style="box-sizing: border-box; color: grey; font-style: italic; margin-bottom: 0px; margin-top: 0px; margin: 0px; padding-bottom: 0px; padding-top: 0px; padding: 0px; vertical-align: baseline;">/*</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin-bottom: 0px; margin-top: 0px; margin: 0px 0px 0px -6px; padding-bottom: 0px; padding-top: 0px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin-bottom: 0px; margin-top: 0px; margin: 0px 0px 0px -7px; padding-bottom: 0px; padding-top: 0px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"><span class="coMULTI" style="box-sizing: border-box; color: grey; font-style: italic; margin-bottom: 0px; margin-top: 0px; margin: 0px; padding-bottom: 0px; padding-top: 0px; padding: 0px; vertical-align: baseline;"> U8g2lib Example Overview:</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin-bottom: 0px; margin-top: 0px; margin: 0px 0px 0px -6px; padding-bottom: 0px; padding-top: 0px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin-bottom: 0px; margin-top: 0px; margin: 0px 0px 0px -7px; padding-bottom: 0px; padding-top: 0px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"><span class="coMULTI" style="box-sizing: border-box; color: grey; font-style: italic; margin-bottom: 0px; margin-top: 0px; margin: 0px; padding-bottom: 0px; padding-top: 0px; padding: 0px; vertical-align: baseline;"> Frame Buffer Examples: clearBuffer/sendBuffer. Fast, but may not work with all Arduino boards because of RAM consumption</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin-bottom: 0px; margin-top: 0px; margin: 0px 0px 0px -6px; padding-bottom: 0px; padding-top: 0px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin-bottom: 0px; margin-top: 0px; margin: 0px 0px 0px -7px; padding-bottom: 0px; padding-top: 0px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"><span class="coMULTI" style="box-sizing: border-box; color: grey; font-style: italic; margin-bottom: 0px; margin-top: 0px; margin: 0px; padding-bottom: 0px; padding-top: 0px; padding: 0px; vertical-align: baseline;"> Page Buffer Examples: firstPage/nextPage. Less RAM usage, should work with all Arduino boards.</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin-bottom: 0px; margin-top: 0px; margin: 0px 0px 0px -6px; padding-bottom: 0px; padding-top: 0px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin-bottom: 0px; margin-top: 0px; margin: 0px 0px 0px -7px; padding-bottom: 0px; padding-top: 0px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"><span class="coMULTI" style="box-sizing: border-box; color: grey; font-style: italic; margin-bottom: 0px; margin-top: 0px; margin: 0px; padding-bottom: 0px; padding-top: 0px; padding: 0px; vertical-align: baseline;"> U8x8 Text Only Example: No RAM usage, direct communication with display controller. No graphics, 8x8 Text only.</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin-bottom: 0px; margin-top: 0px; margin: 0px 0px 0px -6px; padding-bottom: 0px; padding-top: 0px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin-bottom: 0px; margin-top: 0px; margin: 0px 0px 0px -7px; padding-bottom: 0px; padding-top: 0px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"><span class="coMULTI" style="box-sizing: border-box; color: grey; font-style: italic; margin-bottom: 0px; margin-top: 0px; margin: 0px; padding-bottom: 0px; padding-top: 0px; padding: 0px; vertical-align: baseline;"> </span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin-bottom: 0px; margin-top: 0px; margin: 0px 0px 0px -6px; padding-bottom: 0px; padding-top: 0px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin-bottom: 0px; margin-top: 0px; margin: 0px 0px 0px -7px; padding-bottom: 0px; padding-top: 0px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"><span class="coMULTI" style="box-sizing: border-box; color: grey; font-style: italic; margin-bottom: 0px; margin-top: 0px; margin: 0px; padding-bottom: 0px; padding-top: 0px; padding: 0px; vertical-align: baseline;">*/</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin-bottom: 0px; margin-top: 0px; margin: 0px 0px 0px -6px; padding-bottom: 0px; padding-top: 0px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin-bottom: 0px; margin-top: 0px; margin: 0px 0px 0px -7px; padding-bottom: 0px; padding-top: 0px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> </div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin-bottom: 0px; margin-top: 0px; margin: 0px 0px 0px -6px; padding-bottom: 0px; padding-top: 0px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin-bottom: 0px; margin-top: 0px; margin: 0px 0px 0px -7px; padding-bottom: 0px; padding-top: 0px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;">U8G2_SSD1309_128X64_NONAME0_F_4W_HW_SPI u8g2<span class="br0" style="box-sizing: border-box; color: #009900; margin-bottom: 0px; margin-top: 0px; margin: 0px; padding-bottom: 0px; padding-top: 0px; padding: 0px; vertical-align: baseline;">(</span>U8G2_R0<span class="sy0" style="box-sizing: border-box; color: #339933; margin-bottom: 0px; margin-top: 0px; margin: 0px; padding-bottom: 0px; padding-top: 0px; padding: 0px; vertical-align: baseline;">,</span> <span class="coMULTI" style="box-sizing: border-box; color: grey; font-style: italic; margin-bottom: 0px; margin-top: 0px; margin: 0px; padding-bottom: 0px; padding-top: 0px; padding: 0px; vertical-align: baseline;">/* cs=*/</span> <span class="nu0" style="box-sizing: border-box; color: #0000dd; margin-bottom: 0px; margin-top: 0px; margin: 0px; padding-bottom: 0px; padding-top: 0px; padding: 0px; vertical-align: baseline;">10</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin-bottom: 0px; margin-top: 0px; margin: 0px; padding-bottom: 0px; padding-top: 0px; padding: 0px; vertical-align: baseline;">,</span> <span class="coMULTI" style="box-sizing: border-box; color: grey; font-style: italic; margin-bottom: 0px; margin-top: 0px; margin: 0px; padding-bottom: 0px; padding-top: 0px; padding: 0px; vertical-align: baseline;">/* dc=*/</span> <span class="nu0" style="box-sizing: border-box; color: #0000dd; margin-bottom: 0px; margin-top: 0px; margin: 0px; padding-bottom: 0px; padding-top: 0px; padding: 0px; vertical-align: baseline;">9</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin-bottom: 0px; margin-top: 0px; margin: 0px; padding-bottom: 0px; padding-top: 0px; padding: 0px; vertical-align: baseline;">,</span> <span class="coMULTI" style="box-sizing: border-box; color: grey; font-style: italic; margin-bottom: 0px; margin-top: 0px; margin: 0px; padding-bottom: 0px; padding-top: 0px; padding: 0px; vertical-align: baseline;">/* reset=*/</span> <span class="nu0" style="box-sizing: border-box; color: #0000dd; margin-bottom: 0px; margin-top: 0px; margin: 0px; padding-bottom: 0px; padding-top: 0px; padding: 0px; vertical-align: baseline;">8</span><span class="br0" style="box-sizing: border-box; color: #009900; margin-bottom: 0px; margin-top: 0px; margin: 0px; padding-bottom: 0px; padding-top: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin-bottom: 0px; margin-top: 0px; margin: 0px; padding-bottom: 0px; padding-top: 0px; padding: 0px; vertical-align: baseline;">;</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin-bottom: 0px; margin-top: 0px; margin: 0px 0px 0px -6px; padding-bottom: 0px; padding-top: 0px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin-bottom: 0px; margin-top: 0px; margin: 0px 0px 0px -7px; padding-bottom: 0px; padding-top: 0px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> </div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin-bottom: 0px; margin-top: 0px; margin: 0px 0px 0px -6px; padding-bottom: 0px; padding-top: 0px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin-bottom: 0px; margin-top: 0px; margin: 0px 0px 0px -7px; padding-bottom: 0px; padding-top: 0px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> </div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin-bottom: 0px; margin-top: 0px; margin: 0px 0px 0px -6px; padding-bottom: 0px; padding-top: 0px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin-bottom: 0px; margin-top: 0px; margin: 0px 0px 0px -7px; padding-bottom: 0px; padding-top: 0px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"><span class="co1" style="box-sizing: border-box; color: #666666; font-style: italic; margin-bottom: 0px; margin-top: 0px; margin: 0px; padding-bottom: 0px; padding-top: 0px; padding: 0px; vertical-align: baseline;">// End of constructor list</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin-bottom: 0px; margin-top: 0px; margin: 0px 0px 0px -6px; padding-bottom: 0px; padding-top: 0px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin-bottom: 0px; margin-top: 0px; margin: 0px 0px 0px -7px; padding-bottom: 0px; padding-top: 0px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> </div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin-bottom: 0px; margin-top: 0px; margin: 0px 0px 0px -6px; padding-bottom: 0px; padding-top: 0px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin-bottom: 0px; margin-top: 0px; margin: 0px 0px 0px -7px; padding-bottom: 0px; padding-top: 0px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> </div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin-bottom: 0px; margin-top: 0px; margin: 0px 0px 0px -6px; padding-bottom: 0px; padding-top: 0px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin-bottom: 0px; margin-top: 0px; margin: 0px 0px 0px -7px; padding-bottom: 0px; padding-top: 0px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"><span class="kw4" style="box-sizing: border-box; color: #993333; margin-bottom: 0px; margin-top: 0px; margin: 0px; padding-bottom: 0px; padding-top: 0px; padding: 0px; vertical-align: baseline;">void</span> setup<span class="br0" style="box-sizing: border-box; color: #009900; margin-bottom: 0px; margin-top: 0px; margin: 0px; padding-bottom: 0px; padding-top: 0px; padding: 0px; vertical-align: baseline;">(</span><span class="kw4" style="box-sizing: border-box; color: #993333; margin-bottom: 0px; margin-top: 0px; margin: 0px; padding-bottom: 0px; padding-top: 0px; padding: 0px; vertical-align: baseline;">void</span><span class="br0" style="box-sizing: border-box; color: #009900; margin-bottom: 0px; margin-top: 0px; margin: 0px; padding-bottom: 0px; padding-top: 0px; padding: 0px; vertical-align: baseline;">)</span> <span class="br0" style="box-sizing: border-box; color: #009900; margin-bottom: 0px; margin-top: 0px; margin: 0px; padding-bottom: 0px; padding-top: 0px; padding: 0px; vertical-align: baseline;">{</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin-bottom: 0px; margin-top: 0px; margin: 0px 0px 0px -6px; padding-bottom: 0px; padding-top: 0px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin-bottom: 0px; margin-top: 0px; margin: 0px 0px 0px -7px; padding-bottom: 0px; padding-top: 0px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> u8g2.<span class="me1" style="box-sizing: border-box; color: #202020; margin-bottom: 0px; margin-top: 0px; margin: 0px; padding-bottom: 0px; padding-top: 0px; padding: 0px; vertical-align: baseline;">begin</span><span class="br0" style="box-sizing: border-box; color: #009900; margin-bottom: 0px; margin-top: 0px; margin: 0px; padding-bottom: 0px; padding-top: 0px; padding: 0px; vertical-align: baseline;">(</span><span class="br0" style="box-sizing: border-box; color: #009900; margin-bottom: 0px; margin-top: 0px; margin: 0px; padding-bottom: 0px; padding-top: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin-bottom: 0px; margin-top: 0px; margin: 0px; padding-bottom: 0px; padding-top: 0px; padding: 0px; vertical-align: baseline;">;</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin-bottom: 0px; margin-top: 0px; margin: 0px 0px 0px -6px; padding-bottom: 0px; padding-top: 0px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin-bottom: 0px; margin-top: 0px; margin: 0px 0px 0px -7px; padding-bottom: 0px; padding-top: 0px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"><span class="br0" style="box-sizing: border-box; color: #009900; margin-bottom: 0px; margin-top: 0px; margin: 0px; padding-bottom: 0px; padding-top: 0px; padding: 0px; vertical-align: baseline;">}</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin-bottom: 0px; margin-top: 0px; margin: 0px 0px 0px -6px; padding-bottom: 0px; padding-top: 0px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin-bottom: 0px; margin-top: 0px; margin: 0px 0px 0px -7px; padding-bottom: 0px; padding-top: 0px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> </div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin-bottom: 0px; margin-top: 0px; margin: 0px 0px 0px -6px; padding-bottom: 0px; padding-top: 0px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin-bottom: 0px; margin-top: 0px; margin: 0px 0px 0px -7px; padding-bottom: 0px; padding-top: 0px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"><span class="kw4" style="box-sizing: border-box; color: #993333; margin-bottom: 0px; margin-top: 0px; margin: 0px; padding-bottom: 0px; padding-top: 0px; padding: 0px; vertical-align: baseline;">void</span> loop<span class="br0" style="box-sizing: border-box; color: #009900; margin-bottom: 0px; margin-top: 0px; margin: 0px; padding-bottom: 0px; padding-top: 0px; padding: 0px; vertical-align: baseline;">(</span><span class="kw4" style="box-sizing: border-box; color: #993333; margin-bottom: 0px; margin-top: 0px; margin: 0px; padding-bottom: 0px; padding-top: 0px; padding: 0px; vertical-align: baseline;">void</span><span class="br0" style="box-sizing: border-box; color: #009900; margin-bottom: 0px; margin-top: 0px; margin: 0px; padding-bottom: 0px; padding-top: 0px; padding: 0px; vertical-align: baseline;">)</span> <span class="br0" style="box-sizing: border-box; color: #009900; margin-bottom: 0px; margin-top: 0px; margin: 0px; padding-bottom: 0px; padding-top: 0px; padding: 0px; vertical-align: baseline;">{</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin-bottom: 0px; margin-top: 0px; margin: 0px 0px 0px -6px; padding-bottom: 0px; padding-top: 0px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin-bottom: 0px; margin-top: 0px; margin: 0px 0px 0px -7px; padding-bottom: 0px; padding-top: 0px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> u8g2.<span class="me1" style="box-sizing: border-box; color: #202020; margin-bottom: 0px; margin-top: 0px; margin: 0px; padding-bottom: 0px; padding-top: 0px; padding: 0px; vertical-align: baseline;">clearBuffer</span><span class="br0" style="box-sizing: border-box; color: #009900; margin-bottom: 0px; margin-top: 0px; margin: 0px; padding-bottom: 0px; padding-top: 0px; padding: 0px; vertical-align: baseline;">(</span><span class="br0" style="box-sizing: border-box; color: #009900; margin-bottom: 0px; margin-top: 0px; margin: 0px; padding-bottom: 0px; padding-top: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin-bottom: 0px; margin-top: 0px; margin: 0px; padding-bottom: 0px; padding-top: 0px; padding: 0px; vertical-align: baseline;">;</span> <span class="co1" style="box-sizing: border-box; color: #666666; font-style: italic; margin-bottom: 0px; margin-top: 0px; margin: 0px; padding-bottom: 0px; padding-top: 0px; padding: 0px; vertical-align: baseline;">// clear the internal memory</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin-bottom: 0px; margin-top: 0px; margin: 0px 0px 0px -6px; padding-bottom: 0px; padding-top: 0px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin-bottom: 0px; margin-top: 0px; margin: 0px 0px 0px -7px; padding-bottom: 0px; padding-top: 0px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> u8g2.<span class="me1" style="box-sizing: border-box; color: #202020; margin-bottom: 0px; margin-top: 0px; margin: 0px; padding-bottom: 0px; padding-top: 0px; padding: 0px; vertical-align: baseline;">setFont</span><span class="br0" style="box-sizing: border-box; color: #009900; margin-bottom: 0px; margin-top: 0px; margin: 0px; padding-bottom: 0px; padding-top: 0px; padding: 0px; vertical-align: baseline;">(</span>u8g2_font_ncenB08_tr<span class="br0" style="box-sizing: border-box; color: #009900; margin-bottom: 0px; margin-top: 0px; margin: 0px; padding-bottom: 0px; padding-top: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin-bottom: 0px; margin-top: 0px; margin: 0px; padding-bottom: 0px; padding-top: 0px; padding: 0px; vertical-align: baseline;">;</span> <span class="co1" style="box-sizing: border-box; color: #666666; font-style: italic; margin-bottom: 0px; margin-top: 0px; margin: 0px; padding-bottom: 0px; padding-top: 0px; padding: 0px; vertical-align: baseline;">// choose a suitable font</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin-bottom: 0px; margin-top: 0px; margin: 0px 0px 0px -6px; padding-bottom: 0px; padding-top: 0px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin-bottom: 0px; margin-top: 0px; margin: 0px 0px 0px -7px; padding-bottom: 0px; padding-top: 0px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> u8g2.<span class="me1" style="box-sizing: border-box; color: #202020; margin-bottom: 0px; margin-top: 0px; margin: 0px; padding-bottom: 0px; padding-top: 0px; padding: 0px; vertical-align: baseline;">drawStr</span><span class="br0" style="box-sizing: border-box; color: #009900; margin-bottom: 0px; margin-top: 0px; margin: 0px; padding-bottom: 0px; padding-top: 0px; padding: 0px; vertical-align: baseline;">(</span><span class="nu0" style="box-sizing: border-box; color: #0000dd; margin-bottom: 0px; margin-top: 0px; margin: 0px; padding-bottom: 0px; padding-top: 0px; padding: 0px; vertical-align: baseline;">0</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin-bottom: 0px; margin-top: 0px; margin: 0px; padding-bottom: 0px; padding-top: 0px; padding: 0px; vertical-align: baseline;">,</span><span class="nu0" style="box-sizing: border-box; color: #0000dd; margin-bottom: 0px; margin-top: 0px; margin: 0px; padding-bottom: 0px; padding-top: 0px; padding: 0px; vertical-align: baseline;">10</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin-bottom: 0px; margin-top: 0px; margin: 0px; padding-bottom: 0px; padding-top: 0px; padding: 0px; vertical-align: baseline;">,</span><span class="st0" style="box-sizing: border-box; color: red; margin-bottom: 0px; margin-top: 0px; margin: 0px; padding-bottom: 0px; padding-top: 0px; padding: 0px; vertical-align: baseline;">"Hello World!"</span><span class="br0" style="box-sizing: border-box; color: #009900; margin-bottom: 0px; margin-top: 0px; margin: 0px; padding-bottom: 0px; padding-top: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin-bottom: 0px; margin-top: 0px; margin: 0px; padding-bottom: 0px; padding-top: 0px; padding: 0px; vertical-align: baseline;">;</span> <span class="co1" style="box-sizing: border-box; color: #666666; font-style: italic; margin-bottom: 0px; margin-top: 0px; margin: 0px; padding-bottom: 0px; padding-top: 0px; padding: 0px; vertical-align: baseline;">// write something to the internal memory</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin-bottom: 0px; margin-top: 0px; margin: 0px 0px 0px -6px; padding-bottom: 0px; padding-top: 0px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin-bottom: 0px; margin-top: 0px; margin: 0px 0px 0px -7px; padding-bottom: 0px; padding-top: 0px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> u8g2.<span class="me1" style="box-sizing: border-box; color: #202020; margin-bottom: 0px; margin-top: 0px; margin: 0px; padding-bottom: 0px; padding-top: 0px; padding: 0px; vertical-align: baseline;">sendBuffer</span><span class="br0" style="box-sizing: border-box; color: #009900; margin-bottom: 0px; margin-top: 0px; margin: 0px; padding-bottom: 0px; padding-top: 0px; padding: 0px; vertical-align: baseline;">(</span><span class="br0" style="box-sizing: border-box; color: #009900; margin-bottom: 0px; margin-top: 0px; margin: 0px; padding-bottom: 0px; padding-top: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin-bottom: 0px; margin-top: 0px; margin: 0px; padding-bottom: 0px; padding-top: 0px; padding: 0px; vertical-align: baseline;">;</span> <span class="co1" style="box-sizing: border-box; color: #666666; font-style: italic; margin-bottom: 0px; margin-top: 0px; margin: 0px; padding-bottom: 0px; padding-top: 0px; padding: 0px; vertical-align: baseline;">// transfer internal memory to the display</span></div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin-bottom: 0px; margin-top: 0px; margin: 0px 0px 0px -6px; padding-bottom: 0px; padding-top: 0px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin-bottom: 0px; margin-top: 0px; margin: 0px 0px 0px -7px; padding-bottom: 0px; padding-top: 0px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"> <span class="kw3" style="box-sizing: border-box; color: #000066; margin-bottom: 0px; margin-top: 0px; margin: 0px; padding-bottom: 0px; padding-top: 0px; padding: 0px; vertical-align: baseline;">delay</span><span class="br0" style="box-sizing: border-box; color: #009900; margin-bottom: 0px; margin-top: 0px; margin: 0px; padding-bottom: 0px; padding-top: 0px; padding: 0px; vertical-align: baseline;">(</span><span class="nu0" style="box-sizing: border-box; color: #0000dd; margin-bottom: 0px; margin-top: 0px; margin: 0px; padding-bottom: 0px; padding-top: 0px; padding: 0px; vertical-align: baseline;">1000</span><span class="br0" style="box-sizing: border-box; color: #009900; margin-bottom: 0px; margin-top: 0px; margin: 0px; padding-bottom: 0px; padding-top: 0px; padding: 0px; vertical-align: baseline;">)</span><span class="sy0" style="box-sizing: border-box; color: #339933; margin-bottom: 0px; margin-top: 0px; margin: 0px; padding-bottom: 0px; padding-top: 0px; padding: 0px; vertical-align: baseline;">;</span> </div></li><li class="li1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #acacac; list-style-type: decimal; margin-bottom: 0px; margin-top: 0px; margin: 0px 0px 0px -6px; padding-bottom: 0px; padding-top: 0px; padding: 0px; user-select: none; vertical-align: baseline;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: black; margin-bottom: 0px; margin-top: 0px; margin: 0px 0px 0px -7px; padding-bottom: 0px; padding-top: 0px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top; white-space: pre-wrap;"><span class="br0" style="box-sizing: border-box; color: #009900; margin-bottom: 0px; margin-top: 0px; margin: 0px; padding-bottom: 0px; padding-top: 0px; padding: 0px; vertical-align: baseline;">}</span></div></li></ol></div><span></span><span><br /></span></div><div><span><br /></span></div><div><span>Ecco il risultato:</span></div><div><span><br /></span></div><div class="separator" style="clear: both; text-align: center;"><a href="https://1.bp.blogspot.com/-c9u9dAmGt6o/X01kCrokDHI/AAAAAAAAHbk/5lQkXe2tkmI2E9sQN2cQcONRF-GkHqCJgCPcBGAsYHg/s3416/IMG_20200831_225409%257E2.jpg" style="margin-left: 1em; margin-right: 1em; text-align: center;"><img border="0" data-original-height="2933" data-original-width="3416" height="344" src="https://1.bp.blogspot.com/-c9u9dAmGt6o/X01kCrokDHI/AAAAAAAAHbk/5lQkXe2tkmI2E9sQN2cQcONRF-GkHqCJgCPcBGAsYHg/w400-h344/IMG_20200831_225409%257E2.jpg" width="400" /></a></div><div></div><div><br /></div>Questo è tutto,<br />Seguimi sulle mie pagine per rimanere sempre aggiornato sui nuovi post!Danielehttp://www.blogger.com/profile/09720964861202313121noreply@blogger.com0tag:blogger.com,1999:blog-390453114990638376.post-56618011548158909952020-09-05T14:28:00.005+02:002020-09-05T14:28:53.462+02:00la memoria EEPROM di Arduino, leggerla e scriverla con Get e Put<div dir="ltr" style="text-align: left;" trbidi="on">
Ciao!<br />
In questo post vi parlo di alcune semplici prove per iniziare ad utilizzare la memoria EEPROM di Arduino.<br />
<br />
Come già saprete, in questa memoria è possibile memorizzare dati che non perderete allo spegnimento della scheda. Un po' come avere un (piccolissimo) hard disc, all'interno del vostro Arduino.<br />
<br />
Certo, questo spazio di archiviazione è piuttosto ridicolo se comparato ad un vero disco rigido, pensate che è di solamente 1KB nell'Arduino Uno, ma sarò sufficiente per l'utilizzo in moltissimi progetti.<br />
L'uso che maggiormente ne faccio è quello di memorizzare parametri di lavoro che passo alla scheda, via bluetooth o wifi magari, e che non voglio perdere una volta che la scheda viene spenta.<br />
Ma è possibile addirittura usarla per un <a href="https://www.danielealberti.it/2017/10/datalogger-sulla-eeprom-di-arduino.html">semplicissimo datalogger</a>.<br />
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://1.bp.blogspot.com/-oIE99dc_6dA/Xvie8kDs5uI/AAAAAAAAHRg/1HGuhZpXrWgjX4Rjmw5mGsUc42CQwpA-ACLcBGAsYHQ/s1600/rom-30098_1280.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="939" data-original-width="1280" height="233" src="https://1.bp.blogspot.com/-oIE99dc_6dA/Xvie8kDs5uI/AAAAAAAAHRg/1HGuhZpXrWgjX4Rjmw5mGsUc42CQwpA-ACLcBGAsYHQ/s320/rom-30098_1280.png" width="320" /></a></div>
<br />
<a name='more'></a><br /><br />
Per scrivere e leggere un dato sulla memoria EEPROM, esistono vari metodi, in questo post vedremo il Put e il Get, che a differenza del Read e Write ci semplificano il lavoro quando vogliamo salvare dati di dimensioni maggiori di 1Byte (valore da 0 a 255).<br />
<br />
Passiamo subito al primo esempio concreto,<br />
Primo esempio di scrittura sulla EEPROM con il metodo Put/Get<br />
<br />
<br />
<ol class="arduino" style="background: rgb(247, 247, 247); color: #acacac; font-family: consolas, menlo, monaco, "lucida console", "liberation mono", "dejavu sans mono", "bitstream vera sans mono", monospace, serif; font-size: 12px; margin: 0px; padding: 0px 0px 0px 55px;">
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
<span class="co2" style="color: #339933;">#include <eeprom .h=""></eeprom></span></div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
</div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
<span class="kw4" style="color: #993333;">char</span> ArrayToWrite<span class="br0" style="color: #009900;">[</span><span class="nu0" style="color: #0000dd;">10</span><span class="br0" style="color: #009900;">]</span> <span class="sy0" style="color: #339933;">=</span> <span class="st0" style="color: red;">"TenChars!"</span> <span class="sy0" style="color: #339933;">;</span></div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
<span class="kw4" style="color: #993333;">char</span> ArrayToRead<span class="br0" style="color: #009900;">[</span><span class="nu0" style="color: #0000dd;">10</span><span class="br0" style="color: #009900;">]</span><span class="sy0" style="color: #339933;">;</span></div>
</li>
<li class="li2" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de2" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
<span class="kw4" style="color: #993333;">int</span> Address<span class="sy0" style="color: #339933;">;</span></div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
</div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
<span class="kw4" style="color: #993333;">void</span> setup<span class="br0" style="color: #009900;">(</span><span class="br0" style="color: #009900;">)</span> <span class="br0" style="color: #009900;">{</span></div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
</div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
Address <span class="sy0" style="color: #339933;">=</span> <span class="nu0" style="color: #0000dd;">0</span><span class="sy0" style="color: #339933;">;</span></div>
</li>
<li class="li2" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de2" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
</div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
</div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
<span class="kw3" style="color: #000066;">Serial</span>.<span class="me1" style="color: #202020;">begin</span><span class="br0" style="color: #009900;">(</span><span class="nu0" style="color: #0000dd;">9600</span><span class="br0" style="color: #009900;">)</span><span class="sy0" style="color: #339933;">;</span></div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
<span class="kw1" style="color: #b1b100;">while</span> <span class="br0" style="color: #009900;">(</span><span class="sy0" style="color: #339933;">!</span><span class="kw3" style="color: #000066;">Serial</span><span class="br0" style="color: #009900;">)</span> <span class="br0" style="color: #009900;">{</span></div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
<span class="sy0" style="color: #339933;">;</span> <span class="co1" style="color: #666666; font-style: italic;">// wait for serial port to connect. Needed for native USB port only</span></div>
</li>
<li class="li2" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de2" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
<span class="br0" style="color: #009900;">}</span></div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
</div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
<span class="co1" style="color: #666666; font-style: italic;">//One simple call, with the address first and the object second.</span></div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
EEPROM.<span class="me1" style="color: #202020;">put</span><span class="br0" style="color: #009900;">(</span>Address<span class="sy0" style="color: #339933;">,</span> ArrayToWrite<span class="br0" style="color: #009900;">)</span><span class="sy0" style="color: #339933;">;</span></div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
</div>
</li>
<li class="li2" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de2" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
<span class="kw3" style="color: #000066;">Serial</span>.<span class="me1" style="color: #202020;">println</span><span class="br0" style="color: #009900;">(</span><span class="st0" style="color: red;">"Data writed!"</span><span class="br0" style="color: #009900;">)</span><span class="sy0" style="color: #339933;">;</span></div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
</div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
EEPROM.<span class="me1" style="color: #202020;">get</span><span class="br0" style="color: #009900;">(</span>Address<span class="sy0" style="color: #339933;">,</span> ArrayToRead<span class="br0" style="color: #009900;">)</span><span class="sy0" style="color: #339933;">;</span></div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
</div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
<span class="kw3" style="color: #000066;">Serial</span>.<span class="me1" style="color: #202020;">print</span><span class="br0" style="color: #009900;">(</span><span class="st0" style="color: red;">"Readed: "</span><span class="br0" style="color: #009900;">)</span><span class="sy0" style="color: #339933;">;</span></div>
</li>
<li class="li2" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de2" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
<span class="kw3" style="color: #000066;">Serial</span>.<span class="me1" style="color: #202020;">println</span><span class="br0" style="color: #009900;">(</span>ArrayToRead<span class="br0" style="color: #009900;">)</span><span class="sy0" style="color: #339933;">;</span></div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
<span class="br0" style="color: #009900;">}</span></div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
</div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
<span class="kw4" style="color: #993333;">void</span> loop<span class="br0" style="color: #009900;">(</span><span class="br0" style="color: #009900;">)</span> <span class="br0" style="color: #009900;">{</span></div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
<span class="coMULTI" style="color: grey; font-style: italic;">/* Empty loop */</span></div>
</li>
<li class="li2" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de2" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
<span class="br0" style="color: #009900;">}</span></div>
</li>
</ol>
<br /><br />Questo sotto invece è un esempio di utilizzo dei metodi Put/Get con una struttura<br />
<br />
<ol class="arduino" style="background: rgb(247, 247, 247); color: #acacac; font-family: consolas, menlo, monaco, "lucida console", "liberation mono", "dejavu sans mono", "bitstream vera sans mono", monospace, serif; font-size: 12px; margin: 0px; padding: 0px 0px 0px 55px;">
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
<span class="co2" style="color: #339933;">#include <eeprom .h=""></eeprom></span></div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
</div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
struct MyObject <span class="br0" style="color: #009900;">{</span></div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
<span class="kw4" style="color: #993333;">float</span> field1<span class="sy0" style="color: #339933;">;</span></div>
</li>
<li class="li2" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de2" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
<span class="kw4" style="color: #993333;">byte</span> field2<span class="sy0" style="color: #339933;">;</span></div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
<span class="kw4" style="color: #993333;">char</span> name<span class="br0" style="color: #009900;">[</span><span class="nu0" style="color: #0000dd;">10</span><span class="br0" style="color: #009900;">]</span><span class="sy0" style="color: #339933;">;</span></div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
<span class="br0" style="color: #009900;">}</span><span class="sy0" style="color: #339933;">;</span></div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
</div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
<span class="kw4" style="color: #993333;">int</span> Address<span class="sy0" style="color: #339933;">;</span></div>
</li>
<li class="li2" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de2" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
</div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
<span class="kw4" style="color: #993333;">void</span> setup<span class="br0" style="color: #009900;">(</span><span class="br0" style="color: #009900;">)</span> <span class="br0" style="color: #009900;">{</span></div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
</div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
Address <span class="sy0" style="color: #339933;">=</span> <span class="nu0" style="color: #0000dd;">0</span><span class="sy0" style="color: #339933;">;</span></div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
</div>
</li>
<li class="li2" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de2" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
<span class="kw3" style="color: #000066;">Serial</span>.<span class="me1" style="color: #202020;">begin</span><span class="br0" style="color: #009900;">(</span><span class="nu0" style="color: #0000dd;">9600</span><span class="br0" style="color: #009900;">)</span><span class="sy0" style="color: #339933;">;</span></div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
<span class="kw1" style="color: #b1b100;">while</span> <span class="br0" style="color: #009900;">(</span><span class="sy0" style="color: #339933;">!</span><span class="kw3" style="color: #000066;">Serial</span><span class="br0" style="color: #009900;">)</span> <span class="br0" style="color: #009900;">{</span></div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
<span class="sy0" style="color: #339933;">;</span> <span class="co1" style="color: #666666; font-style: italic;">// wait for serial port to connect. Needed for native USB port only</span></div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
<span class="br0" style="color: #009900;">}</span></div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
</div>
</li>
<li class="li2" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de2" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
MyObject customVar <span class="sy0" style="color: #339933;">=</span> <span class="br0" style="color: #009900;">{</span></div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
<span class="nu17" style="color: purple;">3.14f</span><span class="sy0" style="color: #339933;">,</span></div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
<span class="nu0" style="color: #0000dd;">65</span><span class="sy0" style="color: #339933;">,</span></div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
<span class="st0" style="color: red;">"Working!"</span></div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
<span class="br0" style="color: #009900;">}</span><span class="sy0" style="color: #339933;">;</span></div>
</li>
<li class="li2" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de2" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
</div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
<span class="co1" style="color: #666666; font-style: italic;">//One simple call, with the address first and the object second.</span></div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
EEPROM.<span class="me1" style="color: #202020;">put</span><span class="br0" style="color: #009900;">(</span>Address<span class="sy0" style="color: #339933;">,</span> customVar<span class="br0" style="color: #009900;">)</span><span class="sy0" style="color: #339933;">;</span></div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
</div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
<span class="kw3" style="color: #000066;">Serial</span>.<span class="me1" style="color: #202020;">println</span><span class="br0" style="color: #009900;">(</span><span class="st0" style="color: red;">"Data writed!"</span><span class="br0" style="color: #009900;">)</span><span class="sy0" style="color: #339933;">;</span></div>
</li>
<li class="li2" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de2" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
</div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
</div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
EEPROM.<span class="me1" style="color: #202020;">get</span><span class="br0" style="color: #009900;">(</span>Address<span class="sy0" style="color: #339933;">,</span> customVar<span class="br0" style="color: #009900;">)</span><span class="sy0" style="color: #339933;">;</span></div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
</div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
<span class="kw3" style="color: #000066;">Serial</span>.<span class="me1" style="color: #202020;">print</span><span class="br0" style="color: #009900;">(</span><span class="st0" style="color: red;">"Readed: "</span><span class="br0" style="color: #009900;">)</span><span class="sy0" style="color: #339933;">;</span></div>
</li>
<li class="li2" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de2" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
<span class="kw3" style="color: #000066;">Serial</span>.<span class="me1" style="color: #202020;">print</span><span class="br0" style="color: #009900;">(</span>customVar.<span class="me1" style="color: #202020;">field1</span><span class="br0" style="color: #009900;">)</span><span class="sy0" style="color: #339933;">;</span></div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
<span class="kw3" style="color: #000066;">Serial</span>.<span class="me1" style="color: #202020;">print</span><span class="br0" style="color: #009900;">(</span><span class="st0" style="color: red;">", "</span><span class="br0" style="color: #009900;">)</span><span class="sy0" style="color: #339933;">;</span></div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
<span class="kw3" style="color: #000066;">Serial</span>.<span class="me1" style="color: #202020;">print</span><span class="br0" style="color: #009900;">(</span>customVar.<span class="me1" style="color: #202020;">field2</span><span class="br0" style="color: #009900;">)</span><span class="sy0" style="color: #339933;">;</span></div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
<span class="kw3" style="color: #000066;">Serial</span>.<span class="me1" style="color: #202020;">print</span><span class="br0" style="color: #009900;">(</span><span class="st0" style="color: red;">", "</span><span class="br0" style="color: #009900;">)</span><span class="sy0" style="color: #339933;">;</span></div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
<span class="kw3" style="color: #000066;">Serial</span>.<span class="me1" style="color: #202020;">println</span><span class="br0" style="color: #009900;">(</span>customVar.<span class="me1" style="color: #202020;">name</span><span class="br0" style="color: #009900;">)</span><span class="sy0" style="color: #339933;">;</span></div>
</li>
<li class="li2" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de2" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
<span class="br0" style="color: #009900;">}</span></div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
</div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
<span class="kw4" style="color: #993333;">void</span> loop<span class="br0" style="color: #009900;">(</span><span class="br0" style="color: #009900;">)</span> <span class="br0" style="color: #009900;">{</span></div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
<span class="coMULTI" style="color: grey; font-style: italic;">/* Empty loop */</span></div>
</li>
<li class="li1" style="background: rgb(255, 255, 255); margin: 0px 0px 0px -6px; user-select: none;"><div class="de1" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-left: 1px solid rgb(221, 221, 221); color: #333333; margin: 0px 0px 0px -7px; padding: 0px 8px; position: relative; user-select: text; vertical-align: top;">
<span class="br0" style="color: #009900;">}</span></div>
</li>
</ol>
<br />
<br />
Una cosa a cui prestare attenzione è che la EEPROM ha un numero limitato di cicli di scrittura (100k), può sembrare un numero enorme, ma può diventare molto piccolo se il codice non è ottimizzato.<br />
Un'altra funzione della libreria, che ci aiuta per questa evenienza, si chiama <a href="https://www.arduino.cc/en/Reference/EEPROMUpdate">Update</a>, e scrive un byte solo se è variato rispetto a quello già scritto nella memoria.<br />
<br />
Infine se volete leggere i valori dei singoli byte presenti nella EEPROM, trovate un codice utile nella pagina della <a href="https://www.arduino.cc/en/Reference/EEPROMRead">funzione Read</a><br />
<br /><br /></div><div dir="ltr" style="text-align: left;" trbidi="on">Questo è tutto, ciao!<br />Seguimi sulle mie pagine per rimanere sempre aggiornato sui nuovi post!</div><div dir="ltr" style="text-align: left;" trbidi="on"><br /></div><div dir="ltr" style="text-align: left;" trbidi="on">Riferimenti:<br /><a href="https://www.arduino.cc/en/Reference/EEPROM">https://www.arduino.cc/en/Reference/EEPROM</a><br />
<br /></div>
Danielehttp://www.blogger.com/profile/09720964861202313121noreply@blogger.com0Italia41.87194 12.5673813.561706163821157 -22.58887 70.182173836178848 47.72363