Alat deskriptor USB?

9

Adakah yang bisa merekomendasikan alat seperti Wizard untuk membuat deskriptor perangkat USB?

Sebagian besar (semua?) Contoh firmware USB sejauh ini saya melihat mendefinisikan deskriptor sebagai array byte sederhana dalam file .c, diisi secara manual (dengan sedikit bantuan dari makro).

Ini bukan sihir hitam, jelas, masih saya percaya bahwa alat khusus yang sederhana bisa berguna. Googling untuk itu tidak memberikan hasil yang bermanfaat, namun ...

Pelukis Kode
sumber

Jawaban:

1

Alat seperti penyihir mungkin lucu saat pertama kali Anda menggunakannya, tetapi kemudian menghalangi. Metode yang lebih baik adalah struktur deskriptor yang layak dalam memori, dan beberapa makro bermanfaat dan logika preprocessing lainnya sehingga Anda dapat menyediakan informasi pada tingkat yang lebih tinggi dan byte dan bit yang tepat secara otomatis terisi.

Tumpukan USB saya untuk PIC 18 berfungsi seperti itu. Anda dapat menginstalnya dan banyak hal lainnya dari halaman unduhan perangkat lunak saya . Pengaturan USB statis didefinisikan dalam dua file. Templat untuk ini dinamai QQQ_USB.INS.ASPIC dan QQQ_USB0.INS.ASPIC di direktori SOURCE> PIC. Pertama, Anda menentukan VID / PID, titik akhir mana yang Anda gunakan, dan jenis transfer mana per titik akhir dalam file usb.ins.aspic. Kemudian Anda memodifikasi deskriptor di usb0.ins.aspic dengan sedikit yang perlu Anda sesuaikan. Karena sudah mengetahui hal-hal seperti jenis transfer dan ukuran buffer, Anda membiarkan simbol-simbol itu sendiri dan hanya mengubah apa yang unik untuk implementasi Anda. Dalam kebanyakan kasus, itu hanya menyesuaikan nama pabrikan dan nama produk. Ini Anda tulis sebagai string biasa dan makro menangani pemformatan yang tepat.

Olin Lathrop
sumber
baik, kedua cara memiliki pro dan kontra. Saya berasumsi alat yang ditulis dengan benar dapat menyimpan pengaturan dalam semacam file teks (sehingga orang dapat menyimpannya dalam repositori kode), dan memungkinkan untuk mengedit kembali pengaturan dan membuat ulang file deskriptor kapan pun Anda butuhkan. Saya percaya ini bisa berguna untuk setidaknya 2 alasan: a) memastikan deskriptor valid, b) memberikan semacam bantuan kontekstual yang berguna untuk setiap bidang. Kasus penggunaan lain yang bermanfaat adalah mengimpor deskriptor dari perangkat USB aktual yang terhubung ke PC.
Code Painters
@Czajnik: Apakah Anda melihat kode yang saya sebutkan? Benar-benar tidak sulit untuk mengisi apa yang Anda inginkan.
Olin Lathrop
1
Ya, saya lakukan (btw, file exe agak tidak ramah untuk pengguna Linux). Dan saya sudah melakukan deskriptor sendiri sebelumnya, seperti yang saya katakan, itu bukan ilmu hitam bagi saya. Saya kira ini masalah pilihan pribadi, sungguh :)
Code Painters