Daftar Isi:
- Langkah 1: Membuat Kabel Adaptor
- Langkah 2: Ubah Baud Rate di CMUCam
- Langkah 3: Hubungkan Kabel Pemrograman Standar dan Unggah Kode
- Langkah 4: Putuskan Konektor Pemrograman
- Langkah 5: Tekan Tombol untuk Inisialisasi Komunikasi Serial
Video: Menghubungkan CMUCam2 ke OOPIC: 5 Langkah
2024 Pengarang: John Day | [email protected]. Terakhir diubah: 2024-01-30 09:58
Oleh arsinioIkuti Lainnya oleh penulis:
Tinjauan tentang cara menghubungkan CMUCam2 ke dan OOPIC.
Langkah 1: Membuat Kabel Adaptor
1. Goto radioshack dan beli 2 ini: Konektor Solder Cup DB-9 Pria2. solder pin 5 pada konektor A ke pin 5 pada konektor B (jika diperhatikan baik-baik konektornya ada tandanya)3. solder pin 2 pada konektor A ke pin 3 pada konektor B (jika diperhatikan dengan seksama pada konektor, ada tandanya)4. solder pin 3 pada konektor A ke pin 2 pada konektor B (jika Anda perhatikan dengan seksama pada konektor, mereka ditandai)
Langkah 2: Ubah Baud Rate di CMUCam
Ubah baud rate CMUCamera menjadi 9600 baud (tambahkan jumper ke posisi 0).
Langkah 3: Hubungkan Kabel Pemrograman Standar dan Unggah Kode
Hubungkan kabel pemrograman standar dan unggah kode Anda. Berikut adalah beberapa contoh kode untuk Anda mulai. Kode ini akan melacak gerakan menggunakan perintah LF dan FD. Ini akan mengaktifkan IOLine 7 (dihubungkan ke LED) dan mencerminkan LED status pelacakan pada CMUCam.
&apos********* objek terkait port serial ******** Redupkan serialPort Sebagai Baru oSerialPortDim txBuff As New oBuffer27 &aposubah 27 untuk membuat buffer lebih besar/lebih kecilDim rxBuff As New oBuffer10Dim serialActive_LED As New oDIO1Dim toggleSerial_Button As oDIO1Dim baru toggleSerial_Event Sebagai oEventDim Baru toggleSerial_Wire As New oWireDim serialReceive_Event As New oEventDim serialReceive_Wire As New oWire&apo******* men-debug objek terkait ********Dim statLED Sebagai oDIO1&apos Baru********* **************************************&apos* Subrutin Generik *&apo****** ****************************************Sub utama &menginisialisasi semuanya main_init &mengatur topeng keluaran kami ke hanya mengikuti pusat massa CMUCAM_setOutputMask(2, 3) &aposload bingkai perbedaan awal kita CMUCAM_loadDiffFrame() &apostmulai perhitungan selisih CMUCAM_startDiffCalc(10)End SubSub main_init &aposialisasikan status LED statLED. IOLine = 7 statLED. Direction = cvOutput serial_init kami)Akhir Su b&aposproses menerima paketSub prosesPaket() Dim mx As Byte Redupkan As Byte saya &aposperiksa untuk Mx dan My menjadi 0 &diajukan jika bukan 0, lokasi akan mati (yaitu &apost 12 34) &apostapi kemudian mereka menang&apost memenuhi kriteria 0 rxBuff. Location = 2 mx = rxBuff. Value rxBuff. Location = 4 my = rxBuff. Value &aposthe led harus berkedip serentak dengan LED tracking pada kamera If (mx = "0") Dan (my = "0") statLED = 0 Else statLED = 1 End IfEnd Sub&apos****************************************** ****&apo* Fungsi Cam CMU *&apo*************************************** *******&mengatur led yang diberikan ke on, off, automatic&aposparam ledJumlah led (0, 1)&aposparam val off, on, auto (0, 1, 2)Fungsi CMUCAM_ledSet(ledNum As Byte, val As Byte) Karena Byte &aposVString tidak&apost bekerja tepat di kompilator baru… &apostidak yakin tentang yang lama &apostxBuff. VString = "L0 0" &apossetup string perintah kami secara manual txBuff. Location = 0 txBuff. Value = "L" txBuff. Location = 1 &aposthe s tr$ fungsi menyebalkan…jadi sekarang ini terjadi txBuff. Value = serial_toChar(ledNum) txBuff. Location = 2 txBuff. Value = " " txBuff. Location = 3 txBuff. Value = serial_toChar(val) txBuff. Location = 4 txBuff = 13 &mengirim perintah serial_SendBufferEnd Sub&mengajukan perbedaan awal frameSub CMUCAM_loadDiffFrame() &mengatur string perintah kita secara manual txBuff. Location = 0 txBuff. Value = "L" txBuff. Location = 1 txBuff. Value = "F" txBufft. Value = 13 &mengirim perintah serial_SendBufferEnd Sub&aposstarts menghitung perbedaan frame&aposparam ambang batas (0-9)Sub CMUCAM_startDiffCalc(thresh As Byte) Dim tens As Byte &apossetup string perintah kami secara manual txBuff. Location = 0 txBuff. Value = "F. Buff. 1 txBuff. Value = "D" txBuff. Location = 2 txBuff. Value = " " txBuff. Location = 3 tens = thresh/10 txBuff. Value = serial_toChar(puluhan) txBuff. Location = 4 puluhan = thresh/10 txBuff. Value = serial_toChar(thresh-puluhan) txBuff. Location = 5 txBuff. Value = 1 3 &apossend perintah serial_SendBufferEnd Sub&apossets output mask&aposparam packetJenis paket yang akan di-mask (0, 1, 2, dll) lihat halaman 46&aposparam mask nilai untuk diterapkan (0-255)Sub CMUCAM_setOutputMask(packetType As Byte, mask As Byte) Redupkan ratusan As Byte Dim tens As Byte &apossetup string perintah kita secara manual txBuff. Location = 0 txBuff. Value = "O" txBuff. Location = 1 txBuff. Value = "M" txBuff. Location = 2 txBuff. Value = " " &apospacket ketik txBuff. Lokasi = 3 txBuff. Value = serial_toChar(packetType) txBuff. Location = 4 txBuff. Value = " " &aposmask untuk menerapkan txBuff. Location = 5 ratusan = mask/100 txBuff. Value = serial_toChar(ratusan) txBuff =Location = 6 tens. (mask-ratusan)/10 txBuff. Value = serial_toChar(puluhan) txBuff. Location = 7 txBuff. Value = serial_toChar(mask-ratusan-puluhan) &aposcarriage return txBuff. Location = 8 txBuff. SubsendoChar(perintah-sambungan-ratusan-puluhan) &aposcarriage return txBuff. Location = 8 txBuff. *********************************************&apos* Subrutin Serial Umum *&apo s**********************************************&menginisialisasi serial portSub serial_init() &aposialisasikan tombol untuk menghidupkan dan mematikan port serial (nyalakan untuk menjalankan, matikan untuk program) toggleSerial_Button. IOLine = 5 toggleSerial_Button. Direction = cvInput toggleSerial_Wire. Input. Link(toggleSerial_Button. Value) toggleSerial_Wire. Tautan(toggleSerial_Event. Operate) toggleSerial_Wire. Operate = cvTrue &aposialisasikan acara untuk menyangga data serialReceive_Wire. Input. Link(serialPort. Received) serialReceive_Wire. Output. Link(serialReceive_Event. Operate) serialReceive_Wire. Operate kami = 0 &menginisialisasi port serial serialPort. Baud = cv9600 &mengaposinisialisasi status serial LED serialActive_LED. IOLine = 6 serialActive_LED. Direction = cvOutput &apostunggu di sini sampai port serial kita diaktifkan Sementara serialPort. Operate = cvFalse WendEnd Sub&aposkopi data ke buffer penerimaan kita penyelesaian paketSub serialRe ceive_Event_Code() &apos.received menjadi false ketika buffer 4byte kosong Sementara(serialPort. Received = cvTrue) &aposkopi byte ke buffer kami rxBuff. Value = serialPort. Value &aposperiksa akhir paket If rxBuff. Value = 13 &aposproses paket prosesPacket() &aposreset buffer ke awal rxBuff. Location = 0 Else rxBuff. Location = rxBuff. Location + 1 EndIf WendEnd Sub&menyalakan dan mematikan port serial untuk pemrogramanSub toggleSerial_Event_Code() If serialPort. Operate = cvFalse serialPort. Operate serialActive_True = 1 ElseActive_True serialPort. Operate = cvFalse serialActive_LED = 0 End IfEnd Sub&aposmengubah satu digit angka menjadi karakterFungsi serial_toChar(inVal As Byte) As Byte Dim retVal As Byte Select Case inVal Case 0 retVal = "0" Case 1 retVal = "1" Case 2 retVal = "2" Kasus 3 retVal = "3" Kasus 4 retVal = "4" Kasus 5 retVal = "5" Kasus 6 retVal = "6" Kasus 7 retVal = "7" Kasus 8 retVal = "8" Kasus 9 retVal = "9" End Select serial_toChar = Fungsi retValEnd&apos sen ds data yang terdapat dalam txBuff&apos Catatan: pastikan buffer berisi carriage return (13) di akhir!!Sub serial_SendBuffer() &apositerate through, mengirimkan setiap byte, end on carriage return txBuff. Location = 0 While 1 serialPort. Value = txBuff. Nilai ooPIC. Delay = 1 &mungkin tidak membutuhkan ini &apossee jika itu adalah carriage return If txBuff. Value = 13 &aposbreak out of our loop Return End If &aposgo ke karakter berikutnya txBuff. Location = txBuff. Location + 1 WendEnd Sub
Langkah 4: Putuskan Konektor Pemrograman
Setelah konektor pemrograman terputus, pasang unit kabel baru seperti yang ditunjukkan di bawah ini. Adaptor yang dibuat pada langkah 1 harus memungkinkan CMUCam untuk langsung dicolokkan ke OOPIC
Langkah 5: Tekan Tombol untuk Inisialisasi Komunikasi Serial
Tombol pada IOLine 5 akan memulai komunikasi serial antara CMUCam dan OOPIC. Karena port serial digunakan untuk pemrograman dan CMUCam, mungkin harus ada cara yang terkontrol untuk beralih di antara keduanya.
Program tidak akan berjalan sampai tombol ini ditekan. Jika Anda menekan tombol lagi, port serial akan menjadi tidak aktif, memungkinkan Anda untuk memprogramnya. LED pada IOLine 6 menampilkan status port serial saat ini (on berarti aktif, mati berarti siap untuk pemrograman).
Direkomendasikan:
Cara Memasang, Menjalankan, dan Menghubungkan Pengontrol ke Emulator: 7 Langkah
Cara Memasang, Menjalankan, dan Menghubungkan Pengontrol ke Emulator: Pernahkah Anda duduk-duduk dan mengingat masa kecil Anda sebagai gamer muda dan terkadang berharap dapat mengunjungi kembali permata lama di masa lalu? Nah, ada aplikasi untuk itu …. lebih khusus lagi ada komunitas gamer yang membuat program
Menghubungkan Sensor Sidik Jari Kapasitif Dengan Arduino UNO: 7 Langkah
Menghubungkan Sensor Sidik Jari Kapasitif Dengan Arduino UNO: Hai, apa kabar, Guys! Akarsh di sini dari CETech. Hari ini kita akan menambahkan lapisan pelindung ke proyek kita. Jangan khawatir kami tidak akan menunjuk pengawal untuk hal yang sama. Ini akan menjadi sensor sidik jari kecil yang lucu dari DFRobot. Jadi
Menghubungkan Sensor Gas Dengan Arduino: 4 Langkah
Menghubungkan Sensor Gas Dengan Arduino: Sensor asap MQ-2 sensitif terhadap asap dan gas yang mudah terbakar berikut: LPG, Butana, Propana, Metana, Alkohol, Hidrogen. Resistansi sensor berbeda tergantung pada jenis gas. Sensor asap memiliki potensiometer bawaan
Cara Menghubungkan NodeMCU ESP8266 ke Database MySQL: 7 Langkah
Cara Menghubungkan NodeMCU ESP8266 ke Database MySQL: MySQL adalah sistem manajemen basis data relasional (RDBMS) yang banyak digunakan yang menggunakan bahasa kueri terstruktur (SQL). Pada titik tertentu, Anda mungkin ingin mengunggah data sensor Arduino/NodeMCU ke database MySQL. Dalam Instruksi ini, kita akan melihat bagaimana menghubungkan
Menghubungkan Sensor Suhu LM35 Dengan Arduino: 4 Langkah
Menghubungkan Sensor Suhu LM35 Dengan Arduino: Termometer adalah alat yang berguna yang digunakan untuk waktu yang lama untuk pengukuran suhu. Dalam proyek ini, kami telah membuat termometer digital berbasis Arduino untuk menampilkan suhu lingkungan saat ini dan perubahan suhu pada LCD. Itu bisa dide