Cuprins:

Link la nivel mondial pentru microcontroler pentru pași sub 20 $ 15
Link la nivel mondial pentru microcontroler pentru pași sub 20 $ 15

Video: Link la nivel mondial pentru microcontroler pentru pași sub 20 $ 15

Video: Link la nivel mondial pentru microcontroler pentru pași sub 20 $ 15
Video: SkyWay - 15. Cum cumperi actiuni dupa ce te inscrii pe link-ul de sub video. NR limitat!!! 2024, Iulie
Anonim
Link la nivel mondial pentru microcontroler pentru sub 20 USD
Link la nivel mondial pentru microcontroler pentru sub 20 USD

Controlează-ți termostatul de acasă de la locul de muncă. Porniți un aspersor de oriunde din lume apăsând un comutator. Acest instructabil arată cum să legați două sau mai multe microcontrolere de 4 USD folosind coloana vertebrală a internetului și un cod simplu VB. Net. Acesta se bazează pe un instructabil anterior care arată cum să legați un microcontroler la un PC și să utilizați un pot pentru a controla un servo https://www.instructables.com/id/Control-real-world-devices-with-your-PC/ De data aceasta avem un microcontoler care vorbește cu un program VB. Net apoi cu un site web ftp, înapoi la un alt VB. Net programează și de acolo un al doilea microcontroler oriunde în lume, cu sau fără intervenția umană. Cum ar trebui să preia aparatele din Matrix dacă nu pot vorbi între ele?

Pasul 1: Adunați piesele

Adunați piesele
Adunați piesele

Multe dintre piese sunt aceleași ca în PC Control Instructable https://www.instructables.com/id/Control-real-world-devices-with-your-PC/ și se sugerează ca aceasta să fie finalizată mai întâi înainte de a încerca pentru a lega două microcontrolere. Deși este foarte posibil să folosiți un pot pentru a controla un servo, de data aceasta vom alege ceva mai simplu - un comutator care pornește un led. Comutatorul ar putea fi cu ușurință un senzor de nivel al rezervorului, iar ledul ar putea fi o pompă în jos lângă un râu, dar hai să lucrăm mai întâi cu ceva simplu. ed.co.uk/picaxe/ (Marea Britanie), PH Anderson https://www.phanderson.com/ (SUA) și Microzed https://www.microzed.com.au/ (Australia). Aceste jetoane sunt sub 4 USD. Două dintre: Protoboard, baterie de 9V și cleme pentru baterie, rezistor de 10k, rezistor de 22k, condensator de 33uF 16V, condensator de 0.1uF, regulator de 5V de mică putere 7805L, fire (telefon solid core / cablu de date de ex. Cat5 / 6), LED, rezistor de 1k. 1 din: soclu și capac feminin D9 și 2 metri de cablu de date 3 (sau 4) miez (pentru descărcare) și un comutator de comutare. 2 calculatoare cu porturi seriale cu 9 pini (totuși pot fi depanate pe un computer) și o conexiune la internet. Pentru computerele fără port serial, un dispozitiv USB către serial https://www.rev-ed.co.uk/docs/axe027.pdf și o priză stereo mică.

Pasul 2: Descărcați și instalați unele programe

Descărcați și instalați unele programe software
Descărcați și instalați unele programe software

Vom avea nevoie de software-ul gratuit VB. Net și controlerul picaxe și, dacă ați făcut controlerul pentru PC instructabil, veți avea deja acestea. VB. Net (Visual Basic Express) este disponibil de la https://msdn2.microsoft.com/en -us / express / aa718406.aspx Software-ul picaxe este disponibil de la https://www.rev-ed.co.uk/picaxe/ Va trebui să vă înregistrați la Microsoft pentru a descărca - dacă aceasta este o problemă, utilizați un e-mail fals sau ceva. De fapt, mi s-a părut util să-mi dau e-mailul real, deoarece trimit actualizări ocazionale. De asemenea, voi menționa forumul picaxe https://www.picaxeforum.co.uk/, deoarece acesta este genul de forum din care fac parte profesori și educatori și unde elevii pot obține de obicei răspunsuri la întrebări în câteva ore. Forumul înțelege chiar și cele mai simple întrebări, deoarece unii dintre elevi sunt încă la nivelul școlii primare. Vă rog să nu vă speriați să cereți ajutor!

Pasul 3: Construiți un circuit de descărcare

Construiți un circuit de descărcare
Construiți un circuit de descărcare

Acest circuit de descărcare folosește un cip picaxe, câteva rezistențe, un regulator și o baterie de 9V. Mai multe informații sunt disponibile în documentația / ajutorul picaxe care apare în meniul de ajutor al programului. Circuitul ar trebui să dureze câteva minute pentru a se construi odată ce toate piesele sunt la îndemână. Odată ce un cip este programat, acesta își păstrează programul în EEPROM chiar și atunci când alimentarea este oprită. Întrucât programăm două jetoane, ar merita să etichetăm jetoanele, astfel încât să știți care este. Puteți oricând să vă întoarceți și să reprogramați un cip eliminând un link și mutând un rezistor.

Aș putea adăuga, de asemenea, că picax-urile rulează fericit pe 3 baterii AA. O sursă reglementată de 5V este utilă pentru rularea intrărilor analogice, deoarece tensiunile de referință nu se schimbă, dar pentru circuitele de pornire / oprire simple nu este necesară o sursă de reglare. Reglajul de 5V poate fi lăsat în afara acestor situații.

Pasul 4: Programați jetoanele

Programați jetoanele
Programați jetoanele

Vom numi un program Tx și unul Rx. Tx este cipul de control și are un comutator și un led. Rx are și un led. Când comutatorul se schimbă, semnalul trece de la Tx la Rx, schimbă ledul și schimbă, de asemenea, o a doua variabilă care apoi revine la Tx. Deci, bifați comutatorul și în mai puțin de un minut ledul se schimbă pe ambele circuite, indicând faptul că mesajul a ajuns acolo și Rx acționează pe noua poziție a comutatorului. La cel mai simplu nivel, picaxe are 14 registre cu un singur octet. Când se creează o rețea virtuală, conectăm toate aceste registre împreună, astfel încât dacă un octet se schimbă într-un picaxe, acesta se schimbă în toate picaxurile. În mod clar, dacă doi picaxes încearcă să schimbe același octet, atunci va deveni foarte confuz, dar dacă fiecare picaxe schimbă doar un octet, atunci toți ceilalți picaxes pot vedea schimbarea și pot acționa asupra ei. Mesajele simple pot fi transmise înapoi și înainte dacă un anumit octet este schimbat doar de un singur picaxe. Un pot poate schimba valoarea într-un registru și unul sau mai multe alte picaxes pot simți că schimbă și mută un servo sau orice altceva și pot porni un radiator. Un al doilea registru ar putea trimite temperatura în cameră. Copiați și lipiți programele la rândul lor în programatorul picaxe și descărcați-le pe fiecare dintre cipurile respective folosind săgeata albastră de descărcare din programatorul picaxe. Tx: principal: serin 3, N2400, („Date”), b0, b1, b2, b3, b4, b5, b6, b7, b8, b9, b10, b11, b12, b13 'obțineți pachetul de pe computer dacă pin2 = 0 apoi „testați comutatorul și setați registrul b0 în funcție de starea b0 = 0 altceva b0 = 1 endif dacă b1 = 0 atunci„ alte seturi de picaxe b1 în funcție de b0 scăzut 1 's-a oprit altfel s-a ridicat 1' s-a dus pe endif serout 0, N2400, („Date”, b0, b1, b2, b3, b4, b5, b6, b7, b8, b9, b10, b11, b12, b13) „trimiteți înapoi la computer mergeți principal și Rx: principal: serin 3, N2400, („Date”), b0, b1, b2, b3, b4, b5, b6, b7, b8, b9, b10, b11, b12, b13 'obțineți pachetul de pe computer b1 = b0' schimbați registrul b1 la registrul egal b0 dacă b1 = 0 apoi scăzut 1 'led off alt 1' led pe endif serout 0, N2400, ("Date", b0, b1, b2, b3, b4, b5, b6, b7, b8, b9, b10, b11, b12, b13) 'trimite înapoi la computer

Pasul 5: Construiți circuitul Tx

Construiți circuitul Tx
Construiți circuitul Tx

Dacă răsuciți înainte și înapoi între un circuit de lucru și un circuit de programare, asigurați-vă că schimbați conexiunea la piciorul 2 și locația rezistorului 22k de la piciorul 2 la piciorul 4. Sau puteți construi un circuit dedicat de descărcare și mutați cipurile peste. Rețineți doar dacă un circuit rulează sau se descarcă, deoarece poate deveni destul de confuz. În special, rețineți că un circuit de rulare nu va funcționa dacă piciorul 2 este lăsat plutitor - trebuie să fie împământat. Etapa 2 este pinul de descărcare și, dacă este lăsat plutitor, preia RF rătăcită de la luminile faro și cipul crede că se descarcă un alt program.

De asemenea, merită menționat nomenclatura picaxe care numește un pin fizic un picior și un pin virtual un pin. Astfel, o ieșire pe pinul 2 din cod este de fapt o ieșire pe piciorul fizic 5. Acest lucru ar putea părea ciudat, dar înseamnă că codul poate fi portat pe picaxes mai mari, cum ar fi versiunile cu 28 și 40 de pini și să funcționeze în continuare.

Pasul 6: Construiți circuitul Rx

Construiți circuitul Rx
Construiți circuitul Rx

Acest circuit este aproape același cu transmițătorul - pur și simplu nu are comutator.

Pasul 7: Scrieți câteva coduri VB. Net

Scrieți câteva coduri VB. Net
Scrieți câteva coduri VB. Net

Aș fi putut compila codul și aș fi făcut acest program disponibil ca un.exe compilat, dar învățarea unor VB. Net este atât de incredibil de utilă, încât merită să o parcurg pas cu pas. Dacă rulați acest lucru pe două computere diferite, puteți construi programul într-un.exe care creează un mic program de instalare care poate fi instalat pe al doilea computer. Sau puteți pune VB. Net pe ambele computere și puteți rula programele din VB. Net Să presupunem că știți cum să deschideți un nou proiect VB.net de la pasii 7 și 8 din https://www.instructables.com/id/S1MMU2XF82EU2GT / Pe formularul gol, să adăugăm următoarele componente din bara de instrumente și să le punem pe formular în locațiile așa cum se arată. Pentru etichete și casete de text, modificați proprietatea textului (deasupra din dreapta jos) la ceea ce este necesar. Nu vă faceți griji cu privire la setările pentru temporizator - le vom modifica în cod, dar asigurați-vă că introduceți un temporizator. Puteți muta lucrurile și nu există reguli reale despre locație. Caseta de text mare este un RichTextBox, iar cele mai mici trei sunt casete de text obișnuite. În ceea ce privește ordinea, începem din partea de sus a formularului și ne deplasăm în jos. Dacă lăsați ceva afară, va apărea o eroare în cod care ar trebui să ofere un fel de indiciu. Vă rugăm să alegeți un nume de fișier aleatoriu pentru Textbox3 - acesta este numele grupului dvs. unic de picaxes pe serverul ftp și, evident, dacă folosim cu toții același nume, atunci datele vor fi confundate! Ne pare rău pentru cratimele din acest tabel - punerea în spații pierde formatarea din tabel. Obiectul Toolbox ------- Text ----------- ------------------------------ NotesLabel1 ------------------ Picaxe CommunicationsLabel2 ------------------ FTP StatusLabel3 ------------------ StatusLabel4 ---------- -------- Picaxe RegistersLabel5 ------------------ Register 0-13Label6 ------------------ Valoare 0-255Label7 ------------------ FTP link file nameTextbox1 ---------------- 0 -------- -------------------------------------- 0 este un zero nu un OTextbox2 ----- ----------- 0Textbox3 ---------------- Myfilename --------------------- ---------- Schimbați, astfel încât să nu existe ciocniri! Buton1 ------------------ ModificațiRichtextbox1 Picturebox1 Picturebox2 Timer1

Pasul 8: Adăugați un cod

Adăugați un cod
Adăugați un cod

Consultați pasul 12 al celuilalt instructable pentru locația butonului care se rotește între vizualizarea formularului și vizualizarea codului. Treceți la vizualizarea codului și lipiți următorul cod. Culorile ar trebui să reapară toate ca în captura de ecran. Dacă o linie nu a copiat corect din cauza unei probleme de wordwrap, ștergeți spațiile până când mesajul de eroare dispare. Am încercat să comentez majoritatea liniilor, astfel încât codul să aibă cel puțin un sens. Ștergeți bitul clasei publice astfel încât textul să fie gol înainte de a lipi acest cod - acest cod are deja o clasă publică. Dacă un obiect, cum ar fi o casetă de text, nu a fost plasat pe formular sau are un nume greșit, atunci acesta va apărea în codul de text cu o linie albastră strâmbă sub el. lucruri precum stânga (și dreapta (pentru șiruriPublic Class Form1 Public Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Integer) 'pentru declarațiile de somn Pe măsură ce Byte 'înregistrează de la b0 la b13 Dim ModifyFlag As Boolean Private Sub Form1_Load (ByVal sender As Object, ByVal e As System. EventArgs) Handles Me. Timer1. Enabled = Adevărat 'pune acest lucru în cod ca implicit la fals când a fost creat Timer1. Interval = 20000' la fiecare 20 de secunde PictureBox1. BackColor = Color. Gray 'începe cu casetele de comunicare gri PictureBox2. BackColor = Color. Gray ModifyFlag = False' dacă modificați manual o valoare, atunci s kip download RichTextBox1. Multiline = True 'deci poate afișa mai multe linii Apel DisplayPicaxeRegisters ()' afișează cele 14 registre Apel ReadFTPFilename () 'citește numele fișierului de pe disc (salvat la fiecare 20 de secunde) End Sub Sub SerialTxRx () Dim DataPacket () De la 0 la 17) Într-un pachet de date „Data” +14 octeți Dim i Ca număr întreg este întotdeauna util pentru bucle etc. Pentru i = 0 până la 3 DataPacket (i) = Asc (Mid („Date”, i + 1;) 'doar în cazul în care este deja deschis Sfârșit Dacă încercați cu serialPort. PortName = "COM1"' Majoritatea computerelor noi sunt implicite pentru com1, dar orice computer din 1999 cu un mouse serial va fi implicit implicit pentru com2. BaudRate = 2400 '2400 este viteza maximă pentru picaxes mici. Parity = IO. Ports. Parity. None 'no parity. DataBits = 8' 8 bits. StopBits = IO. Ports. StopBits. One 'bit one stop. ReadTimeout = 1000' milisecon ds deci expiră în 1 secundă dacă nu există răspuns. Deschideți () "deschideți portul serial. DiscInBuffer ()" ștergeți bufferul de intrare. Scrieți (DataPacket, 0, 18) "trimiteți matricea de pachete de date Apelați Sleep (300)" 100 de milisecunde minim pentru a aștepta revenirea datelor și mai mult dacă fluxul de date este mai lung. (i - 4) = DataPacket (i) 'mutați noul pachet de date în matricea de registre Următorul PictureBox1. BackColor = Color. GreenYellow' funcționează Captură ex ca excepție PictureBox1. BackColor = Color. Red 'nu funcționează Încearcă Încheie Sub Sub FTPUpload (ByVal Filename As String) Dim localFile As String 'place to store data Dim remoteFile As String' nume de fișier este sensibil la majuscule și minuscule, acest lucru este foarte important Const host As String = "ftp://ftp.0catch.com" 'nota 0 este un zero nu un caracter O Const username As String = "picaxe.0catch.com" Const password As String = "picaxetester" Dim URI As String localFile = Numele fișierului 'poate nu este necesar, dar dacă definiți o locație, de exemplu, c: / mydirectory poate adăuga cu ușurință în acest fel remoteFile = "/" + Fișierul' Filename 'de pe serverul ftp are nevoie "/" adăugat în față URI = gazdă + remoteFile Încercați Dim ftp ca sistem. Net. FtpWebRequest = CType (System. Net. FtpWebRequest. Create (URI), System. Net. FtpWebRequest) ftp. Credentials = Nou System. Net. NetworkCredential (nume de utilizator, parolă) 'log in ftp. KeepAlive = False' va fi deconectarea după ce ați terminat ftp. UseBinary = True 'utilizați comunicări binare ftp. Timeout = 9000' timeout după 9 secunde - foarte util deoarece ftp uneori moare timeout (și frecvența ceasului de 20 secunde) poate fi mai lentă pentru conexiunile dialup ftp. Method = System. Net. WebRequestMethods. Ftp. UploadFile 'începe trimiterea fișierului Dim fs As New FileStream (localFile, FileMode. Open)' deschide fișierul local Dim filecontents (fs. Length) As Byte 'citit în memorie fs. Read (filecontents, 0, fs. Length) fs. Close () 'închide fișierul Dim requestStream As Stream = ftp. GetRequestStream ()' start ftp link requestSt ream. Write (filecontents, 0, filecontents. Length) 'trimiteți-l requestStream. Close ()' închideți linkul PictureBox2. BackColor = Color. GreenYellow 'schimbați caseta în verde pentru a spune că a funcționat bine Label2. Text = "FTP Connected"' text spunând că este conectat Captură 'nu se poate conecta PictureBox2. BackColor = Caseta Color. Red' la roșu ca fără conexiune Label2. Text = "FTP Upload Fail" 'text spunând că conexiunea a eșuat Încearcă Încheie Sub Sub FTPDownload (ByVal Filename As String) 'Descarcă fișierul la distanță în fișierul local Dim localFile As String' loc pentru stocarea datelor Dim remoteFile As String numele fișierului este sensibil la majuscule, este foarte important Const host As String = "ftp://ftp.0catch.com" Const username As String = "picaxe.0catch.com "Const password As String =" picaxetester "Dim URI As String 'localFile =" C: / "+ File name' store in directory root but can change this localFile = Filename 'so can add c: / if need to define locație reală remoteFile = "/" + Numele fișierului 'adăugat la locația ftp la distanță URI = gazdă + remoteFile' make up adresa completă Încercați Dim ftp ca System. Net. FtpWebRequest = CType (System. Net. FtpWebRequest. Create (URI), System. Net. FtpWebRequest) ftp. Credentials = New System. Net. NetworkCredential (nume de utilizator, parolă) 'log în ftp. KeepAlive = False 'se va deconecta după terminarea ftp. UseBinary = True' mod binar ftp. Timeout = 9000 'timeout după 9 secunde ftp. Method = System. Net. WebRequestMethods. Ftp. DownloadFile' descarcă un fișier 'citit în bucăți ca nu știu cât de mare este fișierul Utilizarea răspunsului ca System. Net. FtpWebResponse = CType (ftp. GetResponse, System. Net. FtpWebResponse) Utilizarea responseStream ca IO. Stream = response. GetResponseStream Utilizarea fs ca IO. FileStream (localFile, IO. FileMode. Create) Dim buffer (2047) As Byte Dim read As Integer = 0 Do read = responseStream. Read (buffer, 0, buffer. Length) 'piece from ftp fs. Write (buffer, 0, read)' și scrieți în fișier Buclă Până citește = 0 'până când nu mai există bucăți responseStream. Close ()' închideți fișierul ftp fs. Flush () 'flush clear fs. Close ()' și închideți th Fișierul Încheiați folosirea responseStream. Close () 'închideți-l chiar dacă nu exista nimic Finalizați să folosiți răspunsul. Închideți () PictureBox2. BackColor = Color. GreenYellow' caseta verde în timp ce funcționa Label2. Text = "FTP Connected" 'și text spunând-o a funcționat Sfârșitul utilizând captura 'a pus codurile de eroare aici PictureBox2. BackColor = Color. Red' casetă roșie, deoarece nu a funcționat Label2. Text = "Descărcare FTP nu a reușit" 'și mesajul pentru a spune acest lucru Încearcă Sfârșit Sub Sub privat Timer1_Tick (expeditor ByVal Ca System. Object, ByVal și As System. EventArgs) Manipulează cronometrul 1. Bifați dacă ModifyFlag = False Apoi 'dacă utilizatorul a schimbat un octet, atunci nu descărcați Label3. Text = "Descărcare" System. Windows. Forms. Application. DoEvents () 'astfel încât noul text al etichetei să afișeze Call FTPDownload (TextBox3. Text)' descărcați fișierul la distanță Label3. Text = "Descărcat" System. Windows. Forms. Application. DoEvents () Apelați ReadRemoteFileToRegisters () 'salvați numerele de fișiere în matricea de înregistrare Label3. Text = "Vorbind cu picaxe" System. Windows. Forms. Application. DoEvents () Else ModifyFlag = False 'resetează semnalizatorul End If Call SerialTxRx () 'send to the picaxe and read it back Label3. Text = "Expediat și primit de la picaxe" System. Windows. Forms. Application. DoEvents () Apelați DisplayPicaxeRegisters () Apelați SaveRegistersToLocalFile ()' salvați numerele în fișier Label3. Text = "Încărcare" System. Windows. Forms. Application. DoEvents () Apelați FTPUpload (TextBox3. Text) 'trimiteți înapoi la site-ul ftp numit numele meu Label3. Text = "În repaus" Apelați SaveFTPFilename ()' așa se citește în când reporniți End Sub Sub DisplayPicaxeRegisters () Dim i As Integer Dim registernumber As String RichTextBox1. Multiline = True 'deci poate afișa mai multe linii în caseta de text RichTextBox1. Clear ()' ștergeți caseta de text Pentru i = 0 până la 13 registernumber = Trim (Str (i)) 'tăiați spațiile principale Dacă i <10 Apoi registernumber = "0" + registernumber' adăugați 0 la numerele sub 10 End If RichTextBox1. AppendText (registernumber + "=" + Str (PicaxeRegisters (i)) + Chr (13)) Următorul 'chr (13) este returnarea transportului, astfel încât noua linie End Sub Private Sub Button1_Click (ByVal sender Ca System. Object, ByVal e As System. EventArgs) Handles Button 1. Faceți clic pe Dim i As Integer 'verificați mai întâi din interval i = Val (TextBox1. Text) Dacă i <0 Sau i> 13 Apoi TextBox1. Text = 0 Sfârșit Dacă i = Val (TextBox2. Text) Dacă i <0 Sau i> 255 Apoi TextBox2. Text = 0 End If PicaxeRegisters (Val (TextBox1. Text)) = Val (TextBox2. Text) 'modificați valoarea Apelați DisplayPicaxeRegisters ()' și reîmprospătați afișajul ModifyFlag = True 'și următorul link ftp omiteți descărcarea End Sub Sub SaveRegistersToLocalFile ()' salvați matricea de registre într-un fișier text local Dim i As Integer FileOpen (1, TextBox3. Text, OpenMode. Output) 'deschideți fișierul text numit în caseta de text Pentru i = 0 la 13 PrintLine (1, Str (PicaxeRegisters (i))) 'salvați 14 valori Fișier următor Închideți (1)' închideți fișierul Finalizare Sub Sub ReadRemoteFileToRegisters () 'citiți fișierul de text local în matricea de registre Dim i As Integer Dim LineOfText As String Încercați FileOpen (1, TextBox3. Text, OpenMode. Input) 'citiți numele fișierului la distanță Pentru i = 0 la 13 LineOfText = LineInput (1)' citiți în linia 14 es PicaxeRegisters (i) = Val (LineOfText) 'convertește textul în valori Următorul fișier Închide (1) Prinde ex ca fișier Excepție Închide fișier (1)' nu există așa că nu faceți nimic Încercați Încheiați Sub Sub CitireFTPFilename () 'deci numele de fișierul ftp la distanță este același data viitoare când rulează acest program Dim LineOfText As String Încercați FileOpen (1, "FTPFilename.txt", OpenMode. Input) 'deschideți fișierul LineOfText = LineInput (1) TextBox3. Text = LineOfText' citiți nume FileClose (1) Catch ex As Exception FileClose (1) End Try End End Sub Save SaveFTPFilename () FileOpen (1, "FTPFilename.txt", OpenMode. Output) 'salvați numele fișierului ftp la distanță PrintLine (1, TextBox3. Text) FileClose (1) End SubEnd Class

Pasul 9: Rulați programul pe ambele computere

Rulați programul pe ambele computere
Rulați programul pe ambele computere

Începeți să rulați programul făcând clic pe triunghiul verde din partea de sus a mijlocului ecranului - butonul „Începeți depanarea”. Nimic nu se va întâmpla timp de 20 de secunde și apoi programul va încerca să se conecteze la serverul ftp și va încerca să se conecteze la picaxe. Casetele cu imagini vor deveni roșii sau verzi. Locația ftp este un site web gratuit și oricine poate utiliza acest lucru, dar trebuie să utilizați un alt nume de fișier de lucru ftp (al meu este DoctorAcula1), altfel am putea ajunge cu datele reciproce dacă folosim același nume de fișier! Dacă doriți, puteți obține în cele din urmă propriul dvs. site ftp - schimbați doar locația ftp, numele de utilizator și parola în două locuri din codul de pe site-ul meu 0Catch. Majoritatea site-urilor web permit ftp. Mai multe computere pot accesa același fișier ftp - serverul de fișiere ftp sortează în ce ordine se întâmplă acestea. Ocazional apar blocaje de date sau blocări și acestea par să se întâmple la fiecare 20 de fișiere citite. Există un timeout în cod, dacă acest lucru se întâmplă, astfel încât nu returnează date decât date corupte. Utilizarea unei conexiuni în bandă largă cu o viteză de încărcare de 128 kg înseamnă că încărcarea fișierului durează aproximativ 3 secunde, dar uneori până la 8 secunde, majoritatea fiind preluată mai degrabă în strângere de mână decât în transferul de date. Aceasta setează timpul timer1 de cel puțin 20 de secunde, ținând cont de descărcare, încărcare și chat cu picaxe. Cu banda largă foarte rapidă, puteți reduce timpul ciclului. Puteți schimba manual un registru în cadrul programului VB. Dacă faceți acest lucru, următorul ciclu de temporizare omite descărcarea de pe site-ul ftp și trimite noile date la picaxe, apoi le citește înapoi și le încarcă. Noile date își găsesc astfel drumul către toate picaxurile legate de acest grup. Acest lucru este util pentru depanare și / sau pentru conectarea software-ului PC-ului la bucla hardware a microcontrolerului. Site-urile web pot accesa, de asemenea, bucla hardware folosind scriptul PERL sau similar pentru a scrie un fișier nou pe site-ul ftp. Această captură de ecran a fost realizată rulând cipul Tx, comutatorul a fost pornit și registrul b0 = la 1 a fost trimis la cipul Rx care schimbase apoi registrul b1 și 1. Ledul a fost astfel aprins pe ambele plăci. Aceasta este o aplicație banală, dar este ușor să porniți o pompă de 3,6Kw în locul unui led. Mai multe idei sunt la https://drvernacula.topcities.com/, inclusiv conectarea picaxurilor prin legături radio cu energie solară. Cu legăturile radio plus internetul, este posibil ca „Mașinile” să ajungă în multe colțuri ale globului. Există câteva idei în jurul forumului picaxe despre a duce mai departe această idee și a înlocui site-ul PC și ftp cu cipuri de server web dedicate care se conectează direct la un router. În mod clar, acest lucru ar reduce consumul de energie al unui link. Dacă sunteți interesat de discuții suplimentare, vă rugăm să postați pe comentariile structurabile și / sau pe forumul picaxe. Dr. James Moxham Adelaide, Australia de Sud

Pasul 10: Capturi de ecran ale Codului

Capturi de ecran ale Codului
Capturi de ecran ale Codului

La cerere, iată o serie de capturi de ecran ale codului vb.net cu toate formatările la locul lor. Acest cod a fost copiat de fapt din acest instructable și formatarea a reapărut automat. Ar fi mai bine să copiați și să lipiți textul decât să încercați să citiți aceste imagini, dar acestea vor fi utile dacă vă aflați într-un internet cafe și nu puteți instala vb.net.

Pasul 11: Screenshot2

Captură de ecran2
Captură de ecran2

Captură de ecran 2

Pasul 12: Captură de ecran 3

Captură de ecran 3
Captură de ecran 3

Captură de ecran 3

Pasul 13: Captură de ecran 4

Captură de ecran 4
Captură de ecran 4

Captură de ecran 4

Pasul 14: Captură de ecran 5

Captură de ecran 5
Captură de ecran 5

Captură de ecran 5

Pasul 15: Captură de ecran 6

Captură de ecran 6
Captură de ecran 6

Captură de ecran 6

Recomandat: