Innehållsförteckning:

Komma igång med VMUSIC2: 5 steg
Komma igång med VMUSIC2: 5 steg

Video: Komma igång med VMUSIC2: 5 steg

Video: Komma igång med VMUSIC2: 5 steg
Video: Komma igång med Claris-plattformen (SV) 2024, November
Anonim
Komma igång med VMUSIC2
Komma igång med VMUSIC2

VMUSIC2 är en komplett MP3 -spelarmodul från FTDI, Inc. som gör det enkelt att integrera MP3 -funktioner i ditt nästa mikrokontrollerprojekt. Den har två gränssnitt: SPI eller UART (seriell)

Några exempelapplikationer: 1. Få din robot att prata och spela ljudeffekter baserat på något tillstånd eller utlösare 2. Lägg till ljud till dina modeller och dioramor; Ge ditt verk lite interaktivitet eller historia 3. Interaktiva konstinstallationer 4. Krydda din flipperspel eller annan arkadmaskin 5. Använd modulen för att ladda ett skript från en flash -enhet som definierar en animation, till exempel att spela upp en ljudfil medan du utför några mekanisk rutin som används i animatronik. Speltiden matas ut i sekunder som kan användas för (rå) synkronisering (TIPS: Den här sista är vad jag har planerat för en senare instruerbar) Dokumentationen från FTDI som beskriver hur man använder den här modulen är inte särskilt bra utformad och jag hade lite problem med att komma igång med min. När jag letade efter information har jag sett många inlägg i olika forum från människor som också har problem med att komma igång, så efter att äntligen ha kommit igång bestämde jag mig för att skapa det här instruerbart för att hjälpa andra. Detta instruerbara kommer att omfatta att ansluta och styra din VMUSIC2 -modul från hyperterminal. Jag rekommenderar att du börjar på det här sättet eftersom det gör att du kan bekanta dig med kommandona och få en känsla för hur det fungerar innan du ansluter det till din mikrokontroller. Jag kommer att följa upp med en annan instruerbar om att styra den från en mikrokontroller.

Steg 1: Introduktion till VMUSIC2 -modulen

Introduktion till VMUSIC2 -modulen
Introduktion till VMUSIC2 -modulen
Introduktion till VMUSIC2 -modulen
Introduktion till VMUSIC2 -modulen

VMUSIC2 -modulen är baserad på Vinculum VNC1L USB Host controller från FTDI och VS1003 MP3 encoder/decoder från VLSI. Med VMUSIC2 kan du ansluta ett USB -minne fylld med MP3 -filer och spela dem från din mikrokontroller. Den här modulen är billig och levereras i ett hölje som enkelt kan monteras i en panelavstängning för att ge ditt projekt ett professionellt utseende. fördelen med att använda den här modulen är att den bara kräver några få stift för att styra den, och programvaruomkostnaderna är mycket små. Detta gör att din mikrokontroller kan fokusera på resten av ditt projekt (övervakningsomkopplare, etc …) medan MP3 spelas. Det betyder också att du kan komma undan med att använda mikrokontroller med mindre programminne och färre I/O. En annan fördel är att du inte behöver veta något om programmering för FAT32, USB -värd eller MP3. Medan VMUSIC2 -modulen är utformad för uppspelning av MP3 -filer kan USB -värdgränssnittet också användas för åtkomst (både läsning och skrivning) alla filer på flash -enheten. När jag kommer till instruktionsboken där jag ansluter detta till en mikrokontroller kommer det att vara uppenbart hur användbart detta är. Du kommer att behöva följande för att slutföra denna instruerbara:*VMUSIC2-modul från FTDI.*RS232 till RS232-TTL-3.3 v -omvandlare (om du ansluter den här modulen direkt till datorns seriella port riskerar du att skada den. Se steg 3 för ett förslag)*5V strömförsörjning*En dator med hyperterminal (ingår i Windows) eller något annat terminalprogram Har du allt? Bra, låt oss ta en titt på modulen:

Steg 2: Programmering av firmware

Programmering av firmware
Programmering av firmware
Programmering av firmware
Programmering av firmware
Programmering av firmware
Programmering av firmware

Jag beställde min VMUSIC2 -modul direkt från FTDI. Den största källan till min frustration var att jag upptäckte att min modul inte hade någon fast programvara installerad. Självklart trodde jag att det var ett problem med mina anslutningar, så jag gick på jakt efter att försöka ta reda på vad jag gjorde för fel! Och jag insåg inte att jag kunde uppgradera firmware från USB -enheten, så jag slutade göra det på det hårda sättet. Denna instruerbara bör spara dig det. Standardprogramvaran är inte heller inställd för att vara vänlig mot hyperterminal. Så vi kommer att modifiera och uppdatera firmware. Först går du till Vinculum -webbplatsen och laddar ner den senaste Reflash -filen (FTD) där. Skaffa också VPROG Re-flash Utility (används inte i den här instruerbara men kan vara till hjälp om du har problem) och Firmware Customizer från avsnittet Program och verktyg längre ner på sidan. Starta upp firmware-anpassaren och ladda Reflash (FTD) fil som du laddade ner. Du kommer att se en sammanfattning av de programmerade alternativen i firmware. Klicka på nästa för att börja redigera firmware. (Jag har inkluderat skärmdumpar av de avsnitt som jag har ändrat) Detta är en sammanfattning av alternativen som jag valde: UART: 9600 baud, 8 bitar, No Parity, 1 Stop bit och No flow kontroll (det här är viktigt) IPA -läge och utökat kommandosätt Nu klickar du bara på nästa genom resten av alternativen. Du kommer att bli ombedd att få en unik identifierare med tre tecken för din anpassade firmware. Jag skapade två olika firmwares och använde dessa ID: n; COM för hyperterminal vänlig (den här) och MCU för den mikrokontroller vänliga versionen. Vi är bara bekymrade över den hyperterminalvänliga versionen för denna instruerbara. Spara nu din nya bild någonstans och namnge den FTRFB. FTD. Du kan behöva ändra filtyp i rullgardinsmenyn för att spara en FTD -fil. En ROM -fil fungerar inte för den här instruerbara filen eftersom den inte kan flashas från USB -enheten. Kopiera nu FTRFB. FTD -filen som du just skapade över till rotmappen på den flash -enhet du planerar att använda. Alternativt kan du namnge den ursprungliga filen något som hjälper dig att identifiera den senare och byt sedan bara namn på den till FTRFB. FTD efter att du har kopierat den till flash -enheten. Den MÅSTE ha detta filnamn eller så kommer bootloader inte att känna igen det och omprogrammera sig själv.

Steg 3: Bli ansluten

Bli ansluten
Bli ansluten

Det första steget är att ansluta VMUSIC -modulen till 5V och jord. Se bilden nedan för pinout. När du har startat VMUSIC2 sätter du i din USB -enhet med FTRB. FTD -filen på. Du bör se lamporna blinka. Det kommer att ta cirka 20-30 sekunder att programmera den nya firmware. Ta inte bort strömmen medan den blinkar eller du måste gå den dyrare och mer komplicerade vägen jag gick igenom (eller ännu värre - du tappar startladdaren helt.) Ljuset ska lysa RÖDT i en eller två sekunder och sedan hålla sig stadigt grönt när blinkningen är klar. Var inte otålig. Det kommer att vara ganska uppenbart medan det är programmering. Normalt är det ingen aktivitetslampa på USB -flashenheten vid start. Lamporna kommer att bli galen när den programmerar och verifierar. Koppla bort 5V från VMUSIC -modulen. Du är nu redo att koppla in resten av signalerna och börja prata med den med hyperterminal. Det är här en massa information är oklar i dokumentationen. Först och främst är VMUSIC2 UART -gränssnittet 3.3V logik. Du behöver någon typ av omvandlare för din anslutning. Jag tänker inte gå in för mycket på hur man gör detta, eftersom det finns många alternativ. En av de enklaste är att köpa en Nokia DKU-5 datakabel för mobiltelefoner och ändra den genom att klippa av Nokia-kontakten. Denna kabel är en USB till RS232-TTL3.3v-kabel baserad på FT232R. Det finns inga CTS- eller RTS -handskakningssignaler i den här kabeln, vilket är en av anledningarna till att vi modifierade firmware för ingen flödeskontroll. Det finns flera artiklar på internet som berättar hur du ändrar denna kabel och den är användbar för många ändamål. Det spelar ingen roll vilken omvandlare du använder så länge den är konstruerad för 3,3V TTL, inte 5V. Förbered dig på nästa steg genom att se till att du har installerat drivrutinerna för din omvandlare (om USB.) Det bör visas i enhetshanteraren. Anteckna COM -porten som tilldelats den. Om tillräckligt många har problem med det här steget kommer jag att skapa en separat instruerbar baserad på Nokia -kabeln. Men den här kabeln är extremt populär i många modding -samhällen och moden är ganska väl dokumenterad. Jag använder en annan (dyrare) omvandlare just nu och har inte tillgång till min Nokia -kabelautomat, annars skulle jag lägga till den här. UPPDATERING: Hittade en bra artikel som förklarar olika alternativ och källor till billiga kablar. Jag vet inte hur jag missade det, men TTL-232R-3V3 från FTDI är praktiskt taget gjord för detta ändamål. Kolla in den här länken för andra alternativ (du kan till och med ha något att ligga runt) Innan du ansluter något annat till VMUSIC2, kontrollera igen att strömmen inte är ansluten. Anslut RXD på din omvandlare till TXD på VMUSIC2 Anslut TXD på din omvandlare till RXD på VMUSIC2 Anslut GROUND på din omvandlare till GROUND på VMUSIC2Connect CTS på VMUSIC2 till GROUND (Detta är inte valfritt. Du kommer att kunna skicka kommandon, men du får inga svar om du inte ansluter detta signal till marken.) RTS kan lämnas frånkoppladRI lämnas frånkopplad Nu skulle det vara en bra tid att ladda upp flash -enheten med några MP3 -filer (jag bytte namn på min 1.mp3, 2.mp3, etc … för att göra det enklare) och även radera FTRFB. FTD -fil från flash -enheten. Firmware kan bara läsa DOS -filnamn. Det betyder 8 tecken för filnamnet och 3 för tillägget. Jag tror att du kan avbryta tillägget och bara använda alla elva tecknen för ett filnamn, men det kan bryta i framtida firmware, så jag rekommenderar det inte. Lämna 5V -linjen frånkopplad. Vi kommer att ansluta det igen i nästa steg. Jag vill göra några slutliga anteckningar om detta avsnitt bara för att göra det komplett, eftersom det inte kommer att vara relevant i framtida steg: Om du har en omvandlare som kan RTS/CTS -flöde kontroll, är detta faktiskt att föredra. Om du någonsin behöver ladda om firmware på det hårda sättet är detta absolut nödvändigt. Bootloader stöder bara det här läget. Det finns dock två anledningar till att vi stängde av det här. Det första är att de flesta människor kommer att hitta billiga kablar som inte stöder detta, och att programmera en mikrokontroller för att hantera RTS/CTS flödeskontroll är lite mer komplex och kräver mer IO och mjukvara. De flesta bibliotek stöder det inte, så det är bara att stänga av det. Om du får problem med att blinka din fasta programvara behöver du dock en RTS/CTS -kompatibel seriekonverterare för att återställa den. För att använda RTS/CTS flödeskontroll, byt de två signalerna mellan enheter. Det betyder att RTS på omvandlaren ska vara ansluten till CTS på VMUSIC2 -modulen och vice versa. Slutligen är RI ringindikator, som kan pingas för att väcka VMUSIC2 -modulen ur vänteläge. Vi kommer inte att använda det här och det används inte för återställning av firmware. Bara lämna den oansluten. Pinout av VMUSIC2:

Steg 4: Börja prata

Starta hyperterminal eller vilket seriekommunikationsprogram du vill och skapa en anslutning på comporten på din omvandlare med dessa inställningar: 9600 Baud Rate8 Databits1 Stopp BitNo parityNo Handshake eller Flow Control Du kanske också vill slå på lokalt eko så att du ser vad du skriver. VMUSIC-modulen tillhandahåller inte fjärreko. När du har upprättat en anslutning ansluter du 5V på VMUSIC. Du bör se en prompt som ser ungefär ut så här: Ver 03.64-COMVMSC1F On-Line: Ingen disk Ingen uppgradering Sätt nu in din blixt enhet, och den ska rapportera att en enhet upptäcks på Port 2 (P2) och ge dig en D: \> prompt som indikerar att den nu är redo att acceptera kommandon!

Steg 5: TODO: Firmware -kommandon

Detta kommer att bli ganska långt, så kommer att uppdateras när jag har tid. Här är några snabba kommandon att prova: DIR (listar filerna i den aktuella mappen) CD (ändrar den aktuella katalogen) VPF p (lägger MP3 -filen) VP (pausa och återuppta) VST (stoppar uppspelning) V3A (Spela alla filer i nuvarande katalog) VF (Hoppar till nästa spår) VB (Hoppar till föregående spår) VSV (ställer in volymen. Giltiga värden ligger mellan $ 00 max volym och $ FE min volym - det är hex. Det är 0 till 254 decimaler. Det står inte det, men jag slår vad om att $ FF är helt enkelt MUTE.) Nu, kolla in Vinculums webbplats och ladda ner Vinculum Firmware User Manual. Den här manualen täcker flera olika firmwares. Det läggs bra ut som en referens om du redan är medveten om några saker. Först och främst är de flesta firmware -varianter baserade på den generiska VDAP -firmware, och speciella firmwares omfattar helt enkelt det. VMUSIC2 använder VMSC -firmware, som ger kommandon specifika för MP3 -uppspelning och kommunikation med VS1003. Avsnitt 6.8 i firmwarehandboken är specifik för VMSC -firmware. Det här är det avsnitt du kommer att vara mest intresserad av. Avsnitten 6.0 till 6.8 är universella kommandon, mestadels för hårddiskåtkomst, filåtkomst och underhåll. Det finns också lite information om hur du använder andra kringutrustning i USB -porten, till exempel skrivare, HID -enheter, etc… Tabell 3.1 listar de olika enhetsklasser som stöds av varje fast programvara. Endast port2 är ansluten på vinculum, så begränsa din undersökning till den hamnen. Det bör noteras här att om du ansluter din dator till USB -porten på VMUSIC kan det skada antingen VMUSIC2, din dator eller båda. Hårdvaran i VMUSIC stöder inte detta, även om VNC1L -chipet gör det. VMUSIC -modulen bör också kunna stödja nästan alla USB -masslagringsenheter. Jag har bara provat det hittills med ett USB -minne, men enligt manualen ska det fungera med USB -hårddiskar, kameror (i masslagringsläge), kortläsare osv … Det finns dock vissa begränsningar. Dessa förklaras i firmware -användarhandboken. De stöder FAT12, FAT16 och FAT32, men FAT32 långa filnamn stöds inte. Sektorstorleken måste vara 512; olika klusterstorlekar verkar fungera bra. Jag testade detta med en 8 GB USB -disk utan problem, men några av kommandona kommer inte att mata ut korrekta värden när enheten är större än 4 GB. Just nu är vi främst bekymrade över VMSC -specifika kommandon samt några av VDAP kommandon (för att navigera i filsystemet.) Återigen, jag kommer att återkomma till det här avsnittet för att få lite förståelse för allt detta. Men du har nu tillräckligt med information för att börja leka med din modul. Jag skulle i princip skriva in bruksanvisningen i alla fall, eftersom det är ganska klart när du vet var du ska leta. Jag har framgångsrikt skapat en textfil i formatet för en INI -fil, infogat data i de separata sektionerna och sedan läst tillbaka den en sektion i taget, alla endast med hjälp av hyperterminal. Det är väldigt enkelt och jag slår vad om att du kommer att ta reda på allt innan jag ens uppdaterar detta! Ha kul!

Rekommenderad: