Innehållsförteckning:

Worldwide Microcontroller Link för under $ 20: 15 steg
Worldwide Microcontroller Link för under $ 20: 15 steg

Video: Worldwide Microcontroller Link för under $ 20: 15 steg

Video: Worldwide Microcontroller Link för under $ 20: 15 steg
Video: All Programmers Can Relate 2024, Juli
Anonim
Worldwide Microcontroller Link för under $ 20
Worldwide Microcontroller Link för under $ 20

Styr din hemtermostat från jobbet. Slå på en sprinkler var som helst i världen genom att trycka på en strömbrytare. Den här instruktionsboken visar hur du länkar två eller flera $ 4 mikrokontroller med hjälp av ryggraden på internet och några enkla VB. Net -koder. Detta bygger på en tidigare instruerbar som visar hur du kopplar en mikrokontroller till en dator och använder en kruka för att styra en servo https://www.instructables.com/id/Control-real-world-devices-with-your-PC/ Den här gången har vi en mikrokontroller som pratar med ett VB. Net-program sedan till en ftp-webbplats, tillbaka till ett annat VB. Net programmet och därifrån en andra mikrokontroller var som helst i världen, med eller utan mänskligt ingripande. Hur ska maskinerna i The Matrix annars ta över om de inte kan prata med varandra?

Steg 1: Samla delarna

Samla delarna
Samla delarna

Många av delarna är desamma som i PC Control Instructable https://www.instructables.com/id/Control-real-world-devices-with-your-PC/ och det föreslås att detta slutförs först innan du försöker för att länka två mikrokontroller. Även om det är fullt möjligt att använda en kruka för att styra en servo, kommer vi den här gången att gå till något enklare - en strömbrytare som slår på en lysdiod. Omkopplaren kan enkelt vara en tanknivåsensor och lysdioden kan vara en pump ner i närheten av en flod men låt oss få något enkelt att fungera först. Delar - Två Picaxe 08M -chips - tillgängliga från många källor, inklusive Rev Ed https://www.rev- ed.co.uk/picaxe/ (Storbritannien), PH Anderson https://www.phanderson.com/ (USA) och Microzed https://www.microzed.com.au/ (Australien). Dessa marker är under $ 4US. Två av: Protoboard, 9V batteri och batteriklämmor, 10k motstånd, 22k motstånd, 33uF 16V kondensator, 0.1uF kondensator, 7805L låg effekt 5V regulator, ledningar (telefon med fast kärna/datakabel t.ex. Cat5/6), LED, 1k motstånd. 1 av: D9 -hona och hölje och 2 meter med 3 (eller 4) kärndatakablar (för nedladdning) och en omkopplare. 2 datorer med 9 -stifts seriella portar (kan dock felsökas på en dator) och en internetanslutning. För datorer utan serieport, en USB till seriell enhet https://www.rev-ed.co.uk/docs/axe027.pdf och ett litet stereouttag.

Steg 2: Ladda ner och installera viss programvara

Ladda ner och installera lite programvara
Ladda ner och installera lite programvara

Vi behöver den kostnadsfria VB. Net och picaxe -kontrollprogramvaran och om du har gjort PC -styrenheten Instructable kommer du redan att ha dessa. VB. Net (Visual Basic Express) är tillgängligt från https://msdn2.microsoft.com/en -us/express/aa718406.aspx Picaxe -programvaran är tillgänglig från https://www.rev-ed.co.uk/picaxe/Du måste registrera dig hos Microsoft för att ladda ner -om detta är ett problem använder du en falsk e -post eller något. Jag tyckte faktiskt att det var bra att ge min riktiga e -post när de skickar enstaka uppdateringar. Jag kommer också att nämna picaxe -forumet https://www.picaxeforum.co.uk/ eftersom det här är ett slags forum som är bemannat av lärare och pedagoger och där eleverna oftast kan få svar på frågor inom några timmar. Forumet har stor förståelse för även de enklaste frågorna eftersom några av eleverna fortfarande är på grundskolenivå. Var inte rädd för att be om hjälp!

Steg 3: Bygg en nedladdningskrets

Bygg en nedladdningskrets
Bygg en nedladdningskrets

Denna nedladdningskrets använder ett picaxe -chip, ett par motstånd, en regulator och ett 9V -batteri. Mer information finns i picaxe -dokumentationen/hjälpen som visas i programmets hjälpmeny. Kretsen bör bara ta några minuter att bygga när alla delar är till hands. När ett chip är programmerat behåller det sitt program i EEPROM även när strömmen stängs av. Eftersom vi programmerar två marker kan det vara värt att märka chipsen så att du vet vilken som är vilken. Du kan alltid gå tillbaka och omprogrammera ett chip genom att ta bort en länk och flytta ett motstånd.

Jag kan också tillägga att picaxer körs lyckligt på 3 AA -batterier. En 5V reglerad matning är användbar för att köra analoga ingångar eftersom referensspänningarna inte ändras, men för enkla på/av -kretsar behövs ingen reglerad matning. 5V reg kan utelämnas i dessa situationer.

Steg 4: Programmera chipsen

Programmera chipsen
Programmera chipsen

Vi kommer att kalla ett program för Tx och ett för Rx. Tx är styrchipet och har en switch och en LED. Rx har också en LED. När omkopplaren ändras går signalen från Tx till Rx, ändrar LED och ändrar även en andra variabel som sedan går tillbaka till Tx. Så slå på omkopplaren och på mindre än en minut ändras LED: erna på båda kretsarna som indikerar att meddelandet kom dit och Rx verkar på den nya omkopplarpositionen. På den enklaste nivån har picaxen 14 enbytesregister. När ett virtuellt nätverk skapas länkar vi alla dessa register tillsammans så om en byte ändras i en picaxe ändras den i alla picaxerna. Det är uppenbart att om två picaxer försöker ändra samma byte blir det väldigt förvirrande, men om varje picax bara ändrar en byte kan alla andra picaxar se den förändringen och kan agera på den. Enkla meddelanden kan skickas fram och tillbaka om en viss byte bara ändras med en picax. En kruka kan ändra värdet i ett register och en eller flera andra picaxer kan känna den förändringen och flytta en servo eller vad som helst och slå på en värmare. Ett andra register kan skicka tillbaka temperaturen i rummet. Kopiera och klistra in programmen i tur och ordning i picaxe -programmeraren och ladda ner dem till var och en av respektive marker med den blå nedladdningspilen från picaxe -programmeraren. Tx: main: serin 3, N2400, ("Data"), b0, b1, b2, b3, b4, b5, b6, b7, b8, b9, b10, b11, b12, b13 'få paket från datorn om pin2 = 0 'testa sedan omkopplaren och ställ in registret b0 beroende på status b0 = 0 annars b0 = 1 endif om b1 = 0 sedan' andra picaxe -uppsättningar b1 beroende b0 låg 1 'led av annars hög 1' led på endif serout 0, N2400, ("Data", b0, b1, b2, b3, b4, b5, b6, b7, b8, b9, b10, b11, b12, b13) 'skicka tillbaka till datorn gå till mainand Rx: main: serin 3, N2400, ("Data"), b0, b1, b2, b3, b4, b5, b6, b7, b8, b9, b10, b11, b12, b13 'hämta paket från datorn b1 = b0' ändra register b1 till lika register b0 om b1 = 0 sedan låg 1 'led av annars hög 1' led på endif serout 0, N2400, ("Data", b0, b1, b2, b3, b4, b5, b6, b7, b8, b9, b10, b11, b12, b13) 'skicka tillbaka till datorn gå till main

Steg 5: Bygg Tx -kretsen

Bygg Tx -kretsen
Bygg Tx -kretsen

Om du bläddrar fram och tillbaka mellan en arbetskrets och en programmeringskrets, var noga med att ändra anslutningen till ben 2 och platsen för 22k -motståndet från ben 2 till ben 4. Eller så kan du bygga en dedikerad nedladdningskrets och flytta chipsen tvärs över. Observera bara om en krets körs eller laddas ner eftersom det kan bli ganska förvirrande. Observera särskilt att en löpkrets inte fungerar om ben 2 lämnas flytande - det måste jordas. Ben 2 är nedladdningsnålen och om den lämnas flytande plockar den upp stray RF från flouro -lampor och chipet tror att ett annat program laddas ner.

Det är också värt att nämna picaxe -nomenklatur som kallar en fysisk pin ett ben och en virtuell pin en pin. Således är en utmatning på stift 2 i koden faktiskt en utgång på det fysiska benet 5. Detta kan tyckas konstigt men det betyder att koden kan portas till större picaxer som 28- och 40 -stiftsversionerna och fortfarande fungerar.

Steg 6: Bygg Rx -kretsen

Bygg Rx -kretsen
Bygg Rx -kretsen

Denna krets är nästan densamma som sändaren - den har bara ingen omkopplare.

Steg 7: Skriv lite VB. Net -kod

Skriv lite VB. Net -kod
Skriv lite VB. Net -kod

Jag kunde ha sammanställt koden och gjort detta program tillgängligt som en kompilerad.exe men att lära sig lite VB. Net är så otroligt användbart att det är värt att gå igenom det steg för steg. Om du kör detta på två olika datorer kan du bygga programmet till ett.exe som skapar ett litet installationsprogram som kan installeras på den andra datorn. Eller så kan du sätta VB. Net på båda datorerna och köra program inifrån VB. Net Låt oss anta att du vet hur du öppnar ett nytt VB.net -projekt från steg 7 och 8 på https://www.instructables.com/id/S1MMU2XF82EU2GT /På det tomma formuläret lägger vi till följande komponenter från verktygsfältet och lägger dem på formuläret på platserna som visas. För etiketter och textrutor, ändra textegenskapen (över till nedre högra) till det som behövs. Oroa dig inte för inställningarna för timern - vi kommer att ändra dem i koden men se till att sätta in en timer. Du kan flytta runt och det finns inga riktiga regler om plats. Den stora textrutan är en RichTextBox och de mindre tre är vanliga textboxar. När det gäller ordning börjar vi högst upp i formuläret och går neråt. Om du lämnar något utanför det kommer det att finnas ett fel i koden som borde ge någon sorts ledtråd. Välj ett slumpmässigt filnamn för Textbox3 - detta är namnet på din unika grupp av picaxer på ftp -servern och uppenbarligen om vi alla använder samma namn då kommer data att bli förvirrad! Förlåt för streckarna i den här tabellen-att sätta i mellanslag förlorar formateringen i tabellen. Toolbox-objekt ------- Text ----------- ------------------------------ NotesLabel1 ------------------ Picaxe CommunicationsLabel2 ------------------ FTP StatusLabel3 ------------------ StatusLabel4 ---------- -------- Picaxe RegistersLabel5 ------------------ Register 0-13Label6 ------------------ Värde 0-255Label7 ------------------ FTP-länk filnamnTextbox1 ---------------- 0 -------- -------------------------------------- 0 är en nolla inte en OTextbox2 ----- ----------- 0Textbox3 ---------------- Myfilnamn --------------------- ---------- Ändra så inga krockar! Knapp1 ------------------ ÄndraRichtextbox1 Picturebox1 Picturebox2 Timer1

Steg 8: Lägg till lite kod

Lägg till lite kod
Lägg till lite kod

Se steg 12 i den andra instruerbara för platsen för knappen som bläddrar mellan formulärvy och kodvy. Byt till kodvy och klistra in följande kod. Färgerna ska alla dyka upp igen som på skärmdumpen. Om en rad inte har kopierats ordentligt på grund av ett wordwrap -problem raderar du mellanslag tills felmeddelandet försvinner. Jag har försökt kommentera de flesta raderna så att koden åtminstone är vettig. Ta bort den offentliga klassbiten så att texten är tom innan du klistrar in den - den här koden har redan en offentlig klass. Om ett objekt som en textruta inte har placerats i formuläret eller har fel namn kommer det upp i textkoden med en krusande blå linje under det. Importerar System. IOImports Strings = Microsoft. VisualBasic 'så kan använda saker som vänster (och höger (för stringsPublic Class Form1 Public Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Integer) 'for sleep statements Dim WithEvents serialPort As New IO. Ports. SerialPort' seriell port förklarar Dim PicaxeRegisters (0 till 13) Som Byte 'registrerar b0 till b13 Dim ModifyFlag As Boolean Private Sub Form1_Load (ByVal -avsändare som objekt, ByVal e Som System. EventArgs) Hanterar Me. Load' behöver allt detta skräp -.net lägger in det automatiskt när form1events går över/laddar Timer1. Enabled = True 'sätt detta i koden som standard till false när det skapas Timer1. Interval = 20000' var 20: e sekund PictureBox1. BackColor = Color. Gray 'börjar med kommoboxarna grå PictureBox2. BackColor = Color. Gray ModifyFlag = False' om man ändrar ett värde manuellt så s kip download RichTextBox1. Multiline = True 'så kan visa mer än en rad Call DisplayPicaxeRegisters ()' visa de 14 registren Call ReadFTPFilename () 'läs filnamnet från disken (sparas var 20: e sekund) Avsluta Sub Sub SerialTxRx () Dim DataPacket (0 till 17) Som Byte hela datapaketet "Data" +14 byte Dim i As Integer 'i är alltid användbart för loopar etc För i = 0 Till 3 DataPacket (i) = Asc (Mid ("Data", i + 1, 1)) 'lägg till ordet "Data" i paketet Nästa För i = 0 Till 13 DataPacket (i + 4) = PicaxeRegisters (i)' lägg till alla byte i paketet Nästa If serialPort. IsOpen Sedan serialPort. Close () 'bara om det redan har öppnats Sluta om du försöker med serialPort. PortName = "COM1"' De flesta nya datorer är standard på com1 men en dator från 1999 med en seriell mus kommer förmodligen att vara standard på com2. BaudRate = 2400 '2400 är maxhastigheten för små picaxer. Parity = IO. Ports. Parity. None 'no parity. DataBits = 8' 8 bits. StopBits = IO. Ports. StopBits. One 'one stop bit. ReadTimeout = 1000' millisekon ds så timeout om 1 sekund om inget svar. Open () 'öppna seriell port. DiscardInBuffer ()' rensa ingångsbufferten. Skriver (DataPacket, 0, 18) 'skicka datapaketets matris Call Sleep (300)' 100 millisekunder minst vänta på att data ska komma tillbaka och mer om dataströmmen är längre. Läs (DataPacket, 0, 18) 'läs tillbaka i datapaketmatrisen. Stäng ()' stäng den seriella porten Avsluta med i = 4 till 17 PicaxeRegisters (i - 4) = DataPacket (i) 'flytta det nya datapaketet till registermatrisen Nästa PictureBox1. BackColor = Color. GreenYellow' working Catch ex As Exception PictureBox1. BackColor = Color. Red 'fungerar inte Sluta Avsluta Sub Sub FTPUpload (ByVal filnamn som sträng) Dim localFile As String 'plats att lagra data Dim remoteFile As String' filnamn är skiftlägeskänsligt, detta är verkligen viktigt Const host As String = "ftp://ftp.0catch.com" 'notera att 0 är en noll inte ett tecken O Const användarnamn As String = "picaxe.0catch.com" Const lösenord As String = "picaxetester" Dim URI As String localFile = Filnamn 'kanske inte behövs men om du definierar en plats t.ex. c: / mydirectory kan enkelt läggas till på detta sätt remoteFile = "/" + Filnamn' fil på ftp -serverbehov "/" läggs till framför URI = host + remoteFile Prova Dim ftp som system. Net. FtpWebRequest = CType (System. Net. FtpWebRequest. Create (URI), System. Net. FtpWebRequest) ftp. Credentials = Nytt System. Net. NetworkCredential (användarnamn, lösenord) 'log in ftp. KeepAlive = False' blir koppla bort en gång gjort ftp. UseBinary = True 'use binary comms ftp. Timeout = 9000' timeout efter 9 sekunder - mycket användbart eftersom ftp ibland dör 'timeout (och klockfrekvensen på 20 sekunder) kan behöva vara långsammare för uppringningsanslutningar ftp. Method = System. Net. WebRequestMethods. Ftp. UploadFile 'börja skicka fil Dim fs As New FileStream (localFile, FileMode. Open)' öppna lokal fil Dim filcontent (fs. Length) As Byte 'läs in i minnet fs. Read (filinnehåll, 0, fs. Length) fs. Close () 'stäng filen Dim requestStream As Stream = ftp. GetRequestStream ()' start ftp link requestSt ream. Write (filecontents, 0, filecontents. Length) 'send it requestStream. Close ()' close the link PictureBox2. BackColor = Color. GreenYellow 'ändra rutan till grön för att säga fungerade ok Label2. Text = "FTP Connected"' text säger att den är ansluten Catch 'kan inte ansluta PictureBox2. BackColor = Color. Red' -ruta till röd som ingen anslutning Label2. Text = "FTP -uppladdning misslyckas" 'text säger anslutning misslyckad Avsluta Avsluta Sub Sub FTPDownload (ByVal filnamn som sträng) 'nedladdningar remotefile till localfile Dim localFile As String' plats för lagring av data Dim remoteFile As String 'filnamn är skiftlägeskänsligt, detta är verkligen viktigt Const host As String = "ftp://ftp.0catch.com" Const användarnamn As String = "picaxe.0catch.com "Const password As String =" picaxetester "Dim URI As String 'localFile =" C: / " + Filename' store in root directory but can change this localFile = Filename 'so can add c: / if need to define faktisk plats remoteFile = "/" + Filnamn "tillagt fjärrplats för ftp URI = host + remoteFile" make up fullständig adress Prova Dim ftp som System. Net. FtpWebRequest = CType (System. Net. FtpWebRequest. Create (URI), System. Net. FtpWebRequest) ftp. Credentials = Ny System. Net. NetworkCredential (användarnamn, lösenord) 'logga in ftp. KeepAlive = False 'kommer att kopplas bort efter avslutad ftp. UseBinary = True' binärt läge ftp. Timeout = 9000 'timeout efter 9 sekunder ftp. Method = System. Net. WebRequestMethods. Ftp. DownloadFile' ladda ner en fil 'läst i bitar som vet inte hur stor filen är Använda svar som System. Net. FtpWebResponse = CType (ftp. GetResponse, System. Net. FtpWebResponse) Använda responsStream som IO. Stream = respons. GetResponseStream Använda fs som ny 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)' och skriva till fil Loop Till läsning = 0 'tills inga fler bitar responseStream. Close ()' stäng ftp -filen fs. Flush () 'flush clear fs. Close ()' och stäng th e -fil Sluta använda responseStream. Close () 'stäng den även om ingenting fanns där Sluta använda response. Close () PictureBox2. BackColor = Color. GreenYellow' grön ruta som den fungerade Label2. Text = "FTP Connected" 'och text säger det fungerade Sluta använda Catch 'sätta felkoder här PictureBox2. BackColor = Color. Red' röd ruta eftersom det inte fungerade Label2. Text = "FTP -nedladdning misslyckades" 'och meddelande för att säga detta Sluta Prova Slut Sub Private Sub Timer1_Tick (ByVal -avsändare Som System. Object, ByVal e As System. EventArgs) Hanterar Timer1. Tick If ModifyFlag = False Då 'om användaren ändrade en byte ladda inte ner Label3. Text = "Hämtar" System. Windows. Forms. Application. DoEvents () 'så ny etiketttext visar Call FTPDownload (TextBox3. Text)' ladda ner fjärrfil Label3. Text = "Nedladdad" System. Windows. Forms. Application. DoEvents () Call ReadRemoteFileToRegisters () 'spara filnummer i registermatrisen Label3. Text = "Talking to picaxe" System. Windows. Forms. Application. DoEvents () Else ModifyFlag = False 'reset flaggan Avsluta om Call SerialTxRx () 'skicka till picaxen och läsa tillbaka Label3. Text = "Skickat och mottaget från picaxe" System. Windows. Forms. Application. DoEvents () Call DisplayPicaxeRegisters () Call SaveRegistersToLocalFile ()' spara nummer till fil Label3. Text = "Uppladdning" System. Windows. Forms. Application. DoEvents () Ring FTPUpload (TextBox3. Text) 'skicka tillbaka till ftp -webbplats som heter mitt namn Label3. Text = "Vila" Call SaveFTPFilename ()' så lyder in vid omstart Avsluta Sub Sub DisplayPicaxeRegisters () Dim i As Integer Dim registernumber As String RichTextBox1. Multiline = True 'so can display more than one line in the text box RichTextBox1. Clear ()' clear text box For i = 0 To 13 registernumber = Trim (Str (i)) 'trim off leading spaces If i <10 Then registernumber = "0" + registernumber' add 0 to numbers under 10 End If RichTextBox1. AppendText (registernumber + "=" + Str (PicaxeRegisters (i)) + Chr (13)) Nästa 'chr (13) är vagnretur så ny rad Avsluta Sub Privat Sub -knapp1_Klicka (ByVal -avsändare Som System. Object, ByVal e As System. EventArgs) Hanterar Knapp1. Klicka på Dim i som heltal 'check out of range first i = Val (TextBox1. Text) If i <0 Eller i> 13 Då TextBox1. Text = 0 Avsluta Om i = Val (TextBox2. Text) Om i <0 Eller i> 255 Då ändrar TextBox2. Text = 0 Avsluta om PicaxeRegisters (Val (TextBox1. Text)) = Val (TextBox2. Text) 'ändra värdet Call DisplayPicaxeRegisters ()' och uppdatera displayen ModifyFlag = True 'och nästa ftp -länk hoppa över nedladdning Slut Sub Sub SaveRegistersToLocalFile ()' spara registermatris i en lokal textfil Dim i As Integer FileOpen (1, TextBox3. Text, OpenMode. Output) 'öppna textfilen som heter i textrutan För i = 0 till 13 PrintLine (1, Str (PicaxeRegisters (i))) 'spara 14 värden Nästa FileClose (1)' stäng filen End Sub Sub ReadRemoteFileToRegisters () 'läs lokal textfil i registermatrisen Dim i As Integer Dim LineOfText As String Try FileOpen (1, TextBox3. Text, OpenMode. Input) 'read the remote file name For i = 0 To 13 LineOfText = LineInput (1)' read in the 14 linjen es PicaxeRegisters (i) = Val (LineOfText) 'konvertera text till värden Nästa FileClose (1) Catch ex As Exception FileClose (1)' filen finns inte så gör ingenting Sluta Prova Slut Sub Sub ReadFTPFilename () 'så namnet på den externa ftp -filen är densamma nästa gång detta program körs Dim LineOfText As String Prova FileOpen (1, "FTPFilename.txt", OpenMode. Input) 'öppna filen LineOfText = LineInput (1) TextBox3. Text = LineOfText' läs namn FileClose (1) Catch ex As Exception FileClose (1) End Try End Sub Sub SaveFTPFilename () FileOpen (1, "FTPFilename.txt", OpenMode. Output) 'save the remote ftp file name PrintLine (1, TextBox3. Text) FileClose (1) End SubEnd Class

Steg 9: Kör programmet på båda datorerna

Kör programmet på båda datorerna
Kör programmet på båda datorerna

Börja köra programmet genom att klicka på den gröna triangeln längst upp i mitten av skärmen - knappen "Starta felsökning". Ingenting kommer att hända under 20 sekunder och sedan kommer programmet att försöka ansluta till ftp -servern och försöka ansluta till picaxen. Bildrutorna blir antingen röda eller gröna. Ftp -platsen är en gratis webbplats och vem som helst kan använda detta men du måste använda ett annat ftp -fungerande filnamn (mitt är DoctorAcula1) annars kan vi alla sluta med varandras data om vi använder samma filnamn! Om du vill kan du så småningom få din egen ftp -sajt - bara ändra ftp -plats, användarnamn och lösenord på två ställen i koden från min 0Catch -webbplats. De flesta webbplatser tillåter ftp. Flera datorer kan komma åt samma ftp -fil - ftp -filservern sorterar ut i vilken ordning dessa händer. Ibland förekommer datakrockar eller hängningar och dessa verkar hända var 20: e fil som läses. Det finns en timeout i koden om detta händer så det returnerar inga data snarare än skadad data. Att använda en bredbandsanslutning med en 128kbs uppladdningshastighet innebär att en filöverföring tar cirka 3 sekunder men ibland upp till 8 sekunder, varav de flesta tas upp vid handskakning snarare än dataöverföring. Detta ställer in timer1 -tiden på minst cirka 20 sekunder med hänsyn tagen till nedladdning, uppladdning och chatt med picaxen. Med mycket snabbt bredband kan du kanske förkorta cykeltiden. Du kan ändra ett register manuellt inom VB -programmet. Om du gör det hoppar nästa timercykel nedladdning från ftp -sajten och skickar de nya uppgifterna till picaxen och läser sedan tillbaka den och laddar upp den. Den nya informationen hittar därmed sin väg till alla picaxer kopplade till denna grupp. Detta är användbart för felsökning och/eller för att länka PC -programvara till mikrokontrollerns maskinvaruslinga. Webbplatser kan också komma åt hårdvaruslingan med PERL -skript eller liknande för att skriva en ny fil till ftp -webbplatsen. Denna skärmdump togs med Tx -chipet, växeln var på och registret b0 = to 1 hade skickats till Rx -chipet som hade då ändrat register b1 till 1 också. Lysdioden var därmed tänd på båda brädorna. Detta är en trivial applikation men det är lätt att slå på en 3,6 kW pump istället för en LED. Några fler idéer finns på https://drvernacula.topcities.com/ inklusive att länka picaxer via soldrivna radiolänkar. Med radiolänkar plus internet är det möjligt för 'The Machines' att nå in i många hörn av världen. Det finns några idéer runt på picaxe -forumet om att ta denna idé vidare och ersätta PC och ftp -webbplatsen med dedikerade webbserverchips som ansluts direkt till en router. Klart detta skulle minska strömförbrukningen för en länk. Om du är intresserad av ytterligare diskussioner, vänligen posta på Intstructable -kommentarerna och/eller på picaxe -forumet. Dr James MoxhamAdelaide, South Australia

Steg 10: Skärmdumpar av kod

Skärmdumpar av kod
Skärmdumpar av kod

På begäran, här är en serie skärmdumpar av vb.net -koden med all formatering på plats. Denna kod kopierades faktiskt tillbaka av denna instruerbara och formateringen återkom automatiskt. Det skulle vara bättre att kopiera och klistra in texten än att försöka läsa dessa bilder men dessa kommer att vara användbara om du är på ett internetcafé och inte kan installera vb.net.

Steg 11: Skärmdump2

Skärmdump2
Skärmdump2

Skärmdump 2

Steg 12: Skärmdump 3

Skärmdump 3
Skärmdump 3

Skärmdump 3

Steg 13: Skärmdump 4

Skärmdump 4
Skärmdump 4

Skärmdump 4

Steg 14: Skärmdump 5

Skärmdump 5
Skärmdump 5

Skärmdump 5

Steg 15: Skärmdump 6

Skärmdump 6
Skärmdump 6

Skärmdump 6

Rekommenderad: