Saya telah menulis driver perangkat karakter Linux untuk barang orang lain selama beberapa waktu. Saya ingin mencari hobi baru dan pemikiran untuk membuat alat USB sendiri sepertinya sangat rapi.
Saya akan senang bisa mengendalikan beberapa LED, servos, dan motor langkah. Saya sangat menikmati belajar hal-hal baru sendiri dan kegembiraan ketika sesuatu akhirnya bekerja. Saya tidak melakukan pemrograman MC yang serius, tetapi saya tahu jalannya.
Adakah yang bisa merekomendasikan beberapa kit yang akan bermanfaat untuk noob yang lengkap? Idealnya, mereka adalah:
- Ramah Linux
- Mampu mengirim internasional (Saya saat ini tinggal di Asia)
- Tawarkan kit papan tempat memotong roti
Jika Anda punya waktu dan kecenderungan, tautan ke proyek di situs orang lain yang mencakup skema dan daftar suku cadang akan sangat dihargai. Saya ingin belajar dari contoh, tetapi contoh yang baik , itulah sebabnya saya bertanya di sini.
Tujuan akhir saya adalah membuat pengumpul data sendiri - mulai dari curah hujan hingga desibel rata-rata hingga tingkat cahaya. Maaf jika ini telah ditanyakan sebelumnya, saya memang mencari (dan mencari tag).
Arduino adalah alat yang bagus untuk memulai ketika Anda ingin membangun gadget elektronik dan itu mungkin membawa Anda ke tujuan akhir Anda yaitu membuat datalogger . Namun, ini tidak cocok untuk pengembangan USB nyata karena mengemulasi port serial kuno. Itu tidak akan membiarkan Anda membuatnya menjadi hal lain (seperti Perangkat Antarmuka Manusia (mouse / keyboard) atau Perangkat Penyimpanan Massal (cardreader / drive yang dapat dilepas)).
Jika Anda ingin membuat gadget USB "asli", periksa situs Jan Axelson . Dia menulis buku "pemula" tentang USB. Mengembangkan gadget yang menggunakan USB pada level ini mungkin tidak cocok untuk pemula, jadi pengalaman Arduino pasti akan membantu Anda.
sumber
Saya sangat merekomendasikan tutorial presenter tayangan slide Tuxgraphics AVR USB. Ia menggunakan mikrokontroler Atmel AVR, yang memiliki komunitas penggemar besar (avrfreaks dll), dan tumpukan perangkat lunak open-source hanya usb1.1 dari obdev.org. Ini tidak dapat meningkatkan sangat tinggi (penyimpanan massal, misalnya), tetapi produk akhirnya adalah keyboard USB HID kecil dengan dua tombol yang dapat ditetapkan. Akan sepele menggunakannya sebagai datalogger, dan beberapa contoh di obdev.org hanya itu (www.obdev.at/products/vusb/projects.html). Itu ditulis dalam c bersih, dan daftar bagian adalah beberapa dolar paling banyak.
Pada saat yang sama, saya sarankan membangun atau membeli programmer avrusb500 tuxgraphics. Sangat menyenangkan untuk digunakan, dan salah satu peralatan paling andal yang saya miliki. (Saya tidak berafiliasi - hanya pelanggan yang sangat puas!)
sumber
Perangkat lain yang ingin saya lihat adalah AT90USBKey . Sudah lama sejak saya sudah memeriksanya, dan saya tidak yakin apakah Anda dapat memprogram untuk itu tanpa Windows, tetapi akan bertindak sebagai perangkat USB (seperti keyboard atau perangkat penyimpanan massal) atau sebagai host USB Anda memasukkan perangkat lain ke. Ada beberapa contoh program yang tersedia, dan tampaknya cukup mudah untuk dikerjakan, asalkan Anda tahu sedikit tentang elektronik dan dapat kode dalam C.
Pencarian google untuk AT90USBKey dan Linux menunjukkan hasil yang menjanjikan.
Saya tahu Anda bisa mendapatkannya dari DigiKey.ca . Saya mencari yang setara untuk Asia ; Anda bisa mendapatkan bagian dari Farnell .
sumber
Anda mungkin juga ingin memeriksa Teensy .
sumber
Jika Anda akhirnya menggunakan Arduino, saya telah mem-porting perpustakaan V-USB (sebelumnya AVR-USB) untuk dijalankan. Itu juga dibungkus dengan kelas untuk membuat interaksi lebih mudah.
Anda dapat membuat perangkat USB HID dengannya, mis. Keyboard, mouse, atau joystick. Anda juga dapat membuat perangkat generik yang menggunakan libusb pada host untuk mengontrolnya - dari Python, C, Memproses dll.
Situs saya memiliki pelindung PCB yang dapat Anda buat yang menggunakan soket USB dan beberapa resistor, dll:
http://code.rancidbacon.com/ProjectLogArduinoUSB
Anda dapat menulis kode Arduino untuk mengirim penekanan tombol semudah:
atau dengan "driver" libusb Anda dapat mengirim data seperti:
atau membaca data dengan:
- Pilip;
sumber
Ada sejumlah papan pengembang berbasis AVR-USB sekarang.
Saya pribadi menggunakan Teensy dan Bumble-B yang disebutkan sebelumnya dan berpikir mereka berdua hebat.
Teensy bagus, karena terintegrasi sangat baik dengan lingkungan Arduino. Ini berarti Anda dapat melakukan hal-hal seperti "Mouse.init; Mouse.move (x, y)" daripada berurusan dengan kode USB tingkat rendah sendiri. Keduanya akan menjalankan LUFA jika Anda menginginkannya.
sumber
Inilah proyek USB PIC sederhana milik saya:
http://www.leonheller.com/usb
PCB tersedia.
sumber
Pengembangan Objek telah membuat perpustakaan untuk mikrokontroler AVR yang memungkinkan Anda membuat sendiri perangkat USB yang sangat murah (mulai dari hanya $ 2-3). GCC untuk AVR ramah linux. Ada banyak perangkat yang sudah dibuat. Lihatlah di sini: http://www.obdev.at/products/vusb/projects.html
sumber
Itu tergantung pada apa jenis gadget usb yang ingin Anda buat, dan seberapa tingkat mahirnya. Anda menyebutkan led berkedip. Kontrol semacam itu dapat dengan mudah diarsipkan dengan mikrokontroler jenis apa pun dengan uart dan chip ftdi (arduino cukup populer, dan mudah untuk memulainya). Chip ftdi terhubung ke UC secara serial, dan bertindak seperti konverter USB <-> serial. Itu juga muncul sebagai COM-port virtual di komputer Anda.
Jika Anda ingin menggunakan protokol, driver, dan fitur usb yang lebih canggih, Anda bisa mendapatkan UC dengan kapabilitas usb asli. Microchip memiliki banyak foto (mikrokontroler mereka) yang dapat melakukan ini, misalnya. Microchip juga memiliki banyak papan pengembangan yang didedikasikan untuk belajar menggunakan usb. Atleast Microchips 32-bit dukungan UC juga host, dan otg -mode, sehingga Anda bisa membangun datalogger yang menyimpan data ke memory stick usb umum, yang Anda bisa pasang ke komputer Anda untuk membaca data. (Saya yakin banyak produsen lain juga memiliki IC dan dev-kit yang serupa, tetapi hanya Microchip yang saya gunakan)
Halaman muka Microchip / USB
sumber
Perhatikan bahwa Anda tidak harus memulai pada tingkat elektronik yang rendah dan menyisihkan lebih banyak waktu pengembangan untuk "alat" itu sendiri. Banyak perusahaan menjual perangkat USB untuk pasar DIY, misalnya:
http://www.yoctopuce.com
http://www.phidgets.com
sumber