Isi kandungan:

Pautan Mikrokontroler Seluruh Dunia dengan Langkah Bawah $ 20: 15
Pautan Mikrokontroler Seluruh Dunia dengan Langkah Bawah $ 20: 15

Video: Pautan Mikrokontroler Seluruh Dunia dengan Langkah Bawah $ 20: 15

Video: Pautan Mikrokontroler Seluruh Dunia dengan Langkah Bawah $ 20: 15
Video: Tonton Sampai Habis !!! Belajar Arduino Di Jamin Bisa 2024, November
Anonim
Pautan Mikrokontroler Seluruh Dunia di bawah $ 20
Pautan Mikrokontroler Seluruh Dunia di bawah $ 20

Kawal termostat rumah anda dari tempat kerja. Hidupkan pemercik dari mana sahaja di dunia dengan menjentikkan suis. Instructable ini menunjukkan cara menghubungkan dua atau lebih mikrokontroler $ 4 menggunakan tulang belakang internet dan beberapa kod VB. Net yang mudah. Ini dibina berdasarkan Instructable sebelumnya yang menunjukkan cara menghubungkan mikrokontroler ke PC dan menggunakan periuk untuk mengawal https servo: //www.instructables.com/id/Control-real-world-devices-with-your-PC/ Kali ini kita mempunyai mikrokontroler yang bercakap dengan program VB. Net kemudian ke laman web ftp, kembali ke VB. Net lain program dan kemudian mikrokontroler kedua di mana sahaja di dunia, dengan atau tanpa campur tangan manusia. Bagaimana lagi mesin-mesin di The Matrix sepatutnya mengambil alih jika mereka tidak dapat bercakap satu sama lain?

Langkah 1: Kumpulkan Bahagian

Kumpulkan Bahagian
Kumpulkan Bahagian

Sebilangan besar bahagiannya sama seperti pada PC Control Instructable https://www.instructables.com/id/Control-real-world-devices-with-your-PC/ dan disarankan agar ini diselesaikan terlebih dahulu sebelum mencuba untuk menghubungkan dua mikrokontroler. Walaupun sangat mungkin untuk menggunakan periuk untuk mengawal servo, kali ini kita akan mencari sesuatu yang lebih sederhana - suis menyalakan lampu. Suis boleh menjadi sensor tahap tangki dengan mudah dan pam boleh menjadi pam ke bawah berhampiran sungai tetapi mari kita buat sesuatu yang mudah terlebih dahulu. Bahagian - Dua cip Picaxe 08M - boleh didapati dari banyak sumber termasuk Rev Ed https://www.rev- ed.co.uk/picaxe/ (UK), PH Anderson https://www.phanderson.com/ (USA) dan Microzed https://www.microzed.com.au/ (Australia). Cip ini di bawah $ 4US. Dua daripada: Protoboard, bateri 9V dan klip bateri, perintang 10k, perintang 22k, kapasitor 33uF 16V, kapasitor 0.1uF, pengatur 5V berkuasa rendah 7805L, kabel (wayar pepejal / wayar data seperti Cat5 / 6), LED, perintang 1k. 1 dari: soket dan penutup wanita D9 dan wayar data teras 3 (atau 4) 2 meter (untuk muat turun) dan suis togol. 2 komputer dengan port bersiri 9 pin (walaupun boleh di-debug pada satu komputer) dan sambungan internet. Untuk komputer tanpa port bersiri, peranti USB ke siri https://www.rev-ed.co.uk/docs/axe027.pdf dan soket stereo kecil.

Langkah 2: Muat turun dan Pasang Beberapa Perisian

Muat turun dan Pasang Beberapa Perisian
Muat turun dan Pasang Beberapa Perisian

Kami memerlukan perisian VB. Net dan pengawal picaxe percuma dan jika anda telah melakukan Pengawal PC yang diarahkan, anda akan mempunyai ini. VB. Net (Visual Basic Express) boleh didapati dari https://msdn2.microsoft.com/en -us / express / aa718406.aspx Perisian picaxe boleh didapati dari https://www.rev-ed.co.uk/picaxe/Anda perlu mendaftar dengan microsoft untuk mendapatkan muat turun - jika ini adalah masalah, gunakan e-mel palsu atau sesuatu. Saya benar-benar merasa berguna untuk memberikan e-mel sebenar saya kerana mereka menghantar kemas kini sekali-sekala. Saya juga akan menyebut forum picaxe https://www.picaxeforum.co.uk/ kerana ini adalah jenis forum yang dikendalikan oleh guru dan pendidik dan di mana pelajar biasanya boleh mendapatkan jawapan kepada soalan dalam beberapa jam. Forum ini sangat memahami malah soalan paling mudah kerana sebilangan pelajar masih di peringkat sekolah rendah. Jangan takut untuk meminta pertolongan!

Langkah 3: Bina Litar Muat Turun

Bina Litar Muat Turun
Bina Litar Muat Turun

Litar muat turun ini menggunakan cip picaxe, beberapa perintang, pengatur dan bateri 9V. Maklumat lebih lanjut terdapat dalam dokumentasi / bantuan picaxe yang terdapat di menu bantuan program. Litar hanya perlu beberapa minit untuk dibina setelah semua bahagian diserahkan. Setelah cip diprogramkan, ia akan mengekalkan programnya di EEPROM walaupun kuasa dimatikan. Oleh kerana kami memprogram dua kerepek mungkin bernilai melabelkan kerepek tersebut sehingga anda tahu yang mana. Anda sentiasa boleh kembali dan memprogram semula cip dengan melepaskan pautan dan menggerakkan perintang.

Saya mungkin juga menambah bahawa picaxes berjalan dengan senang hati pada 3 bateri AA. Bekalan terkawal 5V berguna untuk menjalankan input analog kerana voltan rujukan tidak berubah, tetapi untuk litar hidup / mati sederhana, bekalan yang diatur tidak diperlukan. Reg 5V boleh ditinggalkan dalam situasi seperti ini.

Langkah 4: Programkan Kerepek

Atur Cip
Atur Cip

Kami akan memanggil satu program Tx dan satu Rx. Tx adalah cip kawalan dan mempunyai suis dan dipimpin. Rx juga mempunyai led. Apabila suis berubah isyarat beralih dari Tx ke Rx, mengubah led dan juga mengubah pemboleh ubah kedua yang kemudian kembali ke Tx. Oleh itu, putar suis dan dalam masa kurang dari satu minit perubahan led pada kedua litar menunjukkan bahawa mesej sampai di sana dan Rx bertindak pada kedudukan suis baru. Pada tahap paling sederhana picaxe mempunyai 14 daftar bait tunggal. Semasa rangkaian maya dibuat, kami menghubungkan semua daftar itu bersama-sama jadi jika byte berubah dalam satu picaxe ia berubah di semua picaxes. Jelas jika dua picaxes cuba mengubah bait yang sama maka ia akan menjadi sangat membingungkan tetapi jika setiap picaxe hanya menukar satu bait maka semua picaxes yang lain dapat melihat perubahan itu dan dapat bertindak di atasnya. Mesej mudah boleh dihantar balik dan maju jika bait tertentu hanya diubah oleh satu picaxe. Pot boleh mengubah nilai dalam daftar dan satu atau lebih picaxes lain dapat merasakan perubahan itu dan memindahkan servo atau apa sahaja dan menghidupkan pemanas. Daftar kedua dapat menghantar kembali suhu di dalam bilik. Salin dan tampal program secara bergilir-gilir menjadi programmer picaxe dan muat turun ke setiap cip masing-masing menggunakan anak panah muat turun biru dari dalam programmer picaxe. Tx: utama: serin 3, N2400, ("Data"), b0, b1, b2, b3, b4, b5, b6, b7, b8, b9, b10, b11, b12, b13 'dapatkan paket dari komputer jika pin2 = 0 kemudian 'uji suis dan tetapkan register b0 bergantung pada status b0 = 0 lain b0 = 1 endif jika b1 = 0 maka' set picaxe lain b1 bergantung b0 rendah 1 'dipimpin lain tinggi 1' dipimpin pada endif serout 0, N2400, ("Data", b0, b1, b2, b3, b4, b5, b6, b7, b8, b9, b10, b11, b12, b13) 'hantar kembali ke komputer goto mainand Rx: main: serin 3, N2400, ("Data"), b0, b1, b2, b3, b4, b5, b6, b7, b8, b9, b10, b11, b12, b13 'get packet from computer b1 = b0' tukar register b1 ke sama register b0 jika b1 = 0 maka rendah 1 'dipimpin lain tinggi 1 dipimpin pada endif serout 0, N2400, ("Data", b0, b1, b2, b3, b4, b5, b6, b7, b8, b9, b10, b11, b12, b13) 'hantar kembali ke komputer goto main

Langkah 5: Bina Litar Tx

Bina Litar Tx
Bina Litar Tx

Sekiranya anda berpusing-pusing antara litar kerja dan litar pengaturcaraan, pastikan untuk menukar sambungan ke kaki 2 dan lokasi perintang 22k dari kaki 2 ke kaki 4. Atau anda boleh membina litar muat turun khusus dan menggerakkan cip seberang. Perhatikan sama ada litar berjalan atau memuat turun kerana ia boleh membingungkan. Khususnya, perhatikan bahawa litar berjalan tidak akan berfungsi jika kaki 2 dibiarkan terapung - ia mesti dibumikan. Leg 2 adalah pin muat turun dan jika dibiarkan mengambang, ia akan mengambil RF yang sesat dari lampu tepung dan cip tersebut berpendapat bahawa program lain sedang dimuat turun.

Juga perlu disebutkan nomenklatur picaxe yang memanggil pin fizikal sebagai kaki dan pin maya sebagai pin. Oleh itu, output pada pin 2 dalam kod sebenarnya adalah output pada leg fizikal 5. Ini mungkin kelihatan aneh tetapi ini bermaksud bahawa kod boleh dibawa ke picaxes yang lebih besar seperti versi 28 dan 40 pin dan masih berfungsi.

Langkah 6: Bina Litar Rx

Bina Litar Rx
Bina Litar Rx

Litar ini hampir sama dengan pemancar - ia tidak mempunyai suis.

Langkah 7: Tulis Beberapa Kod VB. Net

Tulis Beberapa Kod VB. Net
Tulis Beberapa Kod VB. Net

Saya mungkin telah menyusun kod dan menjadikan program ini tersedia sebagai.exe yang dikompilasi tetapi belajar beberapa VB. Net sangat berguna sehingga perlu melaluinya selangkah demi selangkah. Sekiranya anda menjalankan ini pada dua komputer yang berlainan, anda boleh Membangun program menjadi.exe yang membuat sedikit program persediaan yang dapat dipasang pada komputer kedua. Atau anda boleh meletakkan VB. Net pada kedua komputer dan menjalankan program dari dalam VB. NetLet andaikan anda tahu bagaimana membuka projek VB.net baru dari langkah 7 dan 8 https://www.instructables.com/id/S1MMU2XF82EU2GT / Pada borang kosong mari tambahkan komponen berikut dari bar alat dan letakkan pada borang di lokasi seperti yang ditunjukkan. Untuk label dan kotak teks, ubah harta teks (di sebelah kanan bawah) menjadi yang diperlukan. Jangan bimbang tentang tetapan pemasa - kami akan mengubahnya dalam kod tetapi pastikan untuk memasukkan pemasa. Anda boleh memindahkan barang dan tidak ada peraturan sebenar mengenai lokasi. Kotak teks besar adalah RichTextBox dan tiga yang lebih kecil adalah Kotak Teks biasa. Dari segi pesanan kami bermula di bahagian atas borang dan bergerak ke bawah. Sekiranya anda meninggalkan sesuatu akan ada ralat dalam kod yang semestinya memberikan petunjuk. Sila pilih nama fail rawak untuk Textbox3 - ini adalah nama kumpulan picaxes unik anda di pelayan ftp dan jelas jika kita semua menggunakan nama yang sama maka data akan menjadi salah! Maaf tentang tanda hubung dalam jadual ini - meletakkan di ruang kehilangan pemformatan dalam jadual. Objek kotak alat ------- Teks ----------- ------------------------------ CatatanLabel1 ------------------ Picaxe CommunicationsLabel2 ------------------ FTP StatusLabel3 ------------------ StatusLabel4 ---------- -------- Daftar PicaxeLabel5 ------------------ Daftar 0-13Label6 ------------------ Nilai 0-255Label7 ------------------ Nama fail pautan FTPTextbox1 ---------------- 0 -------- -------------------------------------- 0 adalah nol bukan OTextbox2 ----- ----------- 0Teks Kotak3 ---------------- Myfilename --------------------- ---------- Tukar sehingga tidak ada pertembungan! Butang1 ------------------ ModifyRichtextbox1 Picturebox1 Picturebox2 Timer1

Langkah 8: Tambahkan Beberapa Kod

Tambah Beberapa Kod
Tambah Beberapa Kod

Lihat langkah 12 petunjuk lain untuk lokasi butang yang berpusing antara paparan borang dan paparan kod. Tukar ke paparan kod dan tampal kod berikut. Warna semestinya akan muncul semula seperti pada tangkapan skrin. Sekiranya baris tidak disalin dengan betul kerana masalah bungkus kata maka hapus ruang sehingga mesej ralat hilang. Saya telah cuba mengulas sebahagian besar baris sehingga kodnya sekurang-kurangnya masuk akal. Padamkan bit kelas awam sehingga teks kosong sebelum menampal ini - kod ini sudah mempunyai kelas awam. Sekiranya objek seperti kotak teks belum diletakkan di dalam borang atau mempunyai nama yang salah, ia akan muncul dalam kod teks dengan garis biru yang licin di bawahnya. Sistem Import. IOImports Strings = Microsoft. VisualBasic 'sehingga boleh digunakan perkara seperti kiri (dan kanan (untuk rentetan. Kelas Umum Tingkatan1 Umum Menyatakan Sub Sleep Lib "kernel32" (ByVal dwMilliseconds Sebagai Integer) 'untuk pernyataan tidur Dim WithEvents serialPort As New IO. Ports. S PortPort' port bersiri menyatakan Dim PicaxeRegisters (0 Hingga 13) As Byte 'register b0 to b13 Dim ModifyFlag As Boolean Private Sub Form1_Load (ByVal sender As Object, ByVal e As System. EventArgs) Handles Me. Load' memerlukan semua barang sampah ini -.net memasukkannya secara automatik ketika masuk form1events di atas / memuat Timer1. Enabled = True 'letakkan ini dalam kod sebagai lalai ke false ketika dibuat Timer1. Interval = 20000' setiap 20 saat PictureBox1. BackColor = Color. Gray 'mulakan dengan kotak comms kelabu PictureBox2. BackColor = Color. Gray ModifyFlag = False' jika mengubah nilai secara manual maka s kip download RichTextBox1. Multiline = True 'sehingga dapat memaparkan lebih dari satu baris Call DisplayPicaxeRegisters ()' memaparkan 14 register Call ReadFTPFilename () 'membaca nama fail dari cakera (disimpan semula setiap 20 saat) End Sub Sub SerialTxRx () Dim DataPacket () Dim Data 0 Hingga 17) Sebagai keseluruhan paket data Byte 'Data' +14 bait Dim i Sebagai Integer 'i selalu berguna untuk gelung dll Untuk i = 0 hingga 3 DataPacket (i) = Asc (Mid ("Data", i + 1, 1)) 'tambahkan perkataan "Data" ke paket Seterusnya Untuk i = 0 Hingga 13 DataPacket (i + 4) = PicaxeRegisters (i)' tambahkan semua bait ke paket Seterusnya Jika serialPort. IsOpen Kemudian serialPort. Close () 'sekiranya sekiranya sudah dibuka Tamat Jika Cuba Dengan serialPort. PortName = "COM1"' Sebilangan besar komputer baru lalai ke com1 tetapi mana-mana komputer pra 1999 dengan tetikus bersiri mungkin akan lalai ke com2. BaudRate = 2400 '2400 adalah kelajuan maksimum untuk picaxes kecil. Parity = IO. Ports. Parity. Tiada 'no parity. DataBits = 8' 8 bit. StopBits = IO. Ports. StopBits. One 'one stop bit. ReadTimeout = 1000' millisecon ds jadi habis dalam 1 saat jika tiada tindak balas. Buka () 'buka port bersiri. DiskardInBuffer ()' hapus penyangga input. Tulis (DataPacket, 0, 18) 'hantar datapacket array Call Sleep (300)' 100 milisaat minimum untuk menunggu data kembali dan lebih banyak lagi jika aliran data lebih lama. Baca (DataPacket, 0, 18) 'baca kembali dalam array paket data. Tutup ()' tutup port bersiri Tamat Dengan Untuk i = 4 hingga 17 PicaxeRegisters (i - 4) = DataPacket (i) 'pindahkan paket data baru ke dalam array daftar NextBoxBox1. BackColor = Color. GreenYellow' Catch ex As Exception PictureBox1. BackColor = Color. Red 'tidak berfungsi Akhir Cuba Akhir Sub Sub FTPUpload (ByVal Filename As String) Dim localFile As String 'tempat menyimpan data Dim remoteFile As String' nama fail peka huruf besar-kecil ini sangat penting Const host As String = "ftp://ftp.0catch.com" 'perhatikan 0 adalah sifar bukan watak O Const username As String = "picaxe.0catch.com" Const password As String = "picaxetester" Dim URI As String localFile = Nama Filen 'mungkin tidak diperlukan tetapi jika menentukan lokasi mis. C: / mydirectory dapat menambahkan dengan mudah dengan cara ini remoteFile = "/" + Filename' file pada keperluan server ftp "/" ditambahkan di URI depan = host + remoteFile Cuba Dim ftp Sebagai Sistem. Net. FtpWebRequest = CType (System. Net. FtpWebRequest. Create (URI), System. Net. FtpWebRequest) ftp. Credentials = Sistem Baru. Net. NetworkCredential (nama pengguna, kata laluan) log masuk ftp. KeepAlive = Salah 'akan' memutuskan sambungan setelah selesai ftp. UseBinary = True 'use comms binary ftp. Timeout = 9000' timeout after 9 seconds - sangat berguna kerana ftp kadang-kadang mati 'timeout (dan frekuensi jam 20 saat) mungkin perlu lebih perlahan untuk sambungan dialup ftp. Kaedah = System. Net. WebRequestMethods. Ftp. UploadFile 'mula menghantar fail Dim fs Sebagai New FileStream (localFile, FileMode. Open)' open local file Dim filecontents (fs. Length) As Byte 'dibaca ke memori fs. Read (filecontents, 0, fs. Length) fs. Close () 'close file Dim requestStream As Stream = ftp. GetRequestStream ()' start ftp link requestSt ream. Write (filecontents, 0, filecontents. Length) 'send it requestStream. Close ()' tutup pautan PictureBox2. BackColor = Color. GreenYellow 'menukar kotak ke hijau untuk mengatakan bekerja ok Label2. Text = "FTP Connected"' teks yang mengatakannya bersambung Catch 'tidak dapat menghubungkan PictureBox2. BackColor = Color. Red' kotak menjadi merah kerana tidak ada sambungan Label2. Teks = "FTP Upload Fail" teks yang mengatakan sambungan gagal Tamatkan Cubalah Sub Sub FTPDownload (ByVal Filename As String) 'muat turun remotefile ke localfile Dim localFile As String' untuk menyimpan data Dim remoteFile As String 'nama fail peka huruf besar-kecil ini adalah sangat penting 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: / "+ Filename' menyimpan dalam direktori root tetapi boleh mengubah localFile = Filename 'ini sehingga dapat menambahkan c: / jika perlu menentukan lokasi sebenar remoteFile = "/" + Nama Fail 'ditambahkan ke lokasi ftp jauh URI = host + remoteFile' make up alamat penuh Cuba Dim ftp Sebagai System. Net. FtpWebRequest = CType (System. Net. FtpWebRequest. Create (URI), System. Net. FtpWebRequest) ftp. Credentials = Sistem Baru. Net. NetworkCredential (nama pengguna, kata laluan) log masuk ftp. KeepAlive = False 'akan terputus setelah selesai ftp. UseBinary = True' binary mode ftp. Timeout = 9000 'timeout after 9 seconds ftp. M Method = System. Net. WebRequestMethods. Ftp. DownloadFile' muat turun fail 'dibaca dalam bentuk potongan tidak tahu seberapa besar fail itu Menggunakan respons Sebagai System. Net. FtpWebResponse = CType (ftp. GetResponse, System. Net. FtpWebResponse) Menggunakan ResponsStream As IO. Stream = Respons. GetResponseStream Menggunakan fs Sebagai IO Baru. FileStream (localFile, IO. FileMode. Create) Dim buffer (2047) As Byte Dim read As Integer = 0 Do read = responseStream. Read (buffer, 0, buffer. Length) 'potongan dari ftp fs. Write (buffer, 0, read)' dan tulis ke fail Loop Hingga dibaca = 0 'sehingga tidak ada lagi kepingan responsStream. Close ()' tutup fail ftp fs. Flush () 'flush clear fs. Close ()' dan tutup th e fail Tamat Menggunakan responsStream. Close () 'tutupnya walaupun tidak ada di sana Tamatkan respons. Tutup () PictureBox2. BackColor = Color. GreenYellow' kotak hijau kerana ia berfungsi Label2. Text = "FTP Connected" 'dan teks yang mengatakannya bekerja End Using Catch 'letakkan kod ralat di sini PictureBox2. BackColor = Color. Red' kotak merah kerana ia tidak berfungsi Label2. Text = "FTP Download Fail" dan pesan untuk mengatakan ini End End End Sub Private Sub Timer1_Tick (pengirim ByVal) Sebagai System. Object, ByVal e As System. EventArgs) Mengendalikan Pemasa1. Tandakan Jika ModifyFlag = False Kemudian 'jika pengguna menukar bait maka jangan memuat turun Label3. Text = "Downloading" System. Windows. Forms. Application. DoEvents () 'jadi teks label baru memaparkan Call FTPDownload (TextBox3. Text)' muat turun fail jauh Label3. Text = "Downloaded" System. Windows. Forms. Application. DoEvents () Call ReadRemoteFileToRegisters () 'simpan nombor fail ke daftar daftar Label3. Text = "Talking to picaxe" System. Windows. Forms. Application. DoEvents () Else ModifyFlag = False 'reset bendera Tamat Jika Panggil SerialTxRx () 'hantar ke picaxe dan baca semula Label3. Teks = "Dihantar dan diterima dari picaxe" System. Windows. Forms. Application. DoEvents () Call DisplayPicaxeRegisters () Call SaveRegistersToLocalFile ()' menyimpan nombor ke fail Label3. Text = "Uploading" System. Windows. Forms. Application. DoEvents () Call FTPUpload (TextBox3. Text) 'hantar kembali ke laman ftp yang dinamakan sebagai nama saya Label3. Text = "Resting" Call SaveFTPFilename ()' begitu berbunyi masuk ketika mulakan semula End Sub Sub DisplayPicaxeRegisters () Dim i As Integer Dim register number as String RichTextBox1. Multiline = True 'sehingga dapat memaparkan lebih dari satu baris dalam kotak teks RichTextBox1. Clear ()' kosongkan kotak teks Untuk i = 0 hingga 13 registernumber = Trim (Str (i)) 'trim ruang utama Jika saya <10 Kemudian registernumber = "0" + registernumber' tambahkan 0 ke nombor di bawah 10 Akhir Jika RichTextBox1. AppendText (registernumber + "=" + Str (PicaxeRegisters (i)) + Chr (13)) Next 'chr (13) adalah return kereta jadi baris baru End Sub Private Sub Button1_Click (ByVal sender Sebagai System. Object, ByVal e As System. EventArgs) Menangani Butang1. Klik Dim i As Integer 'periksa dari jarak pertama i = Val (TextBox1. Teks) Jika i <0 Atau i> 13 Kemudian TextBox1. Text = 0 Tamat Jika i = Val (TextBox2. Text) Jika i <0 Atau i> 255 Kemudian TextBox2. Text = 0 End If PicaxeRegisters (Val (TextBox1. Text)) = Val (TextBox2. Text) 'ubah nilai Call DisplayPicaxeRegisters ()' dan muat semula paparan ModifyFlag = True 'dan pautan ftp seterusnya melangkau muat turun End Sub Sub SaveRegistersToLocalFile ()' array register save dalam fail teks tempatan Dim i As Integer FileOpen (1, TextBox3. Text, OpenMode. Output) 'buka fail teks bernama dalam kotak teks Untuk i = 0 hingga 13 PrintLine (1, Str (PicaxeRegisters (i))) 'save 14 nilai Next FileClose (1)' tutup fail End Sub Sub ReadRemoteFileToRegisters () 'baca fail teks tempatan ke dalam array daftar Dim i As Integer Dim LineOfText Sebagai String Cuba FileOpen (1, TextBox3. Text, OpenMode. Input) 'baca nama fail jauh Untuk i = 0 hingga 13 LineOfText = LineInput (1)' dibaca dalam 14 lin es PicaxeRegisters (i) = Val (LineOfText) 'menukar teks menjadi nilai Next FileClose (1) Catch ex As Exception FileClose (1)' file tidak ada jadi jangan buat apa-apa Akhir Cuba Akhir Sub Sub ReadFTPFilename () 'jadi nama fail ftp jarak jauh sama pada kali ini program ini dijalankan Dim LineOfText Sebagai String Cuba FileOpen (1, "FTPFilename.txt", OpenMode. Input) 'buka fail LineOfText = LineInput (1) TextBox3. Text = LineOfText' baca nama FileClose (1) Catch ex As Exception FileClose (1) End Try End Sub Sub SaveFTPFilename () FileOpen (1, "FTPFilename.txt", OpenMode. Output) 'simpan nama fail ftp jarak jauh PrintLine (1, TextBox3. Text) FileClose (1) Kelas SubEnd Akhir

Langkah 9: Jalankan Program pada Kedua-dua PC

Jalankan Program pada Kedua-dua PC
Jalankan Program pada Kedua-dua PC

Mulakan menjalankan program dengan mengklik segitiga hijau di tengah atas skrin - butang 'Mula Debugging'. Tidak ada yang akan berlaku selama 20 saat dan kemudian program akan cuba menyambung ke pelayan ftp dan akan cuba menyambung ke picaxe. Kotak gambar akan berwarna merah atau hijau. Lokasi ftp adalah laman web percuma dan sesiapa sahaja boleh menggunakan ini tetapi anda perlu menggunakan nama fail ftp yang berbeza (nama saya adalah DoctorAcula1) jika tidak, kita semua mungkin akan mempunyai data satu sama lain jika kita menggunakan nama fail yang sama! Sekiranya anda suka, akhirnya anda boleh mendapatkan laman ftp anda sendiri - ubah saja lokasi ftp, nama pengguna dan kata laluan di dua tempat dalam kod dari laman web 0Catch saya. Sebilangan besar laman web membenarkan ftp. Beberapa komputer boleh mengakses fail ftp yang sama - server fail ftp mengikut urutan apa yang berlaku. Kadang-kadang terdapat pertembungan data atau hang dan ini sepertinya berlaku setiap 20 fail dibaca. Terdapat batas waktu dalam kod jika ini berlaku sehingga tidak mengembalikan data daripada data yang rosak. Menggunakan sambungan jalur lebar dengan kelajuan muat naik 128kbs bermaksud muat naik fail mengambil masa sekitar 3 saat tetapi kadang-kadang hingga 8 saat, yang kebanyakannya diambil dalam berjabat tangan dan bukannya pemindahan data. Ini menetapkan waktu pemasa1 minimum sekitar 20 saat dengan mengambil kira muat turun, muat naik dan berbual dengan picaxe. Dengan jalur lebar yang sangat pantas, anda mungkin dapat memendekkan masa kitaran. Anda boleh menukar daftar secara manual dalam program VB. Sekiranya anda melakukannya, kitaran pemasa seterusnya melangkau muat turun dari laman ftp dan menghantar data baru ke picaxe dan kemudian membacanya kembali dan memuat naiknya. Oleh itu, data baru itu dapat digunakan untuk semua picaxes yang dikaitkan dengan kumpulan ini. Ini berguna untuk menyahpepijat dan / atau untuk menghubungkan perisian PC ke gelung perkakasan mikrokontroler. Laman web juga dapat mengakses gelung perkakasan menggunakan skrip PERL atau serupa untuk menulis fail baru ke laman ftp. Tangkapan skrin ini diambil dengan menjalankan cip Tx, suis dihidupkan dan daftar b0 = to 1 telah dikirim ke cip Rx yang kemudian menukar register b1 menjadi 1 juga. Oleh itu, plumbum dinyalakan di kedua papan. Ini adalah aplikasi remeh tetapi mudah untuk menghidupkan pam 3.6Kw dan bukannya led. Beberapa idea lagi terdapat di https://drvernacula.topcities.com/ termasuk menghubungkan picaxes melalui pautan radio berkuasa solar. Dengan pautan radio dan internet adalah mungkin untuk 'The Machines' menjangkau ke banyak pelosok dunia. Terdapat beberapa idea di forum picaxe mengenai mengambil idea ini lebih jauh dan mengganti laman web PC dan ftp dengan cip pelayan web khusus yang dipasang terus ke penghala. Jelas ini akan mengurangkan penggunaan kuasa pautan. Sekiranya anda berminat untuk perbincangan lanjut, sila hantar komen yang tidak dapat disusun dan / atau di forum picaxe. Dr James MoxhamAdelaide, Australia Selatan

Langkah 10: Tangkapan Skrin Tangkapan Skrin

Tangkapan Skrin Kod
Tangkapan Skrin Kod

Atas permintaan, berikut adalah rangkaian tangkapan skrin kod vb.net dengan semua format di tempat. Kod ini sebenarnya disalin dari arahan ini dan formatnya muncul semula secara automatik. Lebih baik menyalin dan menempelkan teks daripada mencuba membaca gambar-gambar ini tetapi ini akan berguna jika anda berada di kafe internet dan tidak dapat memasang vb.net.

Langkah 11: Tangkapan Skrin2

Tangkapan Skrin2
Tangkapan Skrin2

Tangkapan Skrin 2

Langkah 12: Tangkapan Skrin 3

Tangkapan Skrin 3
Tangkapan Skrin 3

Tangkapan Skrin 3

Langkah 13: Tangkapan Skrin 4

Tangkapan Skrin 4
Tangkapan Skrin 4

Tangkapan Skrin 4

Langkah 14: Tangkapan Skrin 5

Tangkapan Skrin 5
Tangkapan Skrin 5

Tangkapan Skrin 5

Langkah 15: Tangkapan Skrin 6

Tangkapan Skrin 6
Tangkapan Skrin 6

Tangkapan Skrin 6

Disyorkan: