TARDIS bokhylla med ljud och ljus (6 / 8 steg)
Steg 6: Programmera Arduino och gränssnitt Elechouse MP3 sköld
Koppla in Mp3 skölden i Arduino(or equivlent). Om du redan har en arduino Uno ställa in på datorn, bara koppla en i och installera det som den sista och sedan hoppa i nästa avsnitt.
Anslut sedan Arduino till din dator. Efter kontrollen system för maskinvara kommer upp, stänga den.
Följ denna länk och denna länk till Arduino webbplats och följ deras instruktioner på hur till installera den.
Installera den MP3 skölden bibliotek från denna länk.
Öppna den Arduino IDE och kopiera och klistra in denna kod:
#
CONST int bswitchPin = 2;
CONST int sswitchPin = 4;
CONST int lightPin = 3;
CONST int llightPin = 5;
CONST int checkPin = 6;
CONST int checkinPin = 7.
unsigned char cmd_buf [10].
unsigned char i.
void ArduinoMP3Shield_SendCMD (unsigned char * cmd_buf, osignerade len)
{
osignerade i.
för (jag = 0; i Serial.write(cmd_buf[i]);
}
}
void setup(void)
{
pinMode (bswitchPin, ingång);
pinMode (sswitchPin, ingång);
pinMode (lightPin, produktionen);
pinMode (checkPin, produktionen);
pinMode (checkinPin, ingång);
Delay(1000);
}
void loop(void)
{
IF(digitalRead(bswitchPin) == hög & & digitalRead(checkinPin) == låg)
{
digitalWrite (lightPin, hög);
digitalWrite (checkPin, hög);
Serial.BEGIN(9600);
/ ** Ange volym * /
cmd_buf [0] = 0x7E; START
cmd_buf [1] = 0x03; Längd
cmd_buf [2] = 0xA7; Kommandot
cmd_buf [3] = 0x26; ny volym
cmd_buf [4] = 0x7E; SLUTET
ArduinoMP3Shield_SendCMD (cmd_buf, 5);
/ ** set spela läge repetera alla * /
cmd_buf [0] = 0x7E; START
cmd_buf [1] = 0x03; Längd
cmd_buf [2] = 0xA9; Kommandot SET MODE
cmd_buf [3] = 0x00; inställda läge
cmd_buf [4] = 0x7E; SLUTET
ArduinoMP3Shield_SendCMD (cmd_buf, 5);
/ ** Välj SD kort första musik och spela * /
cmd_buf [0] = 0x7E; START
cmd_buf [1] = 0x04; Längd
cmd_buf [2] = 0xA0; Kommandot
cmd_buf [3] = 0x00; Fil nummer övre byte
cmd_buf [4] = 0x01; Fil nummer låg byte
cmd_buf [5] = 0x7E; SLUTET
ArduinoMP3Shield_SendCMD (cmd_buf, 6);
}
annat
{
IF(digitalRead(bswitchPin) == låg & & digitalRead(checkinPin) == hög)
{
digitalWrite (lightPin, hög);
digitalWrite (checkPin, hög);
Serial.BEGIN(9600);
/ ** Ange volym * /
cmd_buf [0] = 0x7E; START
cmd_buf [1] = 0x03; Längd
cmd_buf [2] = 0xA7; Kommandot
cmd_buf [3] = 0x26; ny volym
cmd_buf [4] = 0x7E; SLUTET
ArduinoMP3Shield_SendCMD (cmd_buf, 5);
/ ** set spela läge repetera alla * /
cmd_buf [0] = 0x7E; START
cmd_buf [1] = 0x03; Längd
cmd_buf [2] = 0xA9; Kommandot SET MODE
cmd_buf [3] = 0x00; inställda läge
cmd_buf [4] = 0x7E; SLUTET
ArduinoMP3Shield_SendCMD (cmd_buf, 5);
/ ** Välj SD kort första musik och spela * /
cmd_buf [0] = 0x7E; START
cmd_buf [1] = 0x04; Längd
cmd_buf [2] = 0xA0; Kommandot
cmd_buf [3] = 0x00; Fil nummer övre byte
cmd_buf [4] = 0x02; Fil nummer låg byte
cmd_buf [5] = 0x7E; SLUTET
ArduinoMP3Shield_SendCMD (cmd_buf, 6);
Delay(25000);
digitalWrite (lightPin, låg);
digitalWrite (checkPin, låg);
}
annat
{
}
}
IF(digitalRead(sswitchPin) == hög)
{
digitalWrite (llightPin, hög);
}
annat
{
digitalWrite (llightPin, låg);
}
}
#
Sedan se till att rätt COM-porten är markerat och ladda upp skissen.
Koppla bort strömmen när lamporna på arduino slutar blinka och få ditt SD-kort (om du har en bärbar dator med en inbyggd port du bra att gå men om du inte, du behöver en adapter av något slag).
Kopiera och klistra in tre filerna till en fil.
Om du vill ha olika ljudfiler, sedan spara dessa filer (Doctor Who signaturmelodi (sparas som 0000-doctorwhotheme), och de försvinner ljud (sparas som 0001-takeoffsounds(make sure the prefix ###-is in that form(###-))) to the SD card (you will have to download these sounds in mp3 format or you will need to convert them to mp3 format*).
(Göra säker du spara alla filer till en mapp innan du kopierar till SD-kortet)
Kopiera sedan filerna till SD-kortet på en gång.
Koppla in kortet i MP3 sköld (utan adapter).
Sedan håller du ned knappen Kopiera på skölden och Anslut arduino till datorn.
Håll ner knappen tills lampan på skölden börjar blinka,
När det slutar, testa den med en av knapparna, ett par hörlurar och en LED från stift 4 till marken stift (krok knappen upp som det är i schematiskt).
Håll knappen i ett par sekunder tills systemet befogenheter och sedan släppa knappen, signaturmelodi bör spela. Om det fungerar, bör tryck och håll knappen igen och starten buller spela. Om något inte fungerar, se över ditt ledningar och om inget verkar vara fel kontakta mig genom att lämna en kommentar.
Filen Tardis.sch är en schematisk som kan läsas med ExpressSCH (accomponies ExpressPCB programmet (länk till hemsida; Hämta)
* Här är handboken för shield.