Virtualni usb emulatori za računalo. Stvorite virtualni flash pogon na svom računalu. Gdje mogu kupiti Trioma

💖 Sviđa li vam se? Podijelite vezu sa svojim prijateljima

Razvoj razne uređaje baziran na mikrokontrolerima je aktivnost dostojna pravog računalnog geeka. Bez sumnje, korisna značajka bilo kojeg gadgeta bit će USB sučelje za povezivanje s računalom. Ali što ako AVR čip ne pruža hardversku podršku za USB?

V-USB: veličina je bitna

Prilikom razvoja vlastitog gadgeta često se pojavljuje problem povezivanja s računalom. Moram reći da su LPT i COM portovi sada egzotični matične ploče Računala, a o prijenosnicima da i ne govorimo, za koje su ta sučelja davno nestala. Stoga moderna računala Alternative za USB sučelje praktički nema.

Ako se resursi čipa koriste sto posto, onda je bolje odmah pogledati prema uređajima s hardverskom podrškom za univerzalnu serijsku sabirnicu (takvi mikrokontroleri prisutni su u liniji bilo kojeg proizvođača). U drugim slučajevima možete koristiti softverski USB.

Za Atmel mikrokontrolere postoji prekrasan V-USB projekt koji nudi softversku implementaciju niske brzine USB uređaji 1.1. V-USB kod će raditi na bilo kojem AVR uređaju koji ima najmanje 2 KB Flash memorije i 128 bajta RAM-a, s taktna frekvencija 12; 12,8; 15; 16; 16,8 ili 20 MHz.

Proizvod se može koristiti pod GPL licencom otvorenog koda i na komercijalnoj osnovi. Kako biste razvili vlastite USB uređaje, obično trebate kupiti i neku vrstu licence. Ali momci iz V-USB-a pobrinuli su se i za ovo, kupovinom para Vendor ID - Product ID i omogućili svakome da ih koristi.

Hardver za spajanje USB sabirnice na mikrokontroler je vrlo jednostavan. Ako uređaj ne troši previše, tada se može napajati izravno iz sabirnice (smatra se da je dalekovod USB računalo i može isporučiti struju do 500 mA). Budući da informacijske linije (D+ i D–) koriste razinu signala od 3,6 V, osim otpornika za ograničavanje struje, potrebne su zener diode za usklađivanje s 5 V logikom čipa. Da biste označili vrstu veze, morate "povući" napon napajanja kroz otpor od 1,5 kOhm na liniju D–.

Alternativna opcija za uparivanje putem USB-a je smanjenje napona napajanja kontrolera pomoću odgovarajućeg stabilizacijskog čipa ili jednostavno para dioda. Najnoviji dijagram može se pronaći na web stranici projekta V-USB.

USBtiny programator

Postoji mnogo različitih programatora za AVR mikrokontrolere. USBtiny se ovdje spominje dijelom jer sadrži softversku implementaciju USB-a sličnu V-USB-u. Krug ovog programatora je jednostavan: verzija 2 sadrži dva mikro kruga, a prva verzija sadrži samo jedan (sam ATtiny2313 čip). Zahvaljujući Detaljan opis na web stranici i uz jednostavne komponente, uređaj je lako napraviti čak i početniku. USBtiny je kompatibilan s popularnim avrdude programom koji se koristi za programiranje AVR mikrokontrolera.

Jedini problem je učitavanje firmvera u programatorski čip - za ovo vam je potreban... programator. Ako imate računalo s LPT priključkom, tada možete napraviti jednu od opcija FBPRG tzv. "pet žica", što je

Priprema sanjki

Softverski alati potrebni za implementaciju najjednostavnijeg firmware-a za USB gadget su izuzetno asketski: kompajler gcc-avr, biblioteka avr-libc, programator avrdude i set binutils za AVR. Na Debian/Ubuntu sve što vam treba instalira se jednom naredbom:

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

Na ogromnim prostranstvima interneta nije teško pronaći vrlo detaljan vodič putem V-USB i libusb (na engleskom). Prema priručniku, za dodavanje USB podrške projektu trebat će vam usbdrv mapa iz arhive s Najnovija verzija V-USB. U korijenu ove mape nalazi se konfiguracijski predložak usbconfig-prototype.h. Morate napraviti kopiju ove datoteke, nazvavši je usbconfig.h. Zatim popravite usbconfig.h navođenjem porta (D), čije će se linije koristiti za I/O, brojeva linija D+ (2) i D– (3), kao i frekvencije (12 MHz) na kojim čip upravlja (ATtiny2313):

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

Za korištenje V-USB licence za uređaj, ne morate mijenjati brojčane ID-ove proizvođača i uređaja. Ali možete odabrati simbolične nazive po svom ukusu (omogućit će vam razlikovanje nekoliko uređaja temeljenih na V-USB-u povezanih na isto računalo):

#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","k" ,"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" #define USB_CFG_DEVICE_NAME_LEN 10

Razni gadgeti

Imate li ideju za neki uređaj? Nemojte žuriti s lemljenjem i kodiranjem, ali pogledajte, možda je netko već učinio nešto slično. Ako ne možete koristiti gotove dijagrame i izvore, onda barem nećete morati započeti sve od nule.

Na primjer, projekt V-USB, zahvaljujući svojoj politici licenciranja, nakupio je pristojnu bazu gotovih (uključujući slobodno distribuirana) rješenja. Ovdje možete pronaći različite izvedbe tipkovnica, USB adaptera za joysticke, gamepadove (uključujući rijetke, na primjer SNES/NES, Nintendo 64, ZX Spectrum joystick, Sony PlayStation 1/2) i slično. DMX adapteri, virtualni COM i UART portovi, i2c, Servo, DCF77, IR bežična sučelja - sve što će vam pomoći da spojite više novih uređaja na svoje računalo. Loggeri, platforme za sonde i senzore, adapteri za LCD zaslone, programatori i loaderi također mogu biti korisni u kućanstvu.

Program za čip je elementaran!

Kada komunicirate preko USB sabirnice, računalo je glavni uređaj koji periodički šalje poruke sa zahtjevima za upravljanje. Upravljač je, prema tome, rob i mora odgovarati na zahtjeve. Format kontrolne poruke određen je strukturom usbRequest_t iz datoteke usbdrv.h:

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

Kreirajmo datoteku main.c na istoj razini kao usbdrv mapa i opišemo potrebne datoteke zaglavlja, definicije i varijable u njoj:

#uključi #uključi #uključi #include "usbdrv.h" #define F_CPU 12000000L // MK frekvencija #include #define DATA_OUT 1 // Pošalji naredbu #define DATA_IN 2 // Primi naredbu // Statički međuspremnik uchar replyBuf = "Hello World!"; statički uchar dataLength = 0, dataReceived = 0;

U main.c nadjačat ćemo funkciju usbFunctionSetup, koja se automatski poziva kada se primi novi zahtjev:

USB_PUBLIC uchar usbFunctionSetup(uchar data) ( usbRequest_t *rq = (void *)data; switch(rq->bRequest) ( case DATA_OUT: // Obrada naredbe za slanje podataka usbMsgPtr = replyBuf; // Navedite povratnu veličinu međuspremnika (replyBuf) ); / / Vrati veličinu međuspremnika DATA_IN: // Obrada naredbe primanja podataka dataLength = (uchar)rq->wLength.word; // Dohvati duljinu dataReceived = 0; // Bit će mnogo poziva usbFunctionWrite ( dataLength > sizeof(replyBuf)) // Provjera overflow dataLength = sizeof(replyBuf); // Return 255 ) return 0;

Kao što možete vidjeti iz popisa, najlakši način za slanje podataka na računalo je postaviti usbFunctionSetup na vrijednost usbMsgPtr pokazivača na RAM međuspremnik (replyBuf) gdje se podaci nalaze, a zatim vratiti njihovu duljinu. Veličina međuspremnika ne smije premašiti 254 bajta. Za ATtiny2313 sa svojih 128 bajta RAM-a to je dovoljno. Za funkcionalnije uređaje postoji druga metoda - nadjačavanje funkcije usbFunctionRead.

Da biste dobili podatke, prvo trebate upotrijebiti funkciju usbFunctionSetup za izdvajanje duljine poruke iz polja wLength zahtjeva i pohraniti je u globalnu varijablu dataLength. Drugo, u main.c morate nadjačati funkciju usbFunctionWrite, koja je dizajnirana za obradu primljenih podataka i poziva se automatski (i očito nekoliko puta) ako usbFunctionSetup vrati vrijednost USB_NO_MSG (255):

USB_PUBLIC uchar usbFunctionWrite(uchar *data, uchar len) ( uchar i; // Spremi primljeni dio podataka u međuspremnik za (i = 0; dataReceived)< dataLength && i < len; i++, dataReceived++) replyBuf = data[i]; return (dataReceived == dataLength); }

Zapravo, funkcija usbFunctionWrite ispunjava međuspremnik replyBuf primljenim podacima.

Usput, da bi ova metoda radila, morate napraviti promjene u usbconfig.h:

#define USB_CFG_IMPLEMENT_FN_WRITE 1

Pa, zadnja funkcija firmvera je glavna:

Int main() ( usbInit(); // Inicijaliziraj USB usbDeviceConnect(); // Poveži uređaj sei(); // Omogući prekide // Čekaj kontrolne poruke u beskonačnoj petlji while(1) usbPoll(); return 0 ;)

Koristimo USART/UART

Dobra alternativa softversko/hardverskom USB-u je korištenje popularnog USART/UART sučelja u čipu s konverterom treće strane ovog protokola u USB, koji se može izraditi, primjerice, na temelju FT232RL čipa.

Libusb: ni obučen ni gol

Možda ćete se pitati: hoćete li morati napisati upravljački program za operativni sustav računala kako biste spojili USB uređaj? Ako koristite libusb, možete proći bez implementacije potpunog kernel modula. Libusb je biblioteka otvorenog koda koja vam omogućuje brzo programiranje, prvo, traženje uređaja na sabirnici, a drugo, razmjenu podataka s njim.

Pod Linuxom, biblioteka i potrebne datoteke zaglavlja mogu se dobiti iz izvornih kodova. Bolje je koristiti standardno spremište vaše distribucije. Za Debian/Ubuntu, na primjer, ovako:

$ sudo apt-get instaliraj libusb-dev

Postoji i libusb port za Windows - libusb-win32. Suprotno nazivu projekta, podržani su i 64-bitni Microsoftovi operativni sustavi (počevši od verzije 1.2.0.0).

Ali libusb je posebna tema za raspravu. Mislim da ste upoznati s PC programiranjem i da to možete sami shvatiti. Zato ću biti kratak. Napravite datoteku usbtest.c i počnite je puniti sadržajem. Prvo potrebne datoteke zaglavlja i definicije:

#uključi [...] // Za računalo, značenje naredbi je obrnuto, // ali oznake ostaju iste #define DATA_OUT 1 #define DATA_IN 2

Funkcija usbOpenDevice za inicijalizaciju uređaja:

Usb_init(); // Inicijaliziraj USB usb_find_busses(); // Pronađi sabirnice usb_find_devices(); // Pronađi uređaje // Nabroji sve sabirnice za (bus=usb_get_busses(); bus; bus=bus->next) ( // Nabroji sve uređaje na sabirnici za (dev=bus->devices; dev; dev=dev- > sljedeći) ( // Ako se ID dobavljača i proizvoda ne podudaraju... if(dev->descriptor.idVendor != dobavljač || dev->descriptor.idProduct != proizvod) nastavi; // ...preskoči ovo iteracija // Pokušajte dobiti oznaku uređaja if(!(handle = usb_open(dev))) ( fprintf(stderr, "%s\n", usb_strerror()); continue; ) return handle; // Return handle ) ) // Uređaj nije pronađen return NULL;

Kao što možete vidjeti, parametri usbOpenDevice su numerički identifikatori proizvođača i uređaja. Ako je uređaj prisutan na sabirnici, vraća se njegov deskriptor. Ako postoji nekoliko uređaja na V-USB-u, morat ćete dodati ček za simbolička imena dobavljača i proizvoda.

I glavna funkcija usbtest uslužnog programa konzole:

Int main(int argc, char **argv) ( // Deskriptor uređaja usb_dev_handle *handle = NULL; int nBytes = 0; char međuspremnik; // Traženje oznake uređaja = usbOpenDevice(0x16C0, 0x05DC); if(handle == NULL) ( fprintf(stderr, "Nije moguće pronaći USB uređaj!\n"); exit(1); ) // Argument out - dohvati podatke iz čipa if(strcmp(argv, "out") == 0) ( nBytes = usb_control_msg (ručka, USB_TYPE_VENDOR | USB_RECIP_DEVICE | USB_ENDPOINT_IN, DATA_OUT, 0, 0, (char *)buffer, sizeof(buffer), 5000); printf("Dobio %d bajtova: %s\n", nBytes, međuspremnik) ; // Argument u - pošalji niz (sljedeći argument) else if(strcmp(argv, "in") == 0 && argc > 2) ( nBytes = usb_control_msg(handle, USB_TYPE_VENDOR | USB_RECIP_DEVICE | USB_ENDPOINT_OUT, DATA_IN, 0, 0 , argv, strlen(argv)+1, 5000) if(nBytes< 0) fprintf(stderr, "%s\n", usb_strerror()); usb_close(handle); // Закрыть дескриптор return 0; }

Funkcija usb_control_msg, koja je deklarirana u datoteci za uključivanje usb.h, ovdje vlada. Ima hrpu parametara i zapravo kreira te kontrolne poruke čija je obrada implementirana u firmware mikrokontrolera.

Proteus se odmara

Svima omiljeni simulator električnih krugova, Proteus ISIS, beskoristan je pri razvoju softverskih USB uređaja. Njegov USB emulator podržava samo čipove s hardverskom podrškom za univerzalnu serijsku sabirnicu (kao što su AT90USB646 ili AT90USB1286).

Sastavljamo, flashiramo, testiramo

Ispod je mali, ali vrlo koristan Makefile, s kojim možete lako dobiti firmware za čip - main.hex i usbtest uslužnog binarnog programa koristeći make naredbu iz main.c i usbtest.c:

CC = avr-gcc OBJCOPY = avr-objcopy CFLAGS = -Wall -Os -Iusbdrv -mmcu=attiny2313 OBJFLAGS = -j .text -j .data -O ihex OBJEKTI = usbdrv/usbdrv.o usbdrv/oddebug.o usbdrv/usbdrvasm .o main.o CMDLINE = usbtest # Cilj: prikupiti sve sve: main.hex $(CMDLINE) # Izraditi pomoćni program za računalo $(CMDLINE): usbtest.c gcc -I ./libusb/include -L ./libusb /lib /gcc -O -Wall usbtest.c -o usbtest -lusb # Obrišite projekt iz binarnog koda čisto: $(RM) *.o *.hex *.elf usbdrv/*.o # Dobivanje datoteke firmvera iz elf datoteka %. hex: %.elf $(OBJCOPY) $(OBJFLAGS) $< $@ # Сборка elf-файла main.elf: $(OBJECTS) $(CC) $(CFLAGS) $(OBJECTS) -o $@ # Сборка файлов библиотеки V-USB $(OBJECTS): usbdrv/usbconfig.h # C в объектный код %.o: %.c $(CC) $(CFLAGS) -c $< -o $@ # asm в объектный код %.o: %.S $(CC) $(CFLAGS) -x assembler-with-cpp -c $< -o $@

Za prijenos firmvera na mikrokontroler pomoću usbtiny programatora upišite naredbu:

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

U avrdudeu postavke osigurača nisu baš jasne, ali se lako mogu izračunati u jednom od online kalkulatora.


Povezujemo uređaj s računalom i provjeravamo kako radi (usbtest s izlaznim parametrom čita liniju, in - upisuje navedeni red u međuspremnik čipa):

$ sudo ./usbtest in all_ok $ sudo ./usbtest out

Žlica katrana

Softverski USB nije lijek za sve. Softverske implementacije obično imaju niz pojednostavljenja, kao što je nedostatak provjere kontrolne sume i simetrije kanala, što negativno utječe na otpornost na buku. Također, softverske biblioteke obično koriste USB radne načine niske brzine. A kod USB knjižnice troši ionako malu memoriju čipa.

Zavirimo...

Na logičkoj razini, USB protokol je u biti paketni prijenos podataka na više razina. Lako je to provjeriti (i istovremeno naučiti puno zanimljivih stvari o USB-u) pomoću analizatora mrežnih protokola Wireshark. Prvo morate preuzeti upravljački program USB monitora:

$ sudo modprobe usbmon

Sada možete odabrati USB sabirnice s popisa Wireshark sučelja. Možete vidjeti broj sabirnice uređaja, na primjer, u zapisima.

Zaključak

Nadam se da će nakon što naučite kako prenositi podatke između računala i AVR mikrokontrolera vaša strast prema elektronici planuti novom snagom, iznjedrivši mnoge originalne i korisne uređaje. Ostaje samo da vam poželimo uspjeh u ovom teškom, ali zanimljivom polju.

Ponekad se dogodi situacija kada vam treba flash pogon, ali ga nemate pri ruci. Na primjer, neki programi za računovodstvo i izvješćivanje zahtijevaju vanjski pogon. U takvoj situaciji možete stvoriti virtualni uređaj za pohranu.

Korištenjem posebnog softvera to se može učiniti na nekoliko načina. Pogledajmo svaki od njih korak po korak.

Metoda 1: OSF montiranje

Ovaj mali program je od velike pomoći kada nemate flash pogon pri ruci. Radi na bilo kojoj verziji sustava Windows.

Nakon što ste preuzeli program, učinite sljedeće:



Za korištenje ovog programa mogu biti potrebne dodatne značajke. Da biste to učinili, morate unijeti stavku u glavni prozor "Pokretanje radnji". Tada će biti moguće koristiti sljedeće opcije:

  • Isključi – isključivanje volumena;
  • Format—formatiranje volumena;
  • Postavi medij samo za čitanje – zabranjuje snimanje;
  • Extendsize – proširuje veličinu virtualnog uređaja;
  • Savetoimagefile – koristi se za spremanje u traženom formatu.

Metoda 2: Virtualni Flash Drive

Dobra alternativa gore opisanoj metodi. Prilikom izrade virtualnog flash pogona ovaj vam program omogućuje zaštitu podataka na njemu pomoću lozinke. Prednost ovoga je što radi u starijim verzijama Windowsa. Stoga, ako na računalu imate verziju sustava Windows XP ili stariju, ovaj će vam uslužni program pomoći da brzo pripremite virtualni uređaj za pohranu na računalu.

Upute za korištenje ovog programa izgledaju ovako:

  1. Preuzmite i instalirajte Virtual Flash Drive.
  2. U glavnom prozoru kliknite gumb "Postavi novo".
  3. Pojavit će se prozor "Stvori novi volumen", odredite put za stvaranje virtualnog medija u njemu i kliknite "U REDU".


Kao što vidite, program je vrlo jednostavan za korištenje.

Metoda 3: ImDisk

Ovo je jedan od naj popularni programi za stvaranje virtualne diskete. Koristeći slikovnu datoteku ili memoriju računala, stvara virtualni diskovi. Kada koristite posebne tipke prilikom učitavanja, flash pogon će se pojaviti kao virtualni prijenosni disk.


Metoda 4: Pohrana u oblaku

Razvoj tehnologije omogućuje stvaranje virtualnih flash pogona i pohranjivanje podataka na njih na Internetu. Ova metoda je mapa s datotekama kojoj može pristupiti određeni korisnik s bilo kojeg računala spojenog na internet.

Takva spremišta podataka uključuju Yandex.Disk, Google Drive i Mail.ru Cloud. Princip korištenja ovih usluga je isti.

Pogledajmo kako raditi s Yandex Diskom. Ovaj resurs vam omogućuje besplatno pohranjivanje informacija do 10 GB.



Rad s takvim virtualnim medijem za pohranu omogućuje vam potpuno upravljanje podacima: grupiranje u mape, brisanje nepotrebnih podataka, pa čak i dijeljenje poveznica na njih s drugim korisnicima.

Što je to i zašto je potrebno?
Ako radio u vašem autu ima ulaz za CD izmjenjivač, možete na njega spojiti sličan adapter, prevarit će radio i mislit će da je na njega spojen izmjenjivač, a umjesto diskova, obični flash pogon s koristi se glazba. Adapterom se može upravljati standardnim sredstvima, uključujući kontrolu s upravljača.

Na Musku je već bilo nekoliko recenzija sličnih adaptera, a najpoznatiji je kineski Yatour.

Odlučio sam ići nekonvencionalnim putem, odlučio sam isprobati ruski Trioma Flipper 2.
Ukupna ocjena - odličan, zadovoljan kupnjom, preporuka.

Za detalje pogledajte dolje

Predgovor

Imam jednostavnu želju - želim slušati glazbu u autu. Nema uvijek nečeg prikladnog na radiju; dosadilo mi je nositi hrpu CD-ova sa sobom i stalno ih snimati.
U mom Peugeotu 407 2007 postoji GU (glavna jedinica), kasnije nazvan jednostavno magnetofon, bez USB-a, bluetootha, pa čak i bez uobičajenog AUX ulaza.

Ako vaš automobil ima obični radio koji nije spojen na upravljanje nikakvim funkcijama automobila, najlakši način je da kupite novi radio. Brendirani radio sa USB ulaz može se kupiti u roku od stotinjak eura. Morat će se potrošiti još jedan iznos kako bi razumio kontrole na upravljaču.

Možete ga hakirati i pričvrstiti AUX (audio) ulaz, ali i dalje će vam trebati izvor zvuka, a na kontrole na volanu morat ćete zaboraviti.

Davno sam napustio opcije s FM odašiljačima - isprobao sam nekoliko različitih odašiljača, kvaliteta zvuka nije bila baš dobra.

Postoji još jedan način: spojite adapter na radio na ulazu CD izmjenjivača, što će vam omogućiti slušanje glazbe s flash pogona, kontrolirajući adapter pomoću standardnih sredstava radija, uključujući i upravljač. Slične adaptere možete pronaći kod različitih proizvođača s različitim parametrima i razlikuju se u kvaliteti, pouzdanosti, praktičnosti ili cijeni.
Najpoznatiji adapter je Yatour. Najcool je možda američki Grom Audio koji pušta između ostalog i FLAC. Pa ima još nekoliko uređaja - Audiolink, Xcarlink, DMC, Dension.

Prije svega, počeo sam gledati yatour. Na Aliju košta od 50 dolara. No recenzije na internetu malo su umanjile entuzijazam. Adapter ima linearni izlaz s fiksnom razinom, tako da je na mnogim radijima razina glasnoće primjetno niža nego na radiju. Ponekad nestabilan rad, zamrzavanje, kritičnost prisutnosti stranih datoteka na flash disku. Broj podržanih direktorija - koliko diskova radio podržava, u mom slučaju to je 6.

Yatour nema službenu web stranicu; Yatourove web stranice na internetu su web stranice prodavača. I informacije se moraju skupljati malo po malo na različitim mjestima, uglavnom pišu oni koji su ga sami instalirali, ali njihovo iskustvo nije uvijek prikladno za vaš radio.
Ali imao sam sreće, naišao sam na bjeloruskog prodavača yatour Sergeja zvanog SSD, koji je odgovorio na sva moja pitanja, uključujući značajke rada s mojim radiom.
Općenito, radi, ali može biti problema s glasnoćom i nestabilnim radom. Od Sergeja sam prvi put čuo za Grom Audio i Triome, koje on također prodaje.

Grom Audio na Androidu, podržava FLAC, ali nema modela za moj auto.

Ali Trioma Flipper 2 me zainteresirao. Prije svega, mogućnost podešavanja izlazne razine (glasnoće). Osim toga, ima puno praktičniju organizaciju mapa i može ih biti mnogo više. I mnogo je manje bugovit.
Po posuđenom dobar stol usporedbe između Yatora i Triome


Pojašnjenje o Yatursu:
1. Nepotrebne datoteke ne ometaju reprodukciju. Barem na nekim firmwareima.

Dakle, napravio sam svoj izbor. Trioma!!!
Kada kupujete takav adapter, svakako odaberite model za svoj automobil. Točnije ispod auto radija vašeg automobila. Različiti radio uređaji mogu imati različite priključke za izmjenjivač koji nisu međusobno kompatibilni.

Gdje mogu kupiti Trioma?

Na web stranici proizvođača postoje mjesta koja prodaju Trioma proizvode. Nema problema s kupnjom adaptera u Rusiji ili Bjelorusiji. A u Europi, gdje mi je lakše kupovati i ne moram ići na carinjenje i PDV, cijene su duplo veće, od 120 eur bez troškova dostave.

Počeo sam tražiti prijatelje koji bi mi mogli donijeti adapter iz Rusije ili Bjelorusije. Pronađeno!!! Našao sam prijatelja iz Rusije koji je početkom veljače naručio i već mi donio adapter! Oleg, hvala ti!

I evo adaptera kod mene doma!



Komplet uključuje sam adapter, kabel za spajanje na radio i USB kabel.
Duljina kabela za spajanje na radio je samo 40 cm, što odmah nameće ograničenja na mjesto adaptera u automobilu - mora se postaviti neposredno iza radija, ne možete čak ni doprijeti do pretinca s njim .
Adapter je otprilike veličine kutije cigareta. Jednostavna plastična kutija s izbočenim kabelom za spajanje uređaja ili AUX kabelom. Međutim, nakon što spojim adapter na radio, nitko ga drugi neće vidjeti.
Dodatno sam uzeo AUX kabel s minijackom na kraju (+500r)


Još nekoliko fotografija

Konektor za spajanje dodatnih uređaja, AUX kabel ili bluetooth adapter


Mama na adapteru


Tata na kabelskoj


Konektor za radio RD4


Ne otvaraj, garancija


Montaža

Magnetofon RD4, odvrnuti dva vijka sa šesterokutom i izvaditi magnetofon.

Postoje dva odgovarajuća konektora straga, jedan od njih neće raditi - provjereno;)
Na fotografiji je prikazan potreban konektor. Već ima ožičenje za spajanje izmjenjivača, pa izvlačimo ugrađeni konektor i uključujemo naš.


Spojimo kabel s adapterom, uključimo paljenje i čudo - sve je odmah proradilo!!! Štoviše, razina glasnoće je približno ista kao kod ugrađenog CD-a.

Ali onda počinjemo razmišljati o tome gdje spojiti USB kabel. Najlakši način u mom slučaju bio je provući kabel ispod volana u mali pretinac za rukavice lijevo od vozača.


Sam adapter je postavljen u nišu iza lijevog radija. Nema puno prostora nakon postavljanja radija na mjesto, adapter je bio pričvršćen kabelima, tako da nije bilo potrebe za dodatnim učvršćivanjem adaptera.

Na svim forumima pišu da radio zahtijeva aktivaciju mjenjača u servisu. Za mene se sve pokazalo mnogo jednostavnijim. Nakon paljenja, radio je sam utvrdio da je na njega spojen izmjenjivač te ga je postalo moguće odabrati preko ulazne sklopke (radio/CD/mjenjač).
Kako se pokazalo, aktivacija nije potrebna za radio, već za zaslon kako bi mogao odražavati informacije za mjenjač.
Ali prije šest mjeseci ja i Kinezi, bravo, poslali displej sa svim aktiviranim funkcijama. Tako da mi je sve radilo bez dodatne aktivacije.

Rad adaptera

Kvaliteta zvuka. Usporedivo s CD playerom. Standardna akustika u autu je prilično osrednja, tako da sigurno nećete čuti razliku sa standardnim CD playerom u mom autu.
Brzina prebacivanja. Manje od nekoliko sekundi nakon uključivanja paljenja na flash pogonu s nekoliko desetaka kataloga. Na forumima pišu da je s nekoliko stotina imenika brzina manja. Adapter pamti gdje je svirao prije gašenja i počinje svirati s istog mjesta. Ova nekretnina je vrijedna za one koji vole slušati audio knjige. Adapter pamti lokaciju s zadnja 4 flash pogona/
Prebacivanje pjesama. U djeliću sekunde nema razlike nalazi li se pjesma u istom ili drugom direktoriju. Tijekom prebacivanja nema stranih zvukova.
Zamjena flash pogona. Dok radio radi, izvadite flash pogon i umetnite novi. Prepoznaje se u roku od nekoliko sekundi i odmah počinje s reprodukcijom. Tijekom zamjene može se čuti vrlo tiho kratko trljanje.

Adapter razumije 32 direktorija, koji mogu imati 32 poddirektorija, od kojih svaki može sadržavati do 99 datoteka. Ali ubrzo sam shvatio da moj disk prekidač mijenja samo prvih šest diskova. Iako u Random modu adapter vidi sve direktorije.

Postavio sam pitanje na Trioma forumu, podrška je vrlo brzo odgovorila i ponudila opcije za organiziranje imenika. Ispostavilo se da je problem u tome što na RD4 gumbi, iako obavljaju Disc+/Disk- funkciju, u stvarnosti šalju naredbe za direktan odabir diska 1-6 na adapter. Ovi gumbi mogu mijenjati samo 6 korijenskih direktorija ili 6 poddirektorija.
I nije moguće upravljati 1024 imenika na mom radiju. Možete upravljati sa samo 32*6=192 imenika;)

U opisu stoji da tipke FF/FR imaju dvostruku funkciju - mijenjanje direktorija/poddirektorija i premotavanje unatrag.
Ali na RD4 Track+/Track- kombinirani su s FF/FR i za adapter ti gumbi imaju trostruku svrhu:
1. Kratki pritisak - Track+/Track-
2. Pritisnite 2-3 sekunde, otpustite kada zvuk će nestati iz trenutne pjesme - prebacite direktorij
3. Dugo pritisnite >3 sekunde, čuje se ubrzani prigušeni zvuk - premotavanje unatrag
Vrijeme je okvirno, morate se usredotočiti na zvuk

Čak i prije kupnje pretpostavljao sam da ću pohraniti jedan veliki megaflash disk sa stotinama kataloga. Ali sada vidim da je prikladnije imati nekoliko flash pogona s različitim odabirima.
Sada imam ovo:
1. Ruska pop glazba 80-90-ih
2. Strana pop glazba 80-90-ih
3. Instrumentali

Ukupno. Za relativno malo novca dobio sam adapter bez kvarova s ​​dobrom kvalitetom zvuka i jednostavnim, intuitivnim kontrolama. Jako sam zadovoljan kupnjom, Trioma - bravo!!!

Dodatne poveznice

Mini FAQ

Neka su pitanja ostala izvan ovog pregleda; odlučio sam ih uključiti u zaseban minifak. Ovdje ću dodati i pitanja koja se javljaju u komentarima.
  • Što je potrebno učiniti kako bi se osiguralo da se nazivi (nazivi datoteka, oznake ili bilo što) prikazuju na zaslonu?
  • Triom adapteri sigurno "vide" oznake, nazive datoteka i nazive mapa. Gdje je moguće, prikazuju tekstualne nizove na standardnim zaslonima radija: BMW-a i svih automobila s optičkom MOST sabirnicom. Možda će uskoro izlaz teksta biti implementiran za neke Toyota/Lexus uređaje.
  • CD izmjenjivači obavljaju posao bez problema.
  • Bojim se da ste u zabludi: osim gore navedenih modela ne poznajemo nikakve vanjske mjenjače koji bi se nosili s ovim zadatkom. Izmjenjivači ugrađeni u glavnu jedinicu su druga stvar, gdje se tekst ispisuje izravno na kontroler zaslona - ovo je potpuno drugačiji mehanizam.
  • Je li moguće spojiti dodatne uređaje na Trioma Flipper 2 adapter?
  • Na adapter možete spojiti AUX-minijack 3.5 muški adapterski kabel
Planiram kupiti +23 Dodaj u favorite Svidjela mi se recenzija +21 +46

11

Imam Linux aplikaciju za koju bih želio automatizirati neke testove i njezino stanje treba se promijeniti na temelju stanja određenih uređaja, tj. USB uređaja, WLAN uređaja, WAN uređaja. Međutim, više nemamo fizički USB, WLAN, WAN itd. uređaje, pa moram smisliti način testiranja ovog programa bez stvarnog povezivanja fizičke uređaje, njihovo uključivanje/isključivanje itd.

počinjem sa lako stvaranje virtualni USB uređaj kojim mogu upravljati iz korisničkog prostora, ali postoji temeljni nedostatak znanja s moje strane koji me sprječava da preuzmem bilo koju od sličnih tema na ovim forumima i primijenim ih na svoj projekt. Osjećam da trebam stvoriti neku vrstu virtualnog USB drajvera i zatim ga povezati s nekim korisničkim programom, a ne usbfs. Međutim, čak i ako kreiram ovaj virtualni upravljački program, kako da "montiram" ovaj uređaj iz korisničkog prostora i da svoj program registriram na ovaj određeni upravljački program? Je li to što pokušavam učiniti uopće moguće?

  • 2 odgovora
  • Sortiranje:

    Aktivnost

0

Ne možete li testirati aplikaciju u virtualnom okruženju koristeći VMWare? Zatim možete "spojiti" bilo koji virtualni uređaj na svom računalu s gostom virtualni stroj i testirajte aplikaciju na ovaj način.

8

Najbolji način je koristiti upravljačke programe i hardver za Linux gadgete koji vam omogućuju da budete USB uređaj. Upravljački program gadgeta omogućuje računalu da se "pretvara" da je bilo koji uređaj. Onda vaš sustav koji testirate ima jedan USB kabl OTG za gadget. Ne morate čak ni isključiti kabel ako vaš gadget ima odgovarajući hardver. "Kutija s gadgetima" može biti vaše stolno/prijenosno računalo Linux kontrola(ako podržava USB OTG) ili čak Android telefon ili Raspberry Pi. (Pazite da USB kabeli ne usisavaju van. Samo zato što kabel odgovara ne znači da je ispravno spojen na USB OTG.).

Nakon što omogućite USB OTG hardver, kutije s gadgetima su sve softver:

1) Ako uređaj koji se testira podržava OTG, provjerite da vaš gadget to ne pokušava i nije USB host. (Tada će vaš uređaj koji se testira postati USB klijent.) Tj. pobrinite se da se stvari poput usb_storage ne učitavaju automatski.

2) Kernel podržava gadgete za USB čvorišta, USB-Ethernet, USB-serijske priključke i USB uređaje za pohranu. Samo učitajte potrebne module u svoj gadget i on "jednostavno radi". Na primjer, da biste stvorili USB pogon, učinite nešto poput ovoga: "insmod g_file_storage.ko file=/dev/ram0". Druga strana će misliti da ste spojili USB pogon.

Za serijske uređaje, gadget može pokrenuti kod korisničkog prostora koji "podiže slušalicu" na "/Dev/USBx" i razgovara s uređajem koji se testira. (Očigledno oponašanje 4G modema ili bilo kojeg drugog.)

Tone uređaja doista su "USB-to-serial" ispod haube jer je proizvođač bio previše lijen da razumije USB.

3) Uz malu ponovnu kompilaciju ili konfiguraciju, možete koristiti ove univerzalne uređaje za gadget, ID ili povrat razne žice dobavljača itd. To neće biti isto što i „testiranje na stvarnim hardver", ali barem testirate standardnu ​​verziju ovih uređaja.

4) Za vrste uređaja koji još nisu u jezgri (kao što je Wi-Fi ili bilo što drugo), sami ste. Uz dovoljno krvavog znoja i suza, možete napisati svoj vlastiti tip gadgeta. (Idealno, koristite što je više moguće u korisničkom prostoru i rukujte samo kritičnim komponentama u kernelu..)



reci prijateljima
Pročitajte također