V počítači vytvoríme virtuálny USB disk. Vytvorte v počítači virtuálnu jednotku USB flash Vytvorte emulátor pre zariadenie USB v systéme Windows

Projekt Olof Lagerkvist je vynikajúci program na emuláciu diskov, ale pretože disky môžu emulovať každého, ale nie každý sa môže pochváliť vytvorením jednotky USB flash alebo diskety. Disky sú vytvárané vo virtuálnej pamäti, fyzicky ich je možné načítať do súborov. Po inštalácii je program dostupný z ovládacieho panela počítača.

Kliknutím na „OK“ je virtuálny obrázok pripravený.

Obrázok
Obrázok je možné uložiť a podľa potreby namontovať. Kde sa to hodí? Napríklad pre lenivých môžete na taký virtuálny flash disk nahrať certifikáty pre CryptoPro.)) Alebo ho použite ako disk v RAM na uloženie vyrovnávacej pamäte, stránkovacieho súboru a ďalších vecí.
Existuje aj alternatívne grafické rozhranie -

Automatické pripojenie:
ozvena
rem to autoload pre automatickú montáž
c: \ WINDOWS \ system32 \ imdisk.exe -a -f "% PROGRAMFILES% \ flash.img" -m f: -o rem

Niektoré možnosti príkazového riadka:

imdisk.exe -e -s 300M -m B: -zväčšite disk B o 300 MB

imdisk -a -t súbor -o ro -m y: -f C: \ Boot.img- pripojte obrázok Boot.img k jednotke Y, iba na čítanie

imdisk -a -t súbor -m y: -f C: \ Boot.img- pripojte obrázok Boot.img k jednotke Y, iba na čítanie / zápis

imdisk -d -m y: -odpojte jednotku Y

imdisk -a -s 150M -m #: -p " / fs: ntfs / y / q / v: imdisk- vytvorte disk s veľkosťou 150 MB, prvé písmeno disku je voľné, formátovanie v systéme NTFS, označenie disku imdisk

imdisk -a -s 10% -m #: -p " / fs: ntfs / y / q / v: imdisk- rovnaké ako predchádzajúci, iba veľkosť je uvedená ako 10 percent voľnej pamäte.

imdisk -a -s -500M -m #: -p " / fs: ntfs / y / q / v: imdisk- rovnaké ako predchádzajúce, iba veľkosť je označená znamienkom mínus, to znamená, že sa rovná množstvu voľnej pamäte mínus zadanej veľkosti. S 1200 MB voľnej pamäte sa veľkosť disku zmení na 1200-500 = 700 MB

imdisk.exe -a -t proxy -o ip -f 127.0.0.1:80 -m Z:- použitie so serverom, ktorý sa nachádza na internete, v skutočnosti nekontroloval.

A - Pripojenie Wirt. disk.

D - vypnúť virtuálne. disk.

E - virtuálna úprava. disk.

_________________________

B - označuje posun, to znamená začiatok údajov na disku, je uvedený pre disky vytvorené v rôznych programoch, na ktorých obrázkoch musíte preskočiť počiatočné atribúty v súbore.

S je veľkosť virtuálneho disku. Veľkosť je počet bajtov, pokiaľ nie je pridaná prípona a (auto), b (512 bajtových blokov), k (tisíc bajtov), ​​m (milión bajtov), ​​g (miliarda bajtov), ​​t (bilión bajtov), ​​K (kilobajty), M (megabajt), G (gigabajt) alebo T (terabajt). Tisíc bajtov a kilobajtov sa líši v tom, že v kilobajte je 1024 bajtov, nie 1 000. Napríklad. -s 150M alebo -s 10% -10 percent voľnej pamäte. Parameter -500M - so znamienkom mínus definuje veľkosť vytvoreného disku ako množstvo voľnej pamäte mínus zadanú veľkosť.

O - nastaviť možnosti, platí v spojení s nižšie uvedenými možnosťami

ro - iba na čítanie

rw - čítanie / zápis

rem - nainštalovať ako vymeniteľný disk (flash disk). To určuje vlastnosti disku, ukladanie do vyrovnávacej pamäte a ďalšie.

oprava - nastaviť ako trvalý, pevný disk (na rozdiel od rem)

cd-vytvorte virtuálny disk CD-ROM / DVD-ROM.

fd - vytvorte disketu. Predvolené pre veľkosti 160K, 180K, 320K, 360K, 640K, 720K, 820K, 1200K, 1440K, 1680K, 1722K, 2880K, 123264K alebo 234752K.

hd - vytvorte pevný oddiel.

ip - parameter na pripojenie k serveru proxy.

comm - pripája sa k pamäťovému serveru prostredníctvom portu COM.

________________

M - Definuje písmeno jednotky. Napríklad -m B: alebo -m y: alebo -m #: je prvé písmeno voľnej jednotky.

F - názov súboru virtuálny. disk, napríklad -f C: \ Boot.img alebo -f \\ server \ share \ image.bin alebo -F \ Zariadenie \ Harddisk0 \ Partition1 \ image.bin- posledné, keď nie je priradené písmeno jednotky a definícia je podľa pevného čísla, čísla oddielu (logického disku) a potom skutočnej cesty.

Vývoj rôznych zariadení na báze mikrokontrolérov je zamestnanie hodné skutočného počítačového mága. Užitočnou funkciou akéhokoľvek gadgetu bude bezpochyby rozhranie USB na pripojenie k počítaču. Ale čo keď čip AVR nemá hardvérovú podporu USB?

V-USB: na veľkosti záleží

Pri vývoji vlastného gadgetu často vzniká problém s jeho pripojením k počítaču. Musím povedať, že porty LPT a COM sú dnes na základných doskách PC exotické, nehovoriac o prenosných počítačoch, pre ktoré tieto rozhrania dávno zmizli. Moderné počítače preto prakticky nemajú alternatívy k rozhraniu USB.

Ak sú zdroje čipu využité na sto percent, je lepšie okamžite sa obrátiť na zariadenia s hardvérovou podporou univerzálnej sériovej zbernice (takéto mikrokontroléry sú prítomné v rade akéhokoľvek výrobcu). V ostatných prípadoch môžete použiť softvérový port USB.

Pre mikrokontroléry Atmel existuje nádherný projekt V-USB, ktorý ponúka softvérovú implementáciu zariadenia s nízkou rýchlosťou USB 1.1. Kód V-USB bude fungovať na akomkoľvek zariadení AVR, ktoré má najmenej 2 kB Flash a 128 bajtov pamäte RAM s taktom 12; 12,8; 15; 16; 16,8 alebo 20 MHz.

Použitie produktu je možné tak pod licenciou open source GPL, ako aj na komerčnom základe. Aby ste mohli vyvíjať svoje vlastné zariadenia USB, spravidla si musíte kúpiť aj niečo ako licenciu. Ale aj o to sa postarali chalani z V -USB, ktorí získali pár Vendor ID - Product ID a umožnili ich používať komukoľvek.

Hardvérové ​​pripojenie na pripojenie zbernice USB k mikrokontroléru je veľmi jednoduché. Ak zariadenie príliš nespotrebováva, môže byť napájané priamo zo zbernice (verí sa, že napájací kábel USB počítača je schopný dodávať prúd až do 500 mA). Pretože dátové linky (D + a D–) používajú úroveň signálu 3,6 V, okrem odporov obmedzujúcich prúd sú na zladenie logiky 5 V na čipe potrebné Zenerove diódy. Na označenie typu pripojenia musíte „vytiahnuť“ napájacie napätie cez odpor 1,5 kOhm do vedenia D–.

Alternatívnou možnosťou párovania cez USB je zníženie napájacieho napätia regulátora pomocou vhodného stabilizačného mikroobvodu alebo iba dvojicou diód. Najnovšiu schému nájdete na webovej stránke projektu V-USB.

USBtiny programátor

Pre mikrokontroléry AVR je k dispozícii mnoho rôznych programátorov. USBtiny je tu spomenutý čiastočne, pretože obsahuje softvérovú implementáciu USB, podobne ako V-USB. Schéma tohto programátora je jednoduchá: verzia 2 obsahuje dva mikroobvody a prvá verzia obsahuje iba jeden (samotný čip ATtiny2313). Vďaka podrobnému popisu na webových stránkach a jednoduchému príslušenstvu je zariadenie ľahko vyrobiteľné aj pre začiatočníkov. USBtiny je kompatibilný s obľúbeným programom avrdude používaným na programovanie mikrokontrolérov AVR.

Jediným problémom je načítanie firmvéru do čipu programátora - na to potrebujete ... programátora. Ak máte počítač s portom LPT, môžete si vyrobiť jednu z možností FBPRG aka „päť drôtov“, ktorá je

Príprava saní

Softvérové ​​nástroje potrebné na implementáciu najjednoduchšieho firmvéru gadgetov USB sú mimoriadne asketické: kompilátor gcc-avr, knižnica avr-libc, programátor avrdude a súbory binutils nastavené pre AVR. V systéme Debian / Ubuntu je všetko, čo potrebujete, nainštalované jedným príkazom:

$ sudo apt-get install avrdude binutils-avr gcc-avr avr-libc

Na rozsiahlych územiach internetu je ľahké nájsť veľmi podrobný manuál o V-USB a libusb (v angličtine). Podľa manuálu na pridanie podpory USB k projektu potrebujete priečinok usbdrv z archívu s najnovšou verziou V-USB. V koreňovom adresári tohto priečinka je konfiguračná šablóna usbconfig-prototype.h. Musíte vytvoriť kópiu tohto súboru a pomenovať ho usbconfig.h. Ďalej - opravte usbconfig.h s uvedením portu (D), ktorého riadky budú použité pre I / O, priamo čísiel riadkov D + (2) a D– (3), ako aj frekvencie (12 MHz ), v ktorom čip funguje (ATtiny2313):

#define USB_CFG_IOPORTNAME D #define USB_CFG_DMINUS_BIT 3 #define USB_CFG_DPLUS_BIT 2 #define USB_CFG_CLOCK_KHZ 12000

Na používanie licencie zariadenia V-USB nie je potrebné meniť výrobné číslo a číselné ID zariadenia. Symbolické názvy si však môžete vybrať podľa svojho vkusu (budú rozlišovať niekoľko zariadení V-USB pripojených k rovnakému počítaču):

#define USB_CFG_VENDOR_ID 0xc0, 0x16 #define USB_CFG_DEVICE_ID 0xdc, 0x05 #define USB_CFG_VENDOR_NAME "n", "e", "t", "s", "4", "g", "e", "e", ", "s", ".", "c", "o", "m" #define USB_CFG_VENDOR_NAME_LEN 14 #define USB_CFG_DEVICE_NAME "U", "S", "B", "e", "x", "a", "m", "p", "l", "e" #definovať USB_CFG_DEVICE_NAME_LEN 10

Rôzne pomôcky

Máte nápad na zariadenie? Neponáhľajte sa spájkovať a kódovať, ale pozrite sa, možno to už niekto urobil. Ak nemôžete používať hotové schémy a zdroje, aspoň nebudete musieť začať od nuly.

Napríklad projekt V-USB vďaka svojej licenčnej politike nazhromaždil slušnú základňu hotových (vrátane bezplatnej distribúcie) riešení. Nájdete tu rôzne implementácie klávesníc, USB adaptérov pre joysticky, gamepady (vrátane vzácnych, napríklad SNES / NES, Nintendo 64, ZX Spectrum joystick, Sony PlayStation 1/2) a podobne. Adaptéry DMX, virtuálne porty COM a UART, i2c, Servo, DCF77, bezdrôtové rozhrania IR - všetko, čo vám pomôže pripojiť k počítaču ďalšie nové zariadenia. Na farme môžu byť užitočné aj záznamníky, platformy pre senzory a senzory, adaptéry pre LCD displeje, programátory a nakladače.

Program pre čip je elementárny!

Pri komunikácii prostredníctvom zbernice USB je počítač hlavným zariadením, ktoré pravidelne odosiela správy s požiadavkami na riadenie. Ovládač je podriadený a musí reagovať na požiadavky. Formát riadiacej správy je určený štruktúrou usbRequest_t zo súboru usbdrv.h:

Typedef struct usbRequest (uchar bmRequestType; uchar bRequest; usbWord_t wValue; usbWord_t wIndex; usbWord_t wLength;) usbRequest_t;

Vytvoríme súbor main.c na rovnakej úrovni ako priečinok usbdrv a popíšeme v ňom potrebné hlavičkové súbory, definície a premenné:

#zahrnúť #zahrnúť #zahrnúť #include "usbdrv.h" #define F_CPU 12000000L // frekvencia MK #include #define DATA_OUT 1 // Odoslať príkaz #define DATA_IN 2 // Príjem príkazu // Buffer static uchar answerBuf = "Hello World!"; static uchar dataLength = 0, dataReceived = 0;

V main.c prepíšte funkciu usbFunctionSetup, ktorá sa volá automaticky po prijatí novej požiadavky:

USB_PUBLIC uchar usbFunctionSetup (údaje uchar) (usbRequest_t * rq = (neplatné *) údaje; prepínač (rq-> bRequest) (prípad DATA_OUT: // Príkaz na odosielanie údajov o procese usbMsgPtr = answerBuf; // Zadajte veľkosť návratu vyrovnávacej pamäteof (answerBuf); / / Vráťte veľkosť prípadu vyrovnávacej pamäte DATA_IN: // Spracovanie príkazu na príjem údajov dataLength = (uchar) rq-> wLength.word; // Získajte dĺžku dataReceived = 0; // Bude veľa hovorov na usbFunctionWrite, ak (dataLength> sizeof (answerBuf)) // Overflow check dataLength = sizeof (answerBuf); return USB_NO_MSG; // Return 255) return 0;)

Ako môžete vidieť z výpisu, najľahší spôsob odosielania údajov do počítača je nastaviť usbFunctionSetup na hodnotu ukazovateľa usbMsgPtr na medzipamäť RAM (answerBuf), kde sa údaje nachádzajú, a potom vrátiť jeho dĺžku. Veľkosť vyrovnávacej pamäte by nemala presiahnuť 254 bajtov. Na ATtiny2313 so 128 bajtami pamäte RAM to stačí. Pre funkčnejšie zariadenia existuje druhý spôsob - prepísanie funkcie usbFunctionRead.

Na získanie údajov je potrebné najskôr extrahovať dĺžku správy z poľa wLength požiadavky vo funkcii usbFunctionSetup a uložiť ju do globálnej premennej dataLength. Za druhé, v main.c musíte prepísať funkciu usbFunctionWrite, navrhnutú na spracovanie prijatých údajov a volanú automaticky (a samozrejme niekoľkokrát), ak usbFunctionSetup vráti USB_NO_MSG (255):

USB_PUBLIC uchar usbFunctionWrite (uchar * data, uchar len) (uchar i; // uloží prijatý kus dát do vyrovnávacej pamäte pre (i = 0; dataReceived< dataLength && i < len; i++, dataReceived++) replyBuf = data[i]; return (dataReceived == dataLength); }

V skutočnosti funkcia usbFunctionWrite vypĺňa medzipamäť answerBuf prijatými údajmi.

Mimochodom, aby táto metóda fungovala, musíte vykonať zmeny v usbconfig.h:

#define USB_CFG_IMPLEMENT_FN_WRITE 1

Posledná funkcia firmvéru je hlavná:

Int main () (usbInit (); // Inicializácia USB usbDeviceConnect (); // Pripojenie zariadenia sei (); // Povoliť prerušenia // Čakanie na riadiace správy v nekonečnej slučke while (1) usbPoll (); return 0; )

Použitie USART / UART

Dobrou alternatívou k softvérovému / hardvérovému USB je použitie populárneho rozhrania USART / UART v čipe s prevodníkom tohto protokolu od iného výrobcu na USB, čo je možné vykonať napríklad na základe čipu FT232RL.

Libusb: ani oblečená, ani nahá

Pýtate sa: musíte napísať ovládač pre operačný systém počítača na pripojenie zariadenia USB? Ak používate libusb, môžete to urobiť bez implementácie plnohodnotného modulu jadra. Libusb je open source knižnica, ktorá vám umožní rýchlo naprogramovať, za prvé, nájdenie zariadenia na zbernici, a za druhé, výmenu dát s ním.

V prípade systému Linux je knižnica a potrebné hlavičkové súbory možné získať zo zdrojových kódov. Je lepšie použiť štandardné úložisko vašej distribúcie. Napríklad pre Debian / Ubuntu takto:

$ sudo apt-get install libusb-dev

K dispozícii je tiež port libusb pre Windows - libusb -win32. Na rozdiel od názvu projektu sú podporované aj 64-bitové operačné systémy od spoločnosti Microsoft (od verzie 1.2.0.0).

Ale libusb je samostatná téma konverzácie. Myslím, že ste oboznámení s programovaním PC a dokážete na to prísť sami. Preto budem stručný. Vytvorte súbor usbtest.c a začnite ho napĺňať obsahom. Po prvé, požadované hlavičkové súbory a definície:

#zahrnúť [...] // V prípade počítača je význam príkazov obrátený, // ale označenia zostávajú rovnaké #define DATA_OUT 1 #define DATA_IN 2

Funkcia UsbOpenDevice na inicializáciu zariadenia:

Usb_init (); // Inicializácia USB usb_find_busses (); // Nájdite autobusy usb_find_devices (); // Hľadanie zariadení // Prejdite všetkými autobusmi pre (bus = usb_get_busses (); bus; bus = bus-> next) (// Prejdite všetkými zariadeniami na zbernici pre (dev = bus-> zariadenia; dev; dev = dev-> next) (// Ak sa ID dodávateľa a produktu nezhodujú ... if (dev-> descriptor.idVendor! = vendor || dev-> descriptor.idProduct! = product) continue; // ... skip táto iterácia // Skúste získať popisovač zariadenia if (! (Handle = usb_open (dev))) (fprintf (stderr, "% s \ n", usb_strerror ()); continue;) return handle; // Return the handle )) // Zariadenie nebolo nájdené návrat NULL;

Ako vidíte, parametre usbOpenDevice sú číselné identifikátory výrobcu a zariadenia. Ak je zariadenie prítomné v zbernici, vráti sa jeho deskriptor. Ak je na V-USB niekoľko zariadení, budete musieť pridať šek na symbolické mená dodávateľa a produktu.

A hlavná funkcia obslužného programu usbtest:

Int main (int argc, char ** argv) (// Device handle usb_dev_handle * handle = NULL; int nBytes = 0; char buffer; // Hľadám zariadenie handle = usbOpenDevice (0x16C0, 0x05DC); if (handle == NULL ) (fprintf (stderr, "Could not find USB device! \ n"); exit (1);) // Out argument - get data from the chip if (strcmp (argv, "out") == 0) (nBytes = usb_control_msg (handle, USB_TYPE_VENDOR | USB_RECIP_DEVICE | USB_ENDPOINT_IN, DATA_OUT, 0, 0, (char *) buffer, sizeof (buffer), 5000); printf ("Got% d bytes:% s \ n", nBytes, buffer); // In argument - send a string (next argument)) else if (strcmp (argv, "in") == 0 && argc> 2) (nBytes = usb_control_msg (handle, USB_TYPE_VENDOR | USB_RECIP_DEVICE | USB_ENDPOINT_OUT, DATA_INg, 0, 0 , argc strlen (argv) +1, 5000);) if (nBytes< 0) fprintf(stderr, "%s\n", usb_strerror()); usb_close(handle); // Закрыть дескриптор return 0; }

Tu loptu ovláda funkcia usb_control_msg, ktorá je deklarovaná v súbore usb.h include. Má veľa parametrov a skutočne vytvára tie riadiace správy, ktorých spracovanie je implementované vo firmvéri mikrokontroléra.

Proteus odpočíva

Obľúbený simulátor zapojenia Proteus ISIS je zbytočný pri navrhovaní zariadení so softvérovou implementáciou USB. Jeho emulátor USB podporuje iba čipy s hardvérovou podporou Universal Serial Bus (napríklad AT90USB646 alebo AT90USB1286).

Zbierame, bleskujeme, testujeme

Nasleduje malý, ale veľmi užitočný súbor Makefile, pomocou ktorého príkaz make z main.c a usbtest.c môže ľahko získať firmvér pre čip - main.hex a binárny súbor nástrojov usbtest:

CC = avr -gcc OBJCOPY = avr -objcopy CFLAGS = -Wall -Os -Iusbdrv -mmcu = attiny2313 OBJFLAGS = -j .text -j .data -O ihex OBJECTS = usbdrv / usbdrv.o usbdrv / oddrvug.o usbdrv / oddr . .o main.o CMDLINE = usbtest # Účel: postaviť všetko: main.hex $ (CMDLINE) # Nástroj na zostavenie pre počítač $ (CMDLINE): usbtest.c gcc -I ./libusb/include -L ./libusb/ lib / gcc -O -Wall usbtest.c -o usbtest -lusb # Vyčistite projekt z binárneho čistenia: $ (RM) * .o * .hex * .elf usbdrv / *. o # Získajte súbor firmvéru od škriatka súbor%. hex:% .elf $ (OBJCOPY) $ (OBJFLAGS) $< [chránené e -mailom]# Súbor elfov main.elf: $ (OBJECTS) $ (CC) $ (CFLAGS) $ (OBJECTS) -o [chránené e -mailom]# Zostavte súbory knižnice V -USB $ (OBJECTS): usbdrv / usbconfig.h # C do kódu objektu% .o:% .c $ (CC) $ (CFLAGS) -c $< -o [chránené e -mailom]# asm na kód objektu% .o:% .S $ (CC) $ (CFLAGS) -x assembler -s -cpp -c $< -o [chránené e -mailom]

Na nahranie firmvéru do mikrokontroléra pomocou programátora usbtiny napíšte príkaz:

$ sudo avrdude -p t2313 -c usbtiny -e -U flash: w: main.hex: i -U lfuse: w: 0xef: m

V avrdude nie sú poistky veľmi jasné, ale dajú sa ľahko vypočítať v jednej z online kalkulačiek.


Pripojíme zariadenie k počítaču a skontrolujeme, ako funguje (test USB pomocou parametra out načíta reťazec, zapíše - zadaný reťazec do vyrovnávacej pamäte čipu):

$ sudo ./usbtest in all_ok $ sudo ./usbtest von

Lyžica dechtu

Soft USB nie je všeliekom. Softvérové ​​implementácie majú spravidla množstvo zjednodušení, ako napríklad absencia kontrolného súčtu a kontroly symetrie kanálov, čo negatívne ovplyvňuje odolnosť proti šumu. Softwarové knižnice tiež spravidla používajú režimy USB s nízkou rýchlosťou. A kód knižnice USB „žerie“ už aj tak malú pamäť čipu.

Vykúka ...

Na logickej úrovni je protokol USB v podstate viacvrstvový paketový prenos dát. Je ľahké to overiť (a zároveň sa dozvedieť veľa zaujímavých vecí o USB) pomocou analyzátora sieťového protokolu Wireshark. Najprv si musíte stiahnuť ovládač USB monitora:

$ sudo modprobe usbmon

Teraz môžete v zozname rozhraní Wireshark vybrať zbernice USB. Číslo zbernice zariadenia môžete vidieť napríklad v denníkoch.

Záver

Našťastie, keď ste sa naučili prenášať údaje medzi počítačom a mikrokontrolérom AVR, vaša vášeň pre elektroniku sa s novou energiou rozhorí a dá vzniknúť mnohým originálnym a užitočným zariadeniam. Zostáva už len zaželať vám úspech v tejto ťažkej, ale zaujímavej oblasti.

11

Mám aplikáciu pre Linux, pre ktorú by som chcel automatizovať niektoré testy a jej stav by sa mal meniť v závislosti od stavu určitých zariadení, tj. USB zariadení, zariadení WLAN, zariadení WAN. Už však nemáme fyzické zariadenia USB, zariadenia WLAN, WAN atď., Preto musím nájsť spôsob, ako tento program otestovať bez skutočného pripájania fyzických zariadení, ich zapínania / vypínania atď.

Začnem jednoduchým vytvorením virtuálneho zariadenia USB, ktoré môžem ovládať z používateľského priestoru, ale z mojej strany zásadne chýba znalosť, ktorá mi bráni prijať akékoľvek podobné témy na týchto fórach a uplatniť ich vo svojom projekte. Mám pocit, že potrebujem vytvoriť nejaký virtuálny ovládač USB a potom ho prepojiť s nejakým programom na úrovni používateľa, nie s usbfs. Aj keď však vytvorím tento virtuálny ovládač, ako „zapojím“ toto zariadenie v používateľskom priestore a zaregistrujem svoj program s týmto konkrétnym ovládačom? Je to, o čo sa snažím, vôbec možné?

  • 2 odpovede
  • Zoradenie:

    Aktivita

0

Nemôžete aplikáciu otestovať vo virtuálnom prostredí pomocou VMWare? Potom môžete k virtuálnemu počítaču hosťa „pripojiť“ akékoľvek virtuálne zariadenie vo svojom počítači a otestovať tak aplikáciu.

8

Najlepším spôsobom je použiť ovládače gadgetu Linux a hardvér, ktorý vám umožní byť zariadením USB. Ovládač miniaplikácie umožňuje počítaču „predstierať“ akékoľvek zariadenie. Potom má váš testovaný systém jeden modul USB OTG pre modul gadget. Ak má váš modul gadget správny hardvér, nemusíte ani odpojiť kábel. Gadget Box môže byť váš stolný počítač / notebook Linux (ak podporuje USB OTG) alebo dokonca telefón s Androidom alebo Raspberry Pi. (Dajte si pozor, aby sa káble USB vysávali. To, že lano sedí, neznamená, že je správne pripojené k USB OTG.).

Keď máte nárok na hardvér USB OTG, modul gadget zabalí všetok softvér:

1) Ak testované zariadenie podporuje OTG, uistite sa, že sa váš modul gadget nepokúša a nie je hostiteľom USB. (Potom sa z testovaného zariadenia stane klient USB.) T.j. uistite sa, že sa veci ako usb_storage nenačítavajú automaticky.

2) Jadro podporuje miniaplikácie pre rozbočovače USB, USB-Ethernet, sériové porty USB a USB kľúče. Stačí do modulu gadget načítať požadované moduly a ono to „funguje“. Ak chcete napríklad vytvoriť USB kľúč, postupujte takto: "insmod g_file_storage.ko file = / dev / ram0". Odvrátená strana si bude myslieť, že ste zapojili USB kľúč.

V prípade sériových zariadení môže modul gadget bežať v kóde používateľského priestoru, ktorý „zdvihne telefón“ na / dev / usbx a porozpráva sa s testovaným zariadením. (Zjavne emulujúci 4G modem alebo čokoľvek iné.)

Tony zariadení sú pod kapotou skutočne „USB-sériové“, pretože výrobca bol príliš lenivý na to, aby porozumel USB.

3) S trochou opätovnej kompilácie alebo doladenia môžete tieto generické zariadenia použiť na modul gadget, ID alebo vrátiť reťazce rôznych dodávateľov atď. Nebude to to isté ako „testovanie na skutočnom hardvéri“, ale aspoň budete testovať štandardná verzia týchto zariadení.

4) V prípade typov zariadení, ktoré ešte nie sú v jadre (napríklad Wi-Fi alebo čokoľvek iné), ste na to sami. S dostatkom potu a sĺz krvi si môžete napísať svoj vlastný typ pomôcky. (V ideálnom prípade používajte čo najviac používateľského priestoru a manipulujte iba s kritickými komponentmi v jadre.)

Niekedy nastane situácia, keď potrebujete flash disk, ale nie je po ruke. Niektoré účtovné a reportovacie programy napríklad vyžadujú spustenie externého úložného zariadenia. V takejto situácii môžete vytvoriť virtuálne úložisko informácií.

Pomocou špeciálneho softvéru to možno vykonať niekoľkými spôsobmi. Uvažujme krok za krokom o každom z nich.

Metóda 1: OSFmount

Tento malý program je veľmi nápomocný, keď nie je po ruke žiadna jednotka flash. Funguje na akejkoľvek verzii systému Windows.

Po stiahnutí programu postupujte takto:



Pri práci s týmto programom môžu byť potrebné ďalšie funkcie. Ak to chcete urobiť, musíte do položky vstúpiť v hlavnom okne „Akcie pohonu“... Potom bude možné použiť nasledujúce možnosti:

  • Demontovať - ​​odpojiť hlasitosť;
  • Formát - formátovanie zväzku;
  • Nastaviť médium iba na čítanie - zakazuje nahrávanie;
  • Extendsize - zväčšuje veľkosť virtuálneho zariadenia;
  • Savetoimagefile - slúži na uloženie v požadovanom formáte.

Metóda 2: Virtuálna jednotka Flash

Dobrá alternatíva k vyššie uvedenej metóde. Pri vytváraní virtuálnej jednotky flash vám tento program umožňuje chrániť informácie o nej heslom. Výhodou je, že môže pracovať v starších verziách systému Windows. Ak teda máte vo svojom počítači verziu Windows XP alebo nižšiu, tento nástroj vám pomôže rýchlo pripraviť virtuálne úložné zariadenie vo vašom počítači.

Pokyny na používanie tohto programu vyzerajú takto:

  1. Stiahnite a nainštalujte si Virtual Flash Drive.
  2. V hlavnom okne kliknite na tlačidlo Namontovať nový.
  3. Zobrazí sa okno „Vytvoriť nový zväzok“, zadajte cestu k vytvoreniu virtuálneho média a kliknite na "Dobre".


Ako vidíte, používanie programu je veľmi jednoduché.

Metóda 3: ImDisk

Je to jeden z najznámejších softvérov na virtuálne diskety. Pomocou obrazového súboru alebo pamäte počítača vytvára virtuálne disky. Pri použití špeciálnych kľúčov pri jeho načítaní sa flash disk zobrazí ako virtuálny vymeniteľný disk.


Metóda 4: cloudové úložisko

Vývoj technológie vám umožňuje vytvárať virtuálne flash disky a ukladať o nich informácie na internete. Táto metóda je priečinok so súbormi, ktorý je k dispozícii konkrétnemu používateľovi z akéhokoľvek počítača pripojeného na internet.

K takýmto dátovým úložiskám patrí Yandex.Disk, Google Drive a Cloud Mail.ru. Princíp využívania týchto služieb je rovnaký.

Zoberme si, ako pracovať s diskom Yandex. Tento zdroj vám umožňuje bezplatne na ňom uložiť informácie až do veľkosti 10 GB.



Práca s takýmto virtuálnym pamäťovým médiom vám umožňuje úplne spravovať údaje: zoskupiť ich do priečinkov, odstrániť nepotrebné údaje a dokonca s nimi zdieľať odkazy s inými používateľmi.

Čo to je a prečo je to potrebné?
Ak má rádio v aute vstup pre menič diskov CD, môžete k nemu pripojiť podobný adaptér, klamie rádio a rozhodne, že k nemu bol pripojený menič a namiesto diskov bežná jednotka flash s hudbou sa používa. Adaptér je možné ovládať štandardnými prostriedkami vrátane riadenia z volantu.

Muska už mal na takéto adaptéry niekoľko recenzií, najznámejšie sú čínske Yatour.

Rozhodol som sa ísť neštandardným spôsobom, rozhodol som sa vyskúšať ruský Trioma Flipper 2.
Celkové hodnotenie - vynikajúce, s nákupom som spokojný, odporúčam.

Bližšie informácie žiadam pod rezom

Predslov

Existuje jednoduchá túžba - chcem počúvať hudbu v aute. V rádiu nie je vždy niečo vhodné, nosiť so sebou zväzok diskov CD a neustále ich nahrávať je unavený.
V roku 2007 mám vo svojom Peugeote 407 GU (hlavná jednotka), neskôr nazývaný iba rádiový magnetofón, bez USB, bluetooth a dokonca aj bez zvyčajného vstupu AUX.

Ak má auto bežný rádiomagnetofón, ktorý nie je viazaný na ovládanie akýchkoľvek funkcií auta, najľahšie je kúpiť si nový rádiomagnetofón. Značkové rádio s USB vstupom sa dá kúpiť do stoviek eur. Bude potrebné vynaložiť ďalšie peniaze, aby rozumela volantu z volantu.

Môžete si pošťuchovať a pripojiť vstup AUX (audio), ale stále potrebujete zdroj zvuku a na volant z volantu budete musieť zabudnúť.

Možnosti s FM vysielačmi som dlho zahodil - vyskúšal som pár rôznych vysielačov, kvalita zvuku nebola veľmi dobrá.

Existuje ešte jeden spôsob, ako pripojiť aportér k vstupu meniča CD k rádiovému magnetofónu, ktorý vám umožní počúvať hudbu z flash diskov a ovládať adaptér štandardnými prostriedkami rádiového magnetofónu, a to aj z volantu. koleso. Môžete nájsť podobné adaptéry od rôznych výrobcov s rôznymi parametrami a líšiace sa kvalitou, spoľahlivosťou, pohodlím alebo cenou.
Najslávnejším adaptérom je Yatour. Najchladnejší je americký Grom Audio, ktorý okrem iného hrá FLAC. Na kopu je ešte niekoľko zariadení - Audiolink, Xcarlink, DMC, Dension.

Najprv som sa začal pozerať na teba. Na ali stojí od 50 dolárov. Recenzie na internete ale nadšenie trochu utlmili. Adaptér má line-out s pevnou úrovňou, takže na mnohých rádiových magnetofónoch je úroveň hlasitosti výrazne nižšia ako na rádiovom magnetofóne. Niekedy nestabilná práca, zamrzne, kritickosť prítomnosti cudzích súborov na jednotke Flash. Počet podporovaných adresárov - koľko diskov podporuje rádiový magnetofón, v mojom prípade je to 6.

Yatour nemá oficiálnu webovú stránku, webové stránky Yatour na internete sú webové stránky predajcov. A informácie je potrebné zbierať kúsok po kúsku na rôznych miestach, hlavne tí, ktorí si to nastavili, sa odhlásia, ale ich skúsenosti nie sú vždy vhodné pre vaše rádio.
Ale mal som šťastie, narazil som na bieloruského predajcu Yatour Sergey aka SSD, ktorý mi odpovedal na všetky otázky, vrátane špecifík práce s mojím rádiom magnetofónom.
Vo všeobecnosti to funguje, ale môžu nastať problémy s objemom a nestabilnou prácou. Prvýkrát som od Sergeya počul o Grom Audio a o Triome, ktoré tiež predáva.

Grom Audio pre Android, podporuje FLAC, ale žiadny model pre moje auto.

Trioma Flipper 2 však zaujal. V prvom rade možnosť nastaviť výstupnú úroveň (hlasitosť). Navyše má oveľa pohodlnejšiu organizáciu priečinkov a môže ich byť oveľa viac. A je to oveľa menej buginy.
Požičal som si dobrú porovnávaciu tabuľku medzi Yatorom a Triomou


Objasnenie Yatury:
1. Cudzie súbory neprekážajú pri prehrávaní. Aspoň na niektorých firmvéroch.

Tak som sa vybral. Trioma !!!
Pri kúpe takéhoto adaptéra si určite vyberte model pre svoje auto. Presnejšie pod autorádiom vášho auta. Rôzne rádiové magnetofóny môžu mať rôzne konektory meniča, ktoré nie sú navzájom kompatibilné.

Kde sa dá Trioma kúpiť?

Na webových stránkach výrobcu sú tí, ktorí predávajú výrobky Trioma. V Rusku alebo Bielorusku nie sú problémy s nákupom adaptéra. A v Európe, odkiaľ je pre mňa jednoduchšie nakupovať a nemusím odbaviť clo a platiť DPH, sú ceny dvakrát vyššie, od 120 eur bez nákladov na poštovné.

Začal som hľadať priateľov, ktorí by mi mohli priniesť adaptér z Ruska alebo Bieloruska. Nájdené !!! Našiel som priateľa z Ruska, ktorý si objednal a priniesol mi adaptér začiatkom februára! Oleg, ďakujem!

A tu je adaptér u mňa!



Sada obsahuje samotný adaptér, kábel na pripojenie k rádiu a kábel USB.
Dĺžka kábla na pripojenie k rádiovému magnetofónu je iba 40 cm, čo okamžite ukladá obmedzenia umiestnenia adaptéra v aute - musí byť umiestnený priamo za rádiom, ani sa nedostanete do odkladacej schránky v palubnej doske s tým.
Adaptér je veľký približne ako cigaretová škatuľka. Jednoduchý plastový box s prečnievajúcim káblom na pripojenie pod zariadenia alebo kábel AUX. Keď však adaptér pripojím k rádiu, nikto iný ho neuvidí.
Okrem toho som vzal kábel AUX s minijackom na konci (+ 500r)


Ešte pár fotiek

Konektor na pripojenie ďalších zariadení, kábel AUX alebo adaptér bluetooth


Mama na adaptéri


Otecko na kábli


Konektor pre rádio RD4


Neotvárajte, ručte


Inštalácia

Rádiový magnetofón RD4, šesťhranom odskrutkujte dve skrutky a vyberte rádiomagnetofón.

Na zadnej strane sú dva vhodné konektory, jeden z nich nebude fungovať - ​​skontrolované;)
Fotografia zobrazuje požadovaný konektor. V ňom je vedenie už pripojené k meniču, vyberieme nainštalovaný konektor a zapneme ho sami.


Pripojíme kábel k adaptéru, zapneme zapaľovanie a zázrak - všetko hneď fungovalo !!! Úroveň hlasitosti je navyše približne rovnaká ako zo vstavaného disku CD.

Potom však začneme premýšľať - kam priniesť kábel USB. V mojom prípade bolo najľahšie natiahnuť kábel pod volantom do malej priehradky v palubnej doske naľavo od vodiča.


Samotný adaptér bol zaseknutý vo výklenku v ľavej zadnej časti rádia. Nie je veľa miesta, po inštalácii rádiového magnetofónu na miesto tam bol adaptér upnutý káblami, takže nebolo potrebné adaptér dodatočne upevňovať.

Všetky fóra píšu, že rádio vyžaduje aktiváciu meniča v službe. Pre mňa bolo všetko oveľa jednoduchšie. Po zapnutí samotný rádiomagnetofón zistil, že je k nemu pripojený menič a bolo možné ho zvoliť pomocou prepínača vstupu (rádio / CD / menič).
Ako sa ukázalo, aktivácia nie je potrebná pre rádio, ale pre displej, aby mohol odrážať informácie pre menič.
Ale pred šiestimi mesiacmi sme s Číňanmi, dobre urobení, poslali displej so všetkými aktivovanými funkciami. Mne teda všetko fungovalo bez dodatočnej aktivácie.

Prevádzka adaptéra

Kvalita zvuku. Porovnateľné s prehrávačom CD. Štandardná akustika v aute je skôr priemerná, takže v porovnaní s bežným prehrávačom diskov CD v mojom aute rozdiel rozhodne nebudete počuť.
Rýchlosť zapnutia... Menej ako pár sekúnd po zapnutí zapaľovania na USB flash disku s niekoľkými desiatkami katalógov. Na fórach píšu, že s niekoľkými stovkami adresárov je rýchlosť nižšia. Adaptér si pamätá, kde sa hral, ​​než sa vypol, a začne hrať z rovnakého miesta. Táto vlastnosť je cenná pre tých, ktorí radi počúvajú audioknihy. Adaptér si pamätá umiestnenie z posledných 4 flash diskov /
Prepínanie stôp. Zlomky sekundy, neexistuje žiadny rozdiel v tom istom alebo v inom adresári je stopa. Pri prepínaní nie sú žiadne cudzie zvuky.
Výmena jednotky flash. Keď rádio funguje, vytiahneme USB flash disk a vložíme nový. Je to určené do niekoľkých sekúnd a okamžite sa začne hrať. Počas výmeny môže znieť veľmi tichý krátky trúbok.

Adaptér rozumie 32 adresárom, ktoré môžu obsahovať 32 podadresárov, z ktorých každý môže obsahovať až 99 súborov. Ale čoskoro som si uvedomil, že prepínač disku prepína iba prvých šesť diskov. Napriek tomu, že je adaptér v náhodnom režime, vidí všetky adresáre.

Po zadaní otázky na fóre Trioma podpora odpovedala veľmi rýchlo a navrhla možnosti organizácie adresárov. Problém sa ukázal byť v tom, že na RD4 tlačidlá, aj keď vykonávajú funkciu Disc + / Disk-, v skutočnosti odosielajú príkazom do adaptéra priamy výber disku 1-6. Pomocou týchto tlačidiel teda môžete prepínať iba 6 koreňových adresárov alebo 6 podadresárov.
A správa 1024 adresárov v mojom rádiu nebude fungovať. Môžete spravovať iba 32 * 6 = 192 adresárov;)

Popis uvádza, že tlačidlá FF / FR vykonávajú dvojitú funkciu - zmenu adresárov / podadresárov a prevíjanie dozadu.
Ale na RD4 Track + / Track- sú kombinované s FF / FR a pre adaptér majú tieto tlačidlá trojitý účel:
1. Krátke stlačenie - Track + / Track-
2. Stlačenie na 2-3 sekundy, uvoľnenie, keď zvuk z aktuálnej stopy zmizne - prepnutie adresára
3. Dlhé stlačenie> 3 s, ozve sa zrýchlený tlmený zvuk - pretočenie dozadu
Čas je približný, musíte sa zamerať na zvuk

Už pred kúpou som predpokladal, že si napíšem jeden veľký mega-flash disk so stovkami katalógov. Teraz však vidím, že je pohodlnejšie mať niekoľko flash diskov s rôznymi zbierkami.
Teraz mám toto:
1. Ruská scéna 80.-90. roky
2. Cudzia scéna 80-90 s
3. Inštrumentálne

Celkom. Za relatívne málo peňazí som dostal adaptér bez chýb s dobrou kvalitou zvuku a jednoduchým intuitívnym ovládaním. S nákupom som veľmi spokojný, Trioma je skvelá !!!

Dodatočné odkazy

Mini časté otázky

Niektoré otázky zostali mimo tejto recenzie, rozhodol som sa ich vytiahnuť do samostatného minifaku. Tu tiež pridám otázky, ktoré sa objavia v komentároch.
  • Čo je potrebné urobiť, aby sa mená (názvy súborov, tagy alebo vôbec čokoľvek) zobrazovali na displeji?
  • Adaptéry Triom určite „vidia“ značky, názvy súborov a názvy priečinkov. Pokiaľ je to možné, zobrazujú textové reťazce na štandardných displejoch rádiomagnetofónov: BMW a všetky vozidlá s optickou zbernicou MOST. Možno bude textový výstup čoskoro implementovaný pre niektoré zariadenia Toyota / Lexus.
  • Meniče diskov CD zvládnu prácu bez problémov.
  • Obávam sa, že sa mýlite: nepoznáme iné externé meniče než vyššie uvedené modely, ktoré sa s touto úlohou vyrovnávajú. Meniče zabudované do hlavnej jednotky sú ďalšou záležitosťou, kde je text odosielaný priamo do ovládača displeja - to je úplne iný mechanizmus.
  • Je možné k adaptéru Trioma Flipper 2 pripojiť ďalšie zariadenia?
  • Môžete sa pripojiť k adaptéru alebo káblovému adaptéru AUX-minijack 3,5 samca
Plánujem kúpiť +23 Pridať do obľúbených Páčila sa mi recenzia +21 +46