Padaryti įrenginį kuris valdomas per USB su AVR atmega ar panašia mikroschema gana paprasta. Parašyti command line valdyma linux ar windows sistemai irgi gana lengva. Tačiau paleisti ką nors ant monstriško “visual” jau žymiai sunkiau.
Nesu programuotojas ir man tos visos “struktūros” ir kitokie specifiniai dalykai sunkiai įkandami. Man paprasčiau iškastruoti veikiantį svetimą produktą. Vienas toks produktas, tipo pavyzdinis, buvo “generic_hid_vb_50.zip”. Tačiau jis man neveikė- dar buvo per sudėtingas. Tačiau radau kitą projektą- kažkoks LCF matuoklis. Šitas projektas bent jau pamatė mano USB termometrą ir nuskaitė kelis baitus. Paaukojau dieną ir iškastravau esama source kodą iki minimalistinio varianto, kur jau kiekvienas supras kaip ir ką pakeisti. Rezultatas- pilnas source kodas ir maža programėlė, kuri tiesiogiai nuskaito USB termometro skaičius (HID device).
Spaudžiant “Write/Read USB” išsiunčiami keli baitai ir kartu nuskaitomi keli baitai iš USB įrenginio. Kiek pamenu, V-USB apribotas 8 baitais vienu metu. Čia jei neklystu.
Dar kažkur pramargalinau automatinį pranešimą, kad “savas” USB įrenginys jau įkištas ar jau ištrauktas. Dabar “statusas” atsinaujina tik pabandžius nuskaityti duomenis.
V-USB HID MS Visual Basic Express Edition 11 source code
Kompiliuojasi su nemokamu Visual Studio paketu.
P.S. turėtu veikti su bet kokiu USB HID įrenginiu. Nebūtinai AVR V-USB…
Oho, kokiu “monstru” VB dabar tapo! Kažkada turėjau reikalų su VB4 ir VB5, tai programėles su juo kurti buvo dar visai paprasta. Tada Visual C++ atrodė šioks toks monstras, bet ir galimybes visai kitas turėjo nei VB. Bet dabar, mano nuomone, tai visiška nesąmonė 🙁
Visa laimė, kad yra Linux, jei reikia nuskaityti, tai:
cat /dev/ttyUSB0
jei reikia įrašyti, tai:
echo “bla bla bla” > /dev/ttyUSB0
Kraustykis Levai pas Pingvinus, su jais paprasčiau susitarti 🙂
Paskutinis paprastas VB buvo VB6. Poto prasidėjo nesamonės visokios. Čia jau ne basicas, o greičiau basiko ir javos hibridas.
Pvz, šios BASIC eilutė:
x = temp.ToString + “°C”
Labai panaši javos:
kodas = pertext.getText().toString().trim().toUpperCase().replaceAll(“(\r|\n)”,””);
🙂 kur per taškelį prisirašo funkcijos ir “modifikatoriai”.
Aš taip pat žaidžiau su V-USB.
Sukūriau USB HID keyboardą, kuris įveda iš anksto numatytus 3 slaptažodžius 😉
Čia aprašiau viską ir pateikiau visą info http://www.drpage.bartuva.lt/e107_plugins/content/content.php?content.62