Daftar Isi:

EZProbe, Probe Logika Berbasis EZ430: 4 Langkah
EZProbe, Probe Logika Berbasis EZ430: 4 Langkah

Video: EZProbe, Probe Logika Berbasis EZ430: 4 Langkah

Video: EZProbe, Probe Logika Berbasis EZ430: 4 Langkah
Video: Sistem Embedded#23-Embedded Device Comparison 2024, Juli
Anonim
EZProbe, Probe Logika Berbasis EZ430
EZProbe, Probe Logika Berbasis EZ430

ini adalah proyek penyelidikan logika sederhana berdasarkan dongle TI EZ430. saya mengambil keuntungan dari tawaran gratis pada beberapa ez430s dari TI pada bulan september 2010. mereka sangat berguna dan menyenangkan dalam mencoba potongan kode kecil dan menonton led berkedip. mereka telah berbaring di sekitar meja saya dan saya harus membuat sesuatu untuk mereka. dan saya ingin menghentikan orang datang dan meminta untuk meminjam "memory stick" saya. baik, ini bukan memory stick, 16bit MCU w/ multi-channel ADC, memori pemrograman 2K yang memadai dan berjalan hingga 16Mhz. semua dikemas dengan papan antarmuka pemrograman debugging dalam paket perangkat usb yang bagus. tujuan desain utama saya adalah membatasi intervensi saya ke ez430 asli. karena saya tidak ingin mengubahnya terlalu banyak secara fisik dan saya ingin mempertahankan fungsi pemrograman / debugging untuk proyek papan target lainnya. semua ini sementara melayani tujuan berguna tambahan. ini adalah proyek linux, seperti biasa, saya telah memberikan perhatian dengan pengetahuan terbaik saya untuk membuat ketentuan sehingga dapat dibangun di bawah windows. namun saya tidak punya waktu dan sumber daya untuk mencoba semuanya di bawah windows. sebagian besar proyek elektronik saya dilakukan di papan tempat memotong roti yang sangat kecil dan saya biasanya bekerja di ruang sempit (meja dapur, setengah meja pinjaman, dll). ada banyak contoh yang saya butuhkan untuk memeriksa tingkat logika sirkuit dan saya telah menggunakan multimeter (ukuran batu bata) untuk memeriksa semuanya. itu selalu mengganggu saya karena proyek saya jauh lebih kecil daripada multimeter saya dan saya merasa itu selalu menghalangi saya. saya butuh alternatif, penyelidikan logika kecil akan dilakukan. ez430 sangat cocok untuk tugas ini. untuk mulai dengan, itu sudah berbentuk seperti probe, saya hanya perlu menambahkan paku dan beberapa led. seperti yang saya sebutkan sebelumnya, saya ingin membuat proyek ini sederhana dan tidak merusak. dan saya memanfaatkan apa yang sudah tersedia. alih-alih membangun proyek di papan pcb / pref, saya membangun ini di papan target msp430f2012, menggunakan header 14 pin melalui lubang sebagai area prototyping saya. ini adalah di mana leds kecil pergi. saya tidak ingin mengebor lubang pada casing plastik, saya tidak ingin menjalankan terlalu banyak kawat atau menambahkan titik kontak tambahan. semua yang saya butuhkan adalah kontak io probe dan input tombol untuk fungsi pilih, ditambah gnd dan vcc. koneksi usb terlihat sempurna untuk tugas ini. saya akan menyalakan probe melalui usb (rangkaian programmer akan mengatur potensi sekitar 3v untuk saya) dan menggunakan D + dan D-usb menghubungkan untuk probe dan sakelar saya. karena ez430 adalah perangkat budak / klien, setelah inisialisasi, ia tidak akan melakukan apa pun kecuali pull-up pada D+ (untuk menunjukkan itu adalah usb "kecepatan tinggi"). saya menggunakan D-mengambang sebagai probe io dan D+ sebagai input tombol taktil saya (saya bahkan tidak perlu menyiapkan resistor pull-up untuk itu, sudah ada di sana) informasi tambahan juga dapat ditemukan di sini.

Langkah 1: Fitur dan Aplikasi

Fitur dan Aplikasi
Fitur dan Aplikasi

fitur * suplai dari sirkuit melalui konektor usb * 3 mode operasi berputar antara pembacaan logika, output pulsa, output pwm * tekan tombol lama (sekitar 1,5 detik) berputar melalui 3 mode operasi * p1.0 led hijau asli sebagai indikator mode, mati - probe, on - output, berkedip - probe pwmlogic * probe logika merah - hi, hijau - rendah, tidak ada - mengambang * probe logika merah / hijau berkedip pada pembacaan pulsa terus menerus > 100hz * 4 led kuning menunjukkan frekuensi yang terdeteksi dalam 8 langkah, berkedip kuning menunjukkan hi-range (yaitu langkah 5-8) * menunjukkan frekuensi pulsa yang terdeteksi untuk 100hz+, 500hz+, 1khz+, 5khz+, 10khz+, 50khz+, 100khz+, 500khz+ * untuk semburan pulsa tunggal non-kontinyu, led merah / hijau tetap menyala dan selanjutnya hitungan pulsa ditampilkan secara bertahap pada led, akan menghitung hingga 8 pulsa keluaran pulsa kontinu, pengaturan frekuensi * ditunjukkan oleh p1.0 led hijau asli menyala * 4 led kuning menunjukkan frekuensi pulsa keluaran dalam 9 langkah, kuning berkedip menunjukkan hi-range (yaitu langkah 5-8) * frekuensi pulsa output untuk 100hz, 500hz, 1khz, 5khz, 10khz, 50khz, 100khz, 500khz, 1mhz * tekan tombol pendek memutar 9 pengaturan frekuensi yang berbeda. Output pulsa terus menerus, pengaturan pwm * ditunjukkan oleh p1.0 asli hijau led berkedip * sama seperti sebelumnya mode operasi, kecuali nilai pwm ditampilkan (dan disetel) alih-alih frekuensi * 4 led kuning menunjukkan persentase output pwm dalam 9 langkah, kuning berkedip menunjukkan hi-range (mis. langkah 5-8) * persentase pwm untuk 0%, 12,5%, 25%, 37,5%, 50%, 62,5%, 75%, 87,5%, 100% * tekan tombol pendek memutar 9 pengaturan pwm yang berbeda. terdiri dari dua bagian, di mana mereka terhubung melalui sepasang konektor usb. skema sisi kiri menunjukkan penambahan dongle EZ430 dengan papan target F2012. skema sisi kanan adalah kepala probe logika dan harus dibangun dari awal.

Langkah 2: Daftar Bagian dan Konstruksi

Daftar Bagian dan Konstruksi
Daftar Bagian dan Konstruksi
Daftar Bagian dan Konstruksi
Daftar Bagian dan Konstruksi

daftar bagian * ti ez430-f2013 (gunakan bagian programmer) * papan target ti ez430 f2012 * led 1,2 x 0.8mm, 4 kuning, 1 merah, 1 hijau * satu paku, sekitar 3/4 inci, berkepala datar * satu tombol taktil * tutup dari 1 gram lem super (lem super itu sendiri juga diperlukan) * jenis konektor usb (sisi pc) * konstruksi kabel saya menggunakan papan target msp430f2012 alih-alih papan target f2013 yang datang dengan dongle ez430 hanya karena saya punya beberapa dari ini. jika Anda ingin menggunakan papan target f2013 asli, Anda harus menulis ulang sebagian kecil kode yang menggunakan adc untuk mendeteksi status mengambang. f2013 memiliki adc 16 bit yang lebih maju daripada 10 bit yang saya gunakan dalam konstruksi saya. Anda perlu menggunakan ujung solder yang bagus dan besi solder kontrol suhu (atau stasiun), saya tidak dapat membayangkan seseorang dapat menyolder led dengan besi biasa. cara yang saya lakukan adalah mengecat bantalan header terlebih dahulu, kemudian menggunakan sepasang tweeter halus untuk menempatkan led smd. setelah menyelaraskan led merah dan kuning, saya memasang satu kaki resistor 1/8 watt dan menyoldernya ke pcb, salah satu ujungnya menuju gnd umum. led hijau berjalan terakhir. itu sangat ketat dan Anda hanya ingin menerapkan cukup solder untuk menyatukan semuanya. juga fluks adalah suatu keharusan. gunakan multi-meter untuk menguji persendian Anda. Anda kemudian perlu menjembatani kabel tombol dan kabel probe. saya menggunakan cut off cat5e tetapi kabel pengukur tinggi apa pun bisa digunakan. seperti yang ditunjukkan dalam skema dan gambar, mereka berjalan dari papan target ke konektor usb. alangkah baiknya jika saya dapat menemukan konektor kecil sehingga mereka dapat dilepaskan sesuka hati, tetapi ini akan dilakukan untuk saat ini.

Langkah 3: Konstruksi Kepala Probe

Konstruksi Kepala Probe
Konstruksi Kepala Probe

di bagian bawah Anda akan melihat bit yang saya gunakan untuk "membangun" (lem super) rakitan kepala probe. ide saya adalah untuk membangunnya ke konektor usb sehingga dapat dilepas untuk pembaruan firmware. saya menggunakan lem super untuk menyatukan semuanya. "paku" direkatkan langsung di atas tombol taktil untuk peralihan mode yang sangat cepat dan pengaturan frekuensi / pwm. Anda mungkin ingin melakukan sebaliknya jika itu tidak berhasil untuk Anda. akan ada beberapa goyangan dari mekanisme tombol taktil, dalam satu desain saya menggunakan klip kertas untuk membatasi goyangan dan kepala probe lain saya menggunakan tutup dari lem super untuk mengamankan posisi paku. Anda mungkin juga ingin menambahkan resistor / dioda perlindungan ke dalamnya. konektor usb memiliki koneksi ini, (1) 5v, (2) D-, (3) D+, dan (4) Gnd, D- harus dihubungkan ke paku, D+ terhubung ke tombol taktil, yang lain ujung tombol taktil harus terhubung ke ground. strategi probe-on-connector ini memberi saya banyak fleksibilitas, dengan saluran listrik di kepala probe, Anda dapat memperluas sirkuit dan mengubah proyek ini menjadi sesuatu yang lain hanya dengan mengubah "kepala" dan firmware, mis. mungkin volt meter, tv-b-hilang (dengan transistor dan baterai di kepala probe), dll. Saya selanjutnya akan menambahkan "lampu depan" led putih ke dalamnya.

Langkah 4: Catatan Implementasi dan Aplikasi Alternatif

Catatan Implementasi dan Aplikasi Altern-t.webp
Catatan Implementasi dan Aplikasi Altern-t.webp

catatan implementasi

* wdt (pengatur waktu pengawas) digunakan untuk menyediakan pengaturan waktu tombol (de-bounce dan tekan-n-tahan), juga untuk menyalakan lampu led. ini diperlukan karena led tidak memiliki resistor pembatas dan tidak dapat dinyalakan terus-menerus. * Jam dco diatur pada 12mhz untuk mengakomodasi sirkuit target 3v. * adc digunakan untuk memutuskan apakah kita menyelidiki pin mengambang, nilai ambang batas dapat disesuaikan melalui kode sumber. * Penentuan frekuensi dilakukan dengan mengatur timer_a untuk menangkap untuk deteksi tepi, dan menghitung pulsa dalam satu periode. * mode output menggunakan mode kontinu timer_a, mode output 7 (set/reset), keduanya menangkap dan membandingkan register (CCR0 dan CCR1) untuk mencapai modulasi lebar pulsa.

Kode sumber

ini adalah instruksi untuk linux saja, lingkungan saya adalah ubuntu 10.04, distro lain akan berfungsi selama Anda telah menginstal rantai alat msp403 dan mspdebug dengan benar.

Anda dapat membuat direktori dan menempatkan file berikut di dalamnya, klik untuk mengunduh ezprobe.c

saya tidak memiliki makefile untuk dikompilasi, saya menggunakan skrip bash untuk mengkompilasi sebagian besar proyek saya, itu disebutkan di halaman perisai launchpad saya, gulir ke bawah ke bagian "tata letak direktori ruang kerja" dan dapatkan detailnya.

atau Anda dapat melakukan hal berikut:

msp430-gcc -Os -mmcu=msp430x2012 -o ezprobe.elf ezprobe.c msp430-objdump -DS ezprobe.elf > ezprobe.lst msp430-objdump -h ezprobe.elf msp430-ukuran ezprobe.elf

untuk mem-flash firmware, pasang dongle ez430 Anda dan lakukan

mspdebug -d /dev/ttyUSB0 uif "prog ezprobe.elf"

kemungkinan aplikasi alternatif

berdasarkan sifat fleksibel dari desain ini, ezprobe dapat dengan mudah mengubah perannya dan dengan unduhan flash cepat, menjadi perangkat yang berbeda, berikut adalah beberapa ide yang ingin saya terapkan di masa depan.

* servo tester, yang ini saya klik untuk mengunduh ezprobe_servo.c * tester baterai / volt-meter, hingga 2.5v, atau lebih tinggi dengan pembagi resistor pada kepala probe alternatif * tv-b-hilang, dengan probe yang dipimpin- kepala * pong-jam, w/2 resistor tv-out probe-head

penyelesaian masalah

* Anda benar-benar membutuhkan setrika / stasiun pengatur suhu dan ujung solder yang halus, led (semua bersama-sama) lebih kecil dari sebutir beras. * gunakan fluks. * bersiaplah untuk melepaskan kabel D- dan D+ selama debugging, mereka dapat mengganggu operasi usb normal. jika Anda menulis firmware pada perangkat yang dimodifikasi, jangan lakukan output pada dua pin ini saat firmware Anda mulai. dan jika ya, Anda tidak akan dapat lagi mengunduh firmware (tentu saja Anda dapat melepas soldernya jika ini terjadi). jika Anda dapat menemukan konektor kecil yang sesuai dengan casing usb, gunakanlah. * catu daya untuk papan target diambil dari papan programmer melalui regulator, yang pada gilirannya membutuhkan 5v dari usb. ketika menggunakan ezprobe di sirkuit, saya biasanya memiliki proyek target saya 3v pasokan dari 1.5v AAAs kembar, ini cukup tetapi proyek harus tetap pada atau di bawah 12mhz. 16mhz dco akan membutuhkan daya sumber 5v penuh. * saya tidak menggunakan resistor pembatas atau dioda zener untuk melindungi probe. Anda mungkin ingin melakukannya.

Direkomendasikan: