INHOUDSOPGAWE:

Wêreldwye mikrokontroller -skakel vir minder as $ 20: 15 stappe
Wêreldwye mikrokontroller -skakel vir minder as $ 20: 15 stappe

Video: Wêreldwye mikrokontroller -skakel vir minder as $ 20: 15 stappe

Video: Wêreldwye mikrokontroller -skakel vir minder as $ 20: 15 stappe
Video: 🌺 Вяжем теплую женскую манишку на пуговицах на 2-х спицах. Часть 1. 2024, Julie
Anonim
Wêreldwye mikrokontroller -skakel vir minder as $ 20
Wêreldwye mikrokontroller -skakel vir minder as $ 20

Beheer u huistermostaat vanaf die werk. Skakel 'n sproeier van oral ter wêreld aan deur op 'n skakelaar te druk. Hierdie instruksie wys hoe u twee of meer $ 4 mikrobeheerders kan koppel met behulp van die ruggraat van die internet en 'n paar eenvoudige VB. Net -kode.: //www.instructables.com/id/Control-real-world-devices-with-your-PC/ Hierdie keer het ons 'n mikrokontroller wat met 'n VB. Net-program praat, dan met 'n ftp-webwerf, terug na 'n ander VB. Net program en vandaar 'n tweede mikrobeheerder oral in die wêreld, met of sonder menslike ingryping. Hoe anders moet die masjiene in The Matrix ooit oorneem as hulle nie met mekaar kan praat nie?

Stap 1: Versamel die onderdele

Versamel die onderdele
Versamel die onderdele

Baie van die dele is dieselfde as in die PC Control Instructable https://www.instructables.com/id/Control-real-world-devices-with-your-PC/ en dit word voorgestel dat dit eers voltooi word voordat u probeer om twee mikrobeheerders te verbind. Alhoewel dit baie moontlik is om 'n pot te gebruik om 'n servo te beheer, gaan ons hierdie keer na iets eenvoudiger - 'n skakelaar wat 'n LED aanskakel. Die skakelaar kan maklik 'n tenkvlak sensor wees en die led kan 'n pomp naby 'n rivier wees, maar laat ons eers iets eenvoudig laat werk. Onderdele - Twee Picaxe 08M -skyfies - beskikbaar by baie bronne, insluitend Rev Ed https://www.rev- ed.co.uk/picaxe/ (VK), PH Anderson https://www.phanderson.com/ (VSA) en Microzed https://www.microzed.com.au/ (Australië). Hierdie skyfies is onder $ 4US. Twee van: Protoboard, 9V battery en batteryklemme, 10k weerstand, 22k weerstand, 33uF 16V kondensator, 0.1uF kondensator, 7805L lae krag 5V reguleerder, drade (vaste kern telefoon/datadraad bv. Cat5/6), LED, 1k weerstand. 1 van: D9 -voetstuk en omslag en 2 meter 3 (of 4) kerndatadraad (om af te laai) en 'n skakelaar. 2 rekenaars met 9 -pin seriële poorte (kan egter op een rekenaar ontfout word) en 'n internetverbinding. Vir rekenaars sonder 'n seriële poort, 'n USB na seriële toestel https://www.rev-ed.co.uk/docs/axe027.pdf en 'n klein stereo-aansluiting.

Stap 2: Laai sommige sagteware af en installeer dit

Laai sommige sagteware af en installeer dit
Laai sommige sagteware af en installeer dit

Ons benodig die gratis VB. Net en die picaxe controller sagteware en as u die PC controller Instructable gedoen het, sal u dit reeds hê. VB. Net (Visual Basic Express) is beskikbaar by https://msdn2.microsoft.com/en -us/express/aa718406.aspx Die picaxe -sagteware is beskikbaar op https://www.rev-ed.co.uk/picaxe/ U moet by Microsoft registreer om die aflaai te kry -gebruik 'n valse e -pos as dit 'n probleem is of iets. Ek het dit eintlik nuttig gevind om my regte e -pos te stuur terwyl hulle af en toe opdaterings stuur. Ek noem ook die picaxe -forum https://www.picaxeforum.co.uk/, aangesien dit die soort forum is wat deur onderwysers en opvoeders beman word en waar studente gewoonlik binne enkele ure antwoorde op vrae kan kry. Die forum begryp selfs die eenvoudigste vrae baie, aangesien sommige van die studente nog op laerskoolvlak is. Moenie bang wees om hulp te vra nie!

Stap 3: Bou 'n aflaai -stroombaan

Bou 'n aflaai -kring
Bou 'n aflaai -kring

Hierdie aflaai -kring gebruik 'n picaxe -chip, 'n paar weerstande, 'n reguleerder en 'n 9V -battery. Meer inligting is beskikbaar in die picaxe -dokumentasie/hulp wat in die hulpkieslys van die program verskyn. Die kring moet slegs 'n paar minute neem om te bou sodra al die dele byderhand is. Sodra 'n chip geprogrammeer is, behou dit sy program in EEPROM, selfs as die krag afgeskakel word. Aangesien ons twee skyfies programmeer, is dit die moeite werd om die skyfies te merk, sodat u weet watter een is. U kan altyd teruggaan en 'n chip herprogrammeer deur 'n skakel te verwyder en 'n weerstand te beweeg.

Ek kan ook byvoeg dat picaxes gelukkig op 3 AA -batterye werk. 'N 5V gereguleerde toevoer is handig om analoog insette te voer, aangesien die verwysingspannings nie verander nie, maar vir eenvoudige aan/af stroombane is 'n gereguleerde toevoer nie nodig nie. Die 5V reg kan in hierdie situasies weggelaat word.

Stap 4: Programmeer die skyfies

Program die skyfies
Program die skyfies

Ons noem een program Tx en een Rx. Tx is die beheerskyfie en het 'n skakelaar en 'n LED. Rx het ook 'n LED. As die skakelaar verander, gaan die sein van Tx na Rx, verander die LED en verander ook 'n tweede veranderlike wat dan teruggaan na Tx. Druk dan op die skakelaar, en binne minder as 'n minuut verander die LED op beide kringe, wat aandui dat die boodskap daar gekom het en dat die Rx op die nuwe skakelaarposisie inwerk. Op die eenvoudigste vlak het die picaxe 14 enkel-byte registers. As 'n virtuele netwerk geskep word, koppel ons al die registers aan mekaar, so as 'n greep verander in een piek, verander dit in al die piekstelle. Dit is duidelik dat as twee pikse dieselfde byte probeer verander, dit baie verwarrend sal raak, maar as elke piksels slegs een greep verander, kan al die ander pikse die verandering sien en kan dit daarop reageer. Eenvoudige boodskappe kan heen en weer gestuur word as 'n sekere byte slegs met een piekstokkie verander word. 'N Pot kan die waarde in 'n register verander, en een of meer ander picaxes kan die verandering aanvoel en 'n servo of wat ook al beweeg en 'n verwarmer aanskakel. 'N Tweede register kan die temperatuur in die kamer terugstuur. Kopieer en plak die programme om die beurt in die picaxe -programmeerder en laai dit af na elk van die onderskeie skyfies met behulp van die blou aflaaipyl van binne die picaxe -programmeerder. Tx: main: serin 3, N2400, ("Data"), b0, b1, b2, b3, b4, b5, b6, b7, b8, b9, b10, b11, b12, b13 'haal pakkie van die rekenaar af as pin2 = 0 'toets dan die skakelaar en stel register b0 in, afhangende van status b0 = 0 anders b0 = 1 endif as b1 = 0 dan' ander picaxe -stelle b1 afhangende b0 laag 1 'afgelei anders hoog 1' gelei op endif serout 0, N2400, ("Data", b0, b1, b2, b3, b4, b5, b6, b7, b8, b9, b10, b11, b12, b13) 'stuur terug na die rekenaar na hoof en Rx: hoof: serien 3, N2400, ("Data"), b0, b1, b2, b3, b4, b5, b6, b7, b8, b9, b10, b11, b12, b13 'kry pakkie vanaf rekenaar b1 = b0' verander register b1 na gelyke register b0 as b1 = 0 dan laag 1 'afgelei anders hoog 1' geleid op endif serout 0, N2400, ("Data", b0, b1, b2, b3, b4, b5, b6, b7, b8, b9, b10, b11, b12, b13) 'stuur terug na die rekenaar

Stap 5: Bou die Tx -stroombaan

Bou die Tx -stroombaan
Bou die Tx -stroombaan

As u heen en weer tussen 'n werkende kring en 'n programmeerkring draai, moet u die verbinding na been 2 en die ligging van die 22k -weerstand van been 2 na been 4 verander, of u kan 'n spesiale aflaai -stroombaan bou en die skyfies skuif oorkant. Let net op of 'n stroombaan loop of aflaai, aangesien dit nogal verwarrend kan raak. Let veral daarop dat 'n loopbaan nie werk as been 2 dryf nie - dit moet geaard wees. Been 2 is die aflaai -pen en as dit laat dryf, haal dit verdwaalde RF op van floroligte en die chip dink dat 'n ander program afgelaai word.

Dit is ook die moeite werd om 'n picaxe -nomenklatuur te noem, wat 'n fisiese pen 'n been en 'n virtuele pen 'n pen noem. 'N Uitset op pen 2 in kode is dus eintlik 'n uitset op fisiese been 5. Dit mag vreemd lyk, maar dit beteken dat die kode na groter piksels soos die 28- en 40 -pen -weergawes oorgedra kan word en steeds werk.

Stap 6: Bou die Rx -stroombaan

Bou die Rx -stroombaan
Bou die Rx -stroombaan

Hierdie stroombaan is byna dieselfde as die sender - dit het net geen skakelaar nie.

Stap 7: Skryf 'n paar VB. Net -kode

Skryf 'n paar VB. Net -kode
Skryf 'n paar VB. Net -kode

Ek kon die kode saamgestel en hierdie program beskikbaar gestel het as 'n saamgestelde.exe, maar om 'n paar VB. Net te leer is so ongelooflik nuttig dat dit die moeite werd is om dit stap vir stap deur te gaan. As u dit op twee verskillende rekenaars gebruik, kan u die program in 'n.exe bou, wat 'n klein installasieprogram skep wat op die tweede rekenaar geïnstalleer kan word. Of u kan VB. Net op albei rekenaars plaas en die programme binne VB. Net laat loop Ons neem aan dat u weet hoe u 'n nuwe VB.net -projek kan oopmaak vanaf stap 7 en 8 van https://www.instructables.com/id/S1MMU2XF82EU2GT /Op die leë vorm kan ons die volgende komponente van die werkbalk byvoeg en dit op die vorm plaas op die plekke soos aangedui. Vir die etikette en die tekskassies, verander die teksteiendom (regs onder) na wat nodig is. Moenie bekommerd wees oor die instellings vir die timer nie - ons sal dit in die kode verander, maar maak seker dat u 'n timer inbring. U kan dinge rondskuif en daar is geen werklike reëls oor die ligging nie. Die groot tekskassie is 'n RichTextBox en die kleiner drie is gewone teksbusse. Wat die volgorde betref, begin ons bo -aan die vorm en beweeg ons af. As u iets weglaat, is daar 'n fout in die kode wat 'n idee moet gee. Kies asseblief 'n ewekansige lêernaam vir Textbox3 - dit is die naam van u unieke groep picaxes op die ftp -bediener, en as ons almal die dieselfde naam, dan word data in die war geraak! Jammer oor die strepies in hierdie tabel-om spasies in te sit, verloor die opmaak in die tabel. Toolbox-voorwerp ------- Teks ----------- ------------------------------ NotesLabel1 ------------------ Picaxe CommunicationsLabel2 ------------------ FTP StatusLabel3 ------------------ StatusLabel4 ---------- -------- Picaxe RegistersLabel5 ------------------ Register 0-13Label6 ------------------ Waarde 0-255 Etiket7 ------------------ FTP-skakel lêernaam Tekstkas1 ---------------- 0 -------- -------------------------------------- 0 is 'n nul, nie 'n OTextbox2 ----- ----------- 0Textbox3 ---------------- My lêernaam --------------------- ---------- Verander sodat daar geen botsings is nie! Knoppie1 ------------------ Pas aan Richtextbox1 Picturebox1 Picturebox2 Timer1

Stap 8: Voeg kode by

Voeg 'n paar kode by
Voeg 'n paar kode by

Sien stap 12 van die ander instruksies vir die ligging van die knoppie wat wissel tussen vormaansig en kodeweergawe. Skakel oor na kodeweergawe en plak die volgende kode daarin. Die kleure moet almal weer verskyn soos op die kiekie. As 'n reël nie behoorlik gekopieer is as gevolg van 'n wordwrap -probleem nie, verwyder spasies totdat die foutboodskap verdwyn. Ek het probeer om kommentaar te lewer op die meeste reëls, sodat die kode ten minste sinvol is. Vee die deel van die openbare klas uit sodat die teks leeg is voordat u dit plak - hierdie kode het reeds 'n openbare klas. As 'n voorwerp soos 'n tekskassie nie op die vorm geplaas is nie of die verkeerde naam bevat, verskyn dit in die tekskode met 'n kronkelende blou reël daaronder. dinge soos links (en regs) As Byte 'registreer b0 tot b13 Dim ModifyFlag As Boolean Private Sub Form1_Load (ByVal sender As Object, ByVal e As System. EventArgs) Handles Me. Load' benodig al hierdie vullis -.net sit dit outomaties in wanneer form1events hierbo/laai Timer1. Enabled = True 'plaas dit in die kode as standaard as onwaar wanneer Timer1. Interval = 20000' elke 20 sekondes gemaak word PictureBox1. BackColor = Color. Gray 'begin met die komms -bokse grys PictureBox2. BackColor = Color. Gray ModifyFlag = False' as u 'n waarde handmatig verander, dan s kip aflaai RichTextBox1. Multiline = True 'sodat meer as een reël Call DisplayPicaxeRegisters () kan vertoon' die 14 registers Call ReadFTPFilename () 'vertoon' lees die lêernaam van die skyf af (word elke 20 sekondes gestoor) Einde Sub Sub SerialTxRx () Dim DataPacket (0 tot 17) As Byte 'hele datapakket "Data" +14 grepe Dim i As Integer' i is altyd handig vir lusse ens Vir i = 0 Tot 3 DataPacket (i) = Asc (Mid ("Data", i + 1, 1)) 'voeg die woord "Data" by die pakkie Next For i = 0 To 13 DataPacket (i + 4) = PicaxeRegisters (i)' voeg al die grepe by die pakkie Next If serialPort. IsOpen Then serialPort. Close () 'net ingeval dit reeds oopgemaak is End As Try With serialPort. PortName = "COM1"' Die meeste nuwe rekenaars is standaard com1, maar enige rekenaar voor 1999 met 'n seriële muis sal waarskynlik com2. BaudRate = 2400 '2400 is die maksimum spoed vir klein picaxes. Parity = IO. Ports. Parity. None 'no parity. DataBits = 8' 8 bits. StopBits = IO. Ports. StopBits. One 'one stop bit. ReadTimeout = 1000' millisecon ds so uitbreek in 1 sekonde as daar geen reaksie. Open () 'maak die seriële poort oop. DiscardInBuffer ()' maak die invoerbuffer skoon. Skryf (DataPacket, 0, 18) 'stuur die datapakketreeks Call Sleep (300)' 100 millisekondes minimum om te wag totdat data terugkom en meer as datastroom langer is. Lees (DataPacket, 0, 18) 'lees terug in die datapakketreeks. Sluit ()' sluit die seriële poort. (i - 4) = DataPacket (i) 'skuif die nuwe datapakket in die registerskikking Volgende PictureBox1. BackColor = Color. GreenYellow' werk Catch ex As Exception PictureBox1. BackColor = Color. Red 'werk nie Einde Probeer Einde Sub Sub FTPUpload (ByVal lêernaam as string) Dim localFile As String se plek om data op te slaan Dim remoteFile As String se lêernaam is hooflettergevoelig, dit is baie belangrik Const host As String = "ftp://ftp.0catch.com" 'let op die 0 is 'n zero geen karakter nie O Const gebruikersnaam As String = "picaxe.0catch.com" Const wagwoord As String = "picaxetester" Dim URI As String localFile = Lêernaam 'is miskien nie nodig nie, maar as u 'n ligging definieer, bv. C: / mydirectory kan maklik op hierdie manier remoteFile = "/" + Lêernaam' -lêer op ftp -bediener benodig "/" bygevoeg voor URI = host + remoteFile Probeer Dim ftp as stelsel. Net. FtpWebRequest = CType (System. Net. FtpWebRequest. Create (URI), System. Net. FtpWebRequest) ftp. Credentials = Nuwe System. Net. NetworkCredential (gebruikersnaam, wagwoord) 'log in ftp. KeepAlive = False' sal wees ontkoppel een keer klaar ftp. UseBinary = True 'gebruik binêre comms ftp. Timeout = 9000' time -out na 9 sekondes - baie handig, aangesien ftp soms sterf 'se time -out (en die klokfrekwensie van 20 sekondes) moet moontlik stadiger wees vir inbelverbindings ftp. Metode = System. Net. WebRequestMethods. Ftp. UploadFile 'begin met die stuur van lêer Dim fs As New FileStream (localFile, FileMode. Open)' oop plaaslike lêer Dim filecontents (fs. Length) As Byte 'lees in geheue fs. Read (lêerinhoud, 0, fs. Length) fs. Close () 'sluit die lêer Dim requestStream As Stream = ftp. GetRequestStream ()' begin ftp link requestSt ream. Write (filecontents, 0, filecontents. Length) 'stuur dit requestStream. Close ()' sluit die skakel PictureBox2. BackColor = Color. GreenYellow 'verander die blokkie na groen om te sê dat dit goed werk Label2. Text = "FTP Connected"' teks wat sê dat dit verbind is Vang 'kan nie PictureBox2. BackColor = Color. Red' -blokkie na rooi verbind as geen verbinding nie Label2. Text = "FTP -oplaai misluk" 'teks sê verbinding misluk Einde Probeer Beëindig Sub Sub FTPDownload (ByVal lêernaam as string) 'downloads remotefile na localfile Dim localFile As String' plek om data op te slaan Dim remoteFile As String 'lêernaam is hooflettergevoelig, dit is baie belangrik Const host As String = "ftp://ftp.0catch.com" Konst gebruikersnaam As String = "picaxe.0catch.com "Const password as String =" picaxetester "Dim URI As String 'localFile =" C: / " + Filename' store in root directory, maar kan hierdie localFile = Filename 'verander, so kan c: / byvoeg indien nodig werklike ligging remoteFile = "/" + lêernaam 'bygevoeg tot afgeleë ftp -ligging URI = host + remoteFile' make -up volledige adres Probeer Dim ftp as System. Net. FtpWebRequest = CType (System. Net. FtpWebRequest. Create (URI), System. Net. FtpWebRequest) ftp. Credentials = Nuwe System. Net. NetworkCredential (gebruikersnaam, wagwoord) 'teken in ftp. KeepAlive = False 'sal ontkoppel nadat klaar ftp. UseBinary = True' binêre modus ftp. Timeout = 9000 'timeout na 9 sekondes ftp. Method = System. Net. WebRequestMethods. Ftp. DownloadFile' laai 'lêer af in stukke gelees as weet nie hoe groot die lêer is nie Gebruik response as System. Net. FtpWebResponse = CType (ftp. GetResponse, System. Net. FtpWebResponse) Gebruik responseStream As IO. Stream = response. GetResponseStream Gebruik fs As New 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)' en skryf na lêer Loop Tot gelees = 0 'totdat daar nie meer stukke reageerStream. Close ()' sluit die ftp -lêer fs. Flush () 'spoel skoon fs. Close ()' en sluit th e lêer Beëindig met behulp van responseStream. Close () 'maak dit toe, selfs al was daar niks nie Eindig van response. Close () PictureBox2. BackColor = Color. GreenYellow' groen boks terwyl dit werk Label2. Text = "FTP Connected" 'en teks sê dit gewerk Einde met behulp van Catch 'sit foutkodes hier PictureBox2. BackColor = Kleur. Rooi' rooi blokkie, aangesien dit nie werk nie Label2. Text = "FTP -aflaai misluk" 'en boodskap om hierdie te sê Einde Probeer Einde Sub Private Sub Timer1_Tick (ByVal sender As System. Object, ByVal e As System. EventArgs) Hanteer Timer1. Tick If ModifyFlag = False Dan 'as gebruiker 'n greep verander, laai dan nie Label3. Text = "Laai af' System. Windows. Forms. Application. DoEvents af nie () 'so nuwe etiket teks vertoon Call FTPDownload (TextBox3. Text)' laai eksterne lêer Label3. Text = "afgelaai" System. Windows. Forms. Application. DoEvents () Call ReadRemoteFileToRegisters () se stoor lêernommers af in die register array Label3. Text = "Praat met picaxe" System. Windows. Forms. Application. DoEvents () Else ModifyFlag = Onwaar 'stel die vlag terug Einde As Call SerialTxRx () 'stuur na die picaxe en lees dit terug Label3. Text = "Gestuur en ontvang uit picaxe" System. Windows. Forms. Application. DoEvents () Call DisplayPicaxeRegisters () Call SaveRegistersToLocalFile () se stoor nommers in lêer Label3. Text = "Laai op" System. Windows. Forms. Application. DoEvents () Bel FTPUpload (TextBox3. Text) 'stuur terug na ftp -webwerf met my naam Label3. Text = "Resting" Call SaveFTPFilename ()' so lees in wanneer herbegin 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 the text box For i = 0 To 13 registernumber = Trim (Str (i)) 'afsny van voorste spasies As i <10 Dan voeg registernumber = "0" + registernumber' 0 by getalle onder 10 Einde As RichTextBox1. AppendText (registernumber + "=" + Str (PicaxeRegisters (i)) + Chr (13)) Volgende 'chr (13) is vervoer terug, so nuwe reël Einde Sub Privaat Sub Knoppie1_Klik (ByVal sender As System. Object, ByVal e As System. EventArgs) Knoppie hanteer 1. Klik Dim i As Integer 'check out of range i i = Val (TextBox1. Text) If i <0 or i> 13 Then TextBox1. Text = 0 End If i = Val (TextBox2. Text) As i <0 Of i> 255 Dan verander TextBox2. Text = 0 End If PicaxeRegisters (Val (TextBox1. Text)) = Val (TextBox2. Text) 'verander die waarde Call DisplayPicaxeRegisters ()' en verfris die vertoning ModifyFlag = True 'en volgende ftp -skakel slaan aflaai End Sub Sub SaveRegistersToLocalFile ()' save register array in a local text file Dim i As Integer FileOpen (1, TextBox3. Text, OpenMode. Output) 'open the text file named in die tekskassie Vir i = 0 tot 13 PrintLine (1, Str (PicaxeRegisters (i))) 'stoor 14 waardes Volgende FileClose (1)' sluit die lêer End Sub Sub ReadRemoteFileToRegisters () 'lees plaaslike tekslêer in die registerskikking 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 lin es PicaxeRegisters (i) = Val (LineOfText) 'omskakel teks na waardes Volgende FileClose (1) Vang ex As uitsondering FileClose (1)' lêer bestaan nie, moenie niks beëindig Probeer Eind Sub Sub ReadFTPFilename () 'sodat die naam van die eksterne ftp -lêer is dieselfde as die volgende keer dat hierdie program uitgevoer word Dim LineOfText As String Probeer FileOpen (1, "FTPFilename.txt", OpenMode. Input) 'maak die lêer oop LineOfText = LineInput (1) TextBox3. Text = LineOfText' lees die naam FileClose (1) Catch ex As Exception FileClose (1) Einde Probeer Einde Sub Sub SaveFTPFilename () FileOpen (1, "FTPFilename.txt", OpenMode. Output), stoor die eksterne ftp lêernaam PrintLine (1, TextBox3. Text) FileClose (1) Beëindig SubEnd -klas

Stap 9: Begin die program op beide rekenaars

Begin die program op beide rekenaars
Begin die program op beide rekenaars

Begin die program deur op die groen driehoek bo in die middel van die skerm te klik - die 'Begin ontfouting' -knoppie. Niks gebeur vir 20 sekondes nie, en dan probeer die program om aan te sluit op die ftp -bediener en probeer om aan te sluit op die picaxe. Die rame in die prentjie sal rooi of groen wees. Die ftp -ligging is 'n gratis webwerf en almal kan dit gebruik, maar u moet 'n ander ftp -werkende lêernaam (myne is DoctorAcula1) gebruik, anders kan ons almal met mekaar se data eindig as ons dieselfde lêernaam gebruik! As u wil, kan u uiteindelik u eie ftp -webwerf kry - verander net die ftp -ligging, gebruikersnaam en wagwoord op twee plekke in die kode van my 0Catch -webwerf. Die meeste webwerwe laat ftp toe. Verskeie rekenaars het toegang tot dieselfde ftp -lêer - die ftp -lêerserver bepaal watter volgorde dit gebeur. Soms vind data -botsings of hangings plaas, en dit lyk asof dit elke 20 lêers lees. Daar is 'n time -out in die kode as dit gebeur, sodat dit geen data in plaas van beskadigde data oplewer nie. Deur 'n breëbandverbinding met 'n oplaaisnelheid van 128kbs te gebruik, beteken dit dat die oplaai van lêers ongeveer 3 sekondes neem, maar soms tot 8 sekondes. in handdruk eerder as data -oordrag. Dit stel die timer1 -tyd van 'n minimum van ongeveer 20 sekondes in ag, met inagneming van die aflaai, oplaai en gesels met die picaxe. Met 'n baie vinnige breëband kan u die siklustyd verkort. U kan 'n register handmatig binne die VB -program verander. As u dit doen, slaan die volgende tydsiklus af van die aflaai van die ftp -webwerf en stuur die nuwe data na die picaxe, lees dit dan terug en laai dit op. Die nuwe data vind dus sy weg na alle picaxes wat aan hierdie groep gekoppel is. Dit is handig vir ontfouting en/of om rekenaarprogrammatuur aan die hardeware -lus van die mikrobeheerder te koppel. Webwerwe het ook toegang tot die hardeware -lus met behulp van PERL -script of soortgelyke om 'n nuwe lêer na die ftp -webwerf te skryf. Hierdie skermkiekie is geneem met die Tx -chip, die skakelaar is aan en die register b0 = tot 1 is na die Rx -chip gestuur wat het toe ook register b1 na 1 verander. Die led is dus op albei borde aangesteek. Dit is 'n triviale toepassing, maar dit is maklik om 'n 3,6Kw -pomp aan te skakel in plaas van 'n LED. Daar is nog 'n paar idees op https://drvernacula.topcities.com/, insluitend die koppeling van picaxes via radioskakels met sonkrag. Met radioskakels en die internet is dit moontlik dat 'The Machines' na baie uithoeke van die wêreld kan kom. Daar is 'n paar idees op die picaxe -forum om hierdie idee verder te neem en die rekenaar en ftp -webwerf te vervang met toegewyde webserver -skyfies wat direk in 'n router aansluit. Dit sal duidelik die kragverbruik van 'n skakel verminder. As u belangstel in verdere besprekings, plaas dit dan op die Intstructable -kommentaar en/of op die picaxe -forum. Dr James MoxhamAdelaide, Suid -Australië

Stap 10: skermkiekies van die kode

Kiekies se skermkiekies
Kiekies se skermkiekies

Op versoek, hier is 'n reeks skermkiekies van die vb.net -kode met al die opmaak. Hierdie kode is eintlik teruggekop van die instruksies en die opmaak verskyn weer outomaties. Dit is beter om die teks te kopieer en te plak as om hierdie foto's te lees, maar dit sal handig wees as u in 'n internetkafee is en nie vb.net kan installeer nie.

Stap 11: Skermkiekie2

Kiekie 2
Kiekie 2

Kiekie 2

Stap 12: Kiekie 3

Kiekie 3
Kiekie 3

Kiekie 3

Stap 13: Skermkiekie 4

Kiekie 4
Kiekie 4

Kiekie 4

Stap 14: Skermkiekie 5

Kiekie 5
Kiekie 5

Kiekie 5

Stap 15: Skermkiekie 6

Kiekie 6
Kiekie 6

Kiekie 6

Aanbeveel: