' ' DFplayer mini ' #picaxe 08m2 #no_data ' ' Pins ' symbol txpin=2 ' ' constants ' symbol TXBAUD=T9600_8 ' ' variables ' symbol buffirst=27 'command buffer first byte symbol ver=b27 symbol len=b26 symbol cmd=b25 symbol feedback=b24 symbol para1=b23 symbol para2=b22 symbol param16=w11 symbol buffchks=21 'command bufer last byte for chksum calc symbol chksumhi=b21 symbol chksumlo=b20 symbol chksum16=w10 symbol buflast=19 'command buffer last byte Init: ver=$FF 'Tyto hodnoty nastavíme jednou, nebudeme je během programu měnit len=$06 feedback=$00 setfreq m8 'Hodinový kmitočet 8MHz abychom mohli používat 9600Bd pause 8000 'Po náběhu napájení počkáme 4s Main: 'Zdroj dat microSD karta cmd=$09 param16=$0002 gosub CmdOut pause 200 'přehrávání souborů v kořenovém adresáři 'přehraj prvních 10 souborů cmd=$03 for param16=1 to 10 gosub Cmdout pause 4000 'počkáme 2s před spuštěním dalšího souboru next param16 'přehrávání souborů v adresáři /MP3 'přehraj soubory /MP3/0001.mp3 až /MP3/0015.mp3 cmd=$12 for param16=1 to 15 gosub CmdOut pause 6000 'počkáme 3s před spuštěním dalšího souboru next param16 'přehrávání souborů v adresáři /01 'přehraj soubory /01/001.mp3 až /MP3/010.mp3 cmd=$0F para1=1 for para2=1 to 10 gosub CmdOut pause 4000 'počkáme 2s před spuštěním dalšího souboru next para2 end CmdOut: 'Spočítáme kontrolní součet chksum16=0 bptr=buffirst do chksum16=chksum16-@bptrdec loop while bptr>buffchks 'Odešleme data bptr=buffirst serout txpin,TXBAUD,($7E, @bptrdec, @bptrdec, @bptrdec, @bptrdec, @bptrdec, @bptrdec, @bptrdec, @bptrdec, $EF) return