Innholdsfortegnelse:

Komme i gang med VMUSIC2: 5 trinn
Komme i gang med VMUSIC2: 5 trinn

Video: Komme i gang med VMUSIC2: 5 trinn

Video: Komme i gang med VMUSIC2: 5 trinn
Video: Komme i gang med treningen | Løpetrening.no 2024, Juli
Anonim
Komme i gang med VMUSIC2
Komme i gang med VMUSIC2

VMUSIC2 er en komplett MP3 -spillermodul fra FTDI, Inc. som gjør det enkelt å integrere MP3 -funksjonalitet i ditt neste mikrokontrollerprosjekt. Den har to grensesnitt: SPI eller UART (seriell)

Noen eksempler på programmer: 1. Få roboten til å snakke og spille lydeffekter basert på en tilstand eller utløser 2. Legg lyd til modellene og dioramaene dine; Gi ditt stykke interaktivitet eller historie 3. Interaktive kunstinstallasjoner 4. Spice Pinball eller annen arkademaskin 5. Bruk modulen til å laste inn et skript fra en flash -stasjon som definerer en animasjon, for eksempel å spille av en lydfil mens du utfører noen mekanisk rutine som brukt i animatronikk. Spilletiden sendes ut i sekunder som kan brukes til (rå) synkronisering (TIPS: Denne siste er det jeg har planlagt for en senere instruerbar) Dokumentasjonen fra FTDI som beskriver hvordan du bruker denne modulen er ikke lagt veldig godt ut og jeg hadde litt problemer med å komme i gang med min. Mens jeg lette etter informasjon, har jeg sett mange innlegg i forskjellige fora fra folk som også har problemer med å komme i gang, så etter at jeg endelig fikk min i gang, bestemte jeg meg for å lage denne instruerbare for å hjelpe andre. Denne instruksen vil dekke å bli tilkoblet og kontrollere din VMUSIC2 -modul fra hyperterminal. Jeg anbefaler å starte på denne måten fordi den lar deg bli kjent med kommandoene og få en følelse av hvordan det fungerer før du kobler det til mikrokontrolleren. Jeg vil følge opp med en annen instruks om hvordan du kontrollerer den fra en mikrokontroller.

Trinn 1: Introduksjon til VMUSIC2 -modulen

Introduksjon til VMUSIC2 -modulen
Introduksjon til VMUSIC2 -modulen
Introduksjon til VMUSIC2 -modulen
Introduksjon til VMUSIC2 -modulen

VMUSIC2 -modulen er basert på Vinculum VNC1L USB Host -kontrolleren fra FTDI og VS1003 MP3 -koderen/dekoderen fra VLSI. VMUSIC2 lar deg koble til en USB -flash -stasjon fylt med MP3 -filer og spille dem fra mikrokontrolleren. Denne modulen er billig og leveres i et kabinett som enkelt kan monteres i et panelutkobling for å gi et profesjonelt utseende til prosjektet ditt. Fordelen med å bruke denne modulen er at den bare krever noen få pinner for å kontrollere den, og programvaren er svært liten. Dette gjør at mikrokontrolleren kan fokusere på resten av prosjektet ditt (overvåking av brytere osv.) Mens MP3 -en spilles av. Det betyr også at du kan komme unna med å bruke mikrokontrollere med mindre programminne og færre I/O. En annen fordel er at du ikke trenger å vite noe om programmering for FAT32, USB -vert eller MP3. Mens VMUSIC2 -modulen er designet for å spille av MP3 -er, kan USB -vertsgrensesnittet også brukes til å få tilgang til (både lese og skrive) eventuelle filer på flash -stasjonen. Når jeg kommer til instruksjonsboken der jeg kobler dette til en mikrokontroller, vil det være tydelig hvor nyttig dette er. Du trenger følgende elementer for å fullføre denne instruerbare:*VMUSIC2-modulen fra FTDI.*RS232 til RS232-TTL-3.3 v -omformer (hvis du kobler denne modulen direkte til PC -seriens port, risikerer du å skade den. Se trinn 3 for et forslag)*5V strømforsyning*En datamaskin med hyperterminal (inkludert i Windows) eller et annet terminalprogram Har du alt? Bra la oss ta en titt på modulen:

Trinn 2: Programmering av fastvaren

Programmering av fastvaren
Programmering av fastvaren
Programmering av fastvaren
Programmering av fastvaren
Programmering av fastvaren
Programmering av fastvaren

Jeg bestilte min VMUSIC2 -modul direkte fra FTDI. Den største kilden til min frustrasjon var at jeg fant ut at modulen min ikke hadde noen fastvare installert. Selvfølgelig trodde jeg at det var et problem med forbindelsene mine, så jeg gikk på vill jakt etter å prøve å finne ut hva jeg gjorde galt! Og jeg skjønte ikke at jeg kunne oppgradere fastvaren fra USB -stasjonen, så jeg endte opp med å gjøre det på den harde måten. Denne instruksen bør spare deg for det. Standard firmware er heller ikke konfigurert til å være vennlig med hyperterminal. Så vi vil modifisere og oppdatere fastvaren. Først går du til Vinculum -nettstedet og laster ned den siste Reflash (FTD) -filen der. Få også VPROG Re-flash-verktøyet (ikke brukt i denne instruksjonsboken, men vil være nyttig hvis du har problemer) og fastvare-tilpasser fra delen Programmer og verktøy lenger ned på siden. Start opp fastvare-tilpasseren og last inn reflash (FTD) filen du lastet ned. Du vil se et sammendrag av de programmerte alternativene i fastvaren. Klikk ved siden av for å begynne å redigere fastvaren. (Jeg har tatt med skjermbilder av delene jeg har endret) Dette er et sammendrag av alternativene jeg valgte: UART: 9600 baud, 8 bits, No Parity, 1 Stop bit og No flow kontroll (denne er viktig) IPA Mode og Extended Command SetNå klikker du bare neste gjennom resten av alternativene. Du vil bli bedt om en unik 3 -tegns identifikator for din tilpassede fastvare. Jeg opprettet to forskjellige firmwares og brukte disse ID -ene; COM for hyperterminal friendly (denne) og MCU for den mikrokontrollervennlige versjonen. Vi er bare opptatt av den hyperterminal -vennlige versjonen for denne instruerbare. Lagre det nye bildet ditt et sted og navngi det FTRFB. FTD. Du må kanskje endre filtypen i rullegardinmenyen for å lagre en FTD -fil. En ROM -fil vil ikke fungere for denne instruerbare siden den ikke kan blinker fra USB -stasjonen. Nå kan du kopiere FTRFB. FTD -filen du nettopp opprettet til rotmappen til flash -stasjonen du planlegger å bruke. Alternativt kan du gi den opprinnelige filen noe som vil hjelpe deg med å identifisere den senere, og deretter gi den bare nytt navn til FTRFB. FTD etter å ha kopiert den til flash -stasjonen. Den MÅ ha dette filnavnet, ellers vil ikke bootloader gjenkjenne det og omprogrammere seg selv.

Trinn 3: Bli tilkoblet

Bli tilkoblet
Bli tilkoblet

Det første trinnet er å koble VMUSIC -modulen til 5V og jord. Se bildet nedenfor for pinout. Etter at du har slått på VMUSIC2, sett inn USB -stasjonen med FTRB. FTD -filen på. Du bør se lampene blinke. Det vil ta omtrent 20-30 sekunder å programmere den nye fastvaren. Ikke ta ut strømmen mens den blinker, eller du må gå den dyrere og kompliserte ruten jeg gikk gjennom (eller verre - du mister oppstartslasteren helt.) Lyset skal lyse RØDT et sekund eller to og deretter holde seg jevn grønt når blinkingen er fullført. Ikke vær utålmodig. Det vil være ganske åpenbart mens det programmerer. Normalt er det ingen aktivitetslampe på USB -flash -stasjonen ved oppstart. Lysene blir gale mens de programmerer og verifiserer. Koble fra 5V fra VMUSIC -modulen. Du er nå klar til å koble resten av signalene til og begynne å snakke med den med hyperterminal. Det er her en haug med informasjon er uklar i dokumentasjonen. Først og fremst er VMUSIC2 UART -grensesnittet 3.3V logikk. Du trenger en type omformer for tilkoblingen. Jeg kommer ikke til å gå så mye i detalj om hvordan du gjør dette, fordi det er mange alternativer. En av de enkleste er å kjøpe en Nokia DKU-5 datakabel for mobiltelefoner og endre den ved å kutte av Nokia-kontakten. Denne kabelen er en USB til RS232-TTL3.3v kabel basert på FT232R. Det er ingen CTS- eller RTS -håndtrykkssignaler i denne kabelen, noe som er en av grunnene til at vi endret fastvaren for ingen strømningskontroll. Det er flere artikler på internett som forteller deg hvordan du endrer denne kabelen, og den er nyttig for mange formål. Det spiller ingen rolle hvilken omformer du bruker så lenge den er designet for 3.3V TTL, ikke 5V. Forbered deg på neste trinn ved å kontrollere at du har installert driverne for omformeren (hvis USB.) Den skal vises i enhetsbehandling. Noter COM -porten som er tilordnet den. Hvis nok folk har et problem med dette trinnet, vil jeg lage en egen instruerbar basert på nokia -kabelen. Men denne kabelen er ekstremt populær i mange modding -miljøer, og moden er ganske godt dokumentert. Jeg bruker en annen (dyrere) omformer akkurat nå og har ikke tilgang til min nokia cable minibank, ellers ville jeg legge den til her. OPPDATERING: Fant en god artikkel som forklarer forskjellige alternativer og kilder til billige kabler. Jeg vet ikke hvordan jeg savnet det, men TTL-232R-3V3 fra FTDI er praktisk talt laget for dette formålet. Sjekk denne koblingen for andre alternativer (du kan til og med ha noe liggende) Før du kobler noe annet til VMUSIC2, må du kontrollere at strømmen ikke er tilkoblet. Koble RXD på omformeren til TXD på VMUSIC2 Koble TXD på din omformer til RXD på VMUSIC2 Koble GROUND på omformeren til GROUND på VMUSIC2Connect CTS på VMUSIC2 til GROUND (Dette er ikke valgfritt. Du vil kunne sende kommandoer, men du vil ikke motta svar hvis du ikke kobler dette til signal til bakken.) RTS kan stå frakoblet. RI er frakoblet. Nå ville det være et godt tidspunkt å laste opp flash -stasjonen med noen MP3 -er (jeg omdøpte min til 1.mp3, 2.mp3, osv … for å gjøre det lettere) og også slette FTRFB. FTD -fil fra flash -stasjonen. Fastvaren kan bare lese DOS -filnavn. Dette betyr 8 tegn for filnavnet og 3 for utvidelsen. Jeg tror du kan slutte med utvidelsen og bare bruke alle elleve tegnene til et filnavn, men det kan bryte i fremtidig fastvare, så jeg anbefaler ikke det. La 5V -linjen være frakoblet. Vi vil koble den til igjen i neste trinn. Jeg vil ta noen siste notater om denne delen bare for å gjøre den fullstendig, da den ikke vil være relevant i fremtidige trinn: Hvis du har en omformer som er i stand til RTS/CTS -flyt kontroll, er dette faktisk foretrukket. Hvis du noen gang trenger å laste inn fastvaren på den harde måten, er dette absolutt nødvendig. Oppstartslasteren støtter bare denne modusen. Det er imidlertid to grunner til at vi har slått av dette. Den første er at de fleste kommer til å finne billige kabler som ikke støtter dette, og å programmere en mikrokontroller for å håndtere RTS/CTS flytkontroll er litt mer kompleks og krever mer IO og programvare overhead. De fleste biblioteker støtter det ikke, så det er bare å slå det av. Hvis du får problemer med å blinke fastvaren din, trenger du imidlertid en RTS/CTS -kompatibel seriekonverter for å gjenopprette den. For å bruke RTS/CTS flytkontroll, bytt de to signalene mellom enheter. Dette betyr at RTS på omformeren skal kobles til CTS på VMUSIC2 -modulen, og omvendt. Til slutt er RI ringindikator, som kan pinges for å vekke VMUSIC2 -modulen ut av standby. Vi kommer ikke til å bruke det her, og det brukes ikke i fastvaregjenoppretting. Bare la det være uten sammenheng. Pinout av VMUSIC2:

Trinn 4: Begynn å snakke

Start hyperterminal eller hvilket som helst seriekommunikasjonsprogram du liker, og opprett en tilkobling på comporten på omformeren din med disse innstillingene: 9600 Baud Rate8 Data Bits1 Stop BitNo parity No Handshake or Flow Control Du vil kanskje også slå på lokalt ekko slik at du ser hva du skriver. VMUSIC-modulen gir ikke eksternt eko. Når du har opprettet en tilkobling, kobler du til 5V på VMUSIC. Du bør se en melding som ser omtrent slik ut: Ver 03.64-COMVMSC1F Online: Ingen disk Ingen oppgradering Sett inn blitsen din stasjon, og den skal rapportere at en enhet er oppdaget på port 2 (P2) og gi deg en D: \> melding som indikerer at den nå er klar til å godta kommandoer!

Trinn 5: TODO: Kommandoer for fastvare

Dette kommer til å bli ganske langt, så vil bli oppdatert etter hvert som jeg har tid. Her er noen raske kommandoer du kan prøve: DIR (Lister filene i den nåværende mappen) CD (endrer gjeldende katalog) VPF p (legger MP3 -filen) VP (pause og fortsett) VST (stopper avspilling) V3A (Spill av alle filer i gjeldende katalog) VF (hopper til neste spor) VB (hopper til forrige spor) VSV (angir volumet. Gyldige verdier er mellom $ 00 maks volum og $ FE min volum - det er hex. Det er 0 til 254 desimaler. Det står ikke det, men jeg vedder på at $ FF er rett og slett MUTE.) Sjekk ut Vinculum -nettstedet og last ned Vinculum Firmware User Manual. Denne håndboken dekker flere forskjellige firmwares. Det er godt lagt ut som en referanse hvis du allerede er klar over noen få ting. Først og fremst er de fleste fastvaresortene basert på den generiske VDAP -fastvaren, og spesielle firmwares utvider det ganske enkelt. VMUSIC2 bruker fastvare for VMSC, som gir kommandoer som er spesifikke for MP3 -avspilling og kommunikasjon med VS1003. Avsnitt 6.8 i fastvarehåndboken er spesifikk for VMSC -fastvaren. Dette er delen du vil være mest interessert i. Seksjonene 6.0 til 6.8 er universelle kommandoer, hovedsakelig for disktilgang, filtilgang og vedlikehold. Det er også noen biter av informasjon om bruk av andre eksterne enheter i USB -porten, for eksempel skrivere, HID -enheter osv. Tabell 3.1 viser de forskjellige enhetsklassene som støttes av hver fastvare. Bare port2 er koblet til vinculum, så begrens utforskningen din til den havnen. Det bør bemerkes her at å koble datamaskinen til USB -porten på VMUSIC kan føre til skade på enten VMUSIC2, PCen eller begge deler. Maskinvaren i VMUSIC støtter ikke dette, selv om VNC1L -brikken gjør det. VMUSIC -modulen bør også kunne støtte omtrent hvilken som helst USB -masselagringsenhet. Jeg har bare prøvd det så langt med en USB -flash -stasjon, men i henhold til håndboken skal det fungere med USB -harddisker, kameraer (i masselagringsmodus), kortlesere osv … Det er imidlertid noen begrensninger. Disse er forklart i fastvarehåndboken. Den støtter FAT12, FAT16 og FAT32, men FAT32 lange filnavn støttes ikke. Sektorstørrelsen må være 512; forskjellige klyngestørrelser ser ut til å fungere fint. Jeg testet dette med en 8 GB USB -disk uten problemer, men noen av kommandoene sender ikke ut riktige verdier når stasjonen er større enn 4 GB. For tiden er vi hovedsakelig opptatt av de VMSC -spesifikke kommandoene, så vel som noen få av VDAP kommandoer (for å navigere i filsystemet.) Igjen, jeg kommer til å gå tilbake til denne delen for å få en oversikt over alt dette. Men du har nå nok informasjon til å begynne å leke med modulen din. Jeg ville i utgangspunktet skrive inn brukerhåndboken uansett, da det er ganske klart når du vet hvor du skal lete. Jeg har lykkes med å lage en tekstfil i formatet til en INI -fil, sette inn data i de separate seksjonene, og deretter lese den tilbake en seksjon om gangen, kun ved bruk av hyperterminal. Det er veldig enkelt, og jeg vedder på at du vil finne ut av alt før jeg oppdaterer dette! Ha det gøy!

Anbefalt: