Mp3-spelare...

Berätta om dina pågående projekt.
Användarvisningsbild
Melker
Inlägg: 410
Blev medlem: 26 maj 2003, 22:17:34
Ort: Umeå

Fler framsteg...

Inlägg av Melker »

"Filhanteraren" fungerar nu finnt... Kan bläddra igenom alla filer och mappar på hårddisken utan problem (vad jag märkt hittills iaf, finns säkert några mindre buggar). Har även idag grejat så att den kan läsa långa filnamn (Liten förklaring: Korta filnamn består av en "Direntry" som är av 32bytes varav filnamnet 11bytes, i ett långt filnamn är namet 13bytes av dessa 32 och sträcker sig över flera "Direntries"), låter kanske simpelt men jag fick klura ett bra tag på det... har nog suttit ca 3-4 timmar idag bara med det, men det då gav bra resultat också tillslut.
Nu väntar jag bara på att få lite grejer till min UV-box så jag kan etsa mig ett kretskort där Mp3-decodern kan lödas fast tillsammans med de övriga komponenterna. Jag hoppas kunna få höra musik från den inom de närmsta 3-4veckorna.
Användarvisningsbild
lord_dubbdäck
Inlägg: 207
Blev medlem: 11 juni 2003, 20:00:18
Ort: Älvkarleby
Kontakt:

Inlägg av lord_dubbdäck »

Fan vad jag är avundsjuk.

Om jag bara hade hälften av din skicklighet och ditt tålamod skulle vara lycklig.

Underbart projekt! :)
Användarvisningsbild
Melker
Inlägg: 410
Blev medlem: 26 maj 2003, 22:17:34
Ort: Umeå

Inlägg av Melker »

Haha...
Du överskattar mig... Är nog varken skickligare eller har mera tålamod än någon annan här.
Men tack för din/era peppande kommentarer :)
Användarvisningsbild
RDX*
EF Sponsor
Inlägg: 1646
Blev medlem: 28 maj 2003, 22:52:04
Ort: Skåne - Lund

Inlägg av RDX* »

Jag surfa förbi AVRfreaks och såg ett projekt som du kan vara intresserad av.
Jag vet inte om du har sett det men det hette "The MP3cube" id#0168.

Kod: Markera allt

Key Features     
Processor:         ATmega128(16MHz)
Decoder:           VS1001K
Storage Medium:   2.5" IDE Harddisk
File format:        Windows FAT16/32 filesystem, long file names
User Interface:   4 x 20 character display (standard LCD or VFD)
3 pushbuttons
rotary encoder
Programming Language: E-Lab Pascal 
Mechanical dimensions:  120x60x160mm (w/h/d) 
The MP3cube
Användarvisningsbild
Melker
Inlägg: 410
Blev medlem: 26 maj 2003, 22:17:34
Ort: Umeå

Inlägg av Melker »

Dags att uppdatera nu...
Har nu jobbat på spelaren under hela veckan till och från och äntligen har det gett resultat för ut ur hörlurarna strömmar det nu MUSIK!!! :D :D :D
Hade lite problem med att få Mp3-decodern(VS1001) att fungera, men igår kväll/natt vid 2-tiden så fick jag till det.. Hade bara missat att ansluta ett par pinnar på den. Nu ska mjukvaran bara fixas till en del, så man får lite låtinfo, volymkontroll och sånnt nyttigt på displayen medans man spelar.
Hårddisken får tyvär tugga ganska mycket när man bara läser in en sector i taget och en Massa sectorer i sekunden, så den ger ifrån sig ett lite störande ljud, iof en ganska gammal HD så beror kanske lite på det också, men ska se om det går att göra det lite bättre på något vis.

Och nej, jag har inga bilder på den än *skäms lite* :(
Användarvisningsbild
erixon
Inlägg: 380
Blev medlem: 27 augusti 2003, 10:21:58

Inlägg av erixon »

Ska bli roligt att få se några bilder på bygget :)
Användarvisningsbild
lord_dubbdäck
Inlägg: 207
Blev medlem: 11 juni 2003, 20:00:18
Ort: Älvkarleby
Kontakt:

Inlägg av lord_dubbdäck »

Ett sånt här projekt utan bilder borde förbjudas... NU VILL VI HA BILDER! Eller, i alla fall jag! :)
henkebenke
Inlägg: 515
Blev medlem: 31 maj 2003, 10:42:37
Ort: Helsingborg

Inlägg av henkebenke »

Hur funkar hårddiskinterfacet egentligen? Finns det ingen möjlighet att använda cacheminnet i hårddisken så att den läser många sektorer i taget och att man sen läser sektor för sektor från cacheminnet.
Användarvisningsbild
Melker
Inlägg: 410
Blev medlem: 26 maj 2003, 22:17:34
Ort: Umeå

Inlägg av Melker »

Jo, det låter som en ganska bra ide, tror man ska kunna läsa från cacheminnet i hårddisken, men jag vet inte om det rymmer så mycket mer än en sektor, ska kolla upp det.

Jag har nu lite problem med att läsa in flera sektorer på rad, så jag har bara löst det genom att helt enkelt läsa dom var och för sig och detta tar upp en hel del onödig tid, så för tillfället kan jag bara spela upp låtar med en bitrate på <128Kb (eller går säkert upp till kring 160, men 192hackar på ganska illa), sedan hinner inte HDD<->MCU inte med längre. Är ganska säker på att jag i början av detta projekt(när jag skrev i assambler) utan problem kunde läsa in flera sektorer på rad genom att bara behandla dom som en sektor, skrev vilken första sector som skulle läsas och hur många sectorer, sedan var det bara att ladda på, men nu vägrar det fungera... Får ta en tillbakablick på det och se om jag missat något... Finns även något kommando som heter Read Multipe för ATA, som är typ gjort för att läsa flera sectorer i följd, men jag har inte hunnit kika så mycket på det än, ska göra det imorrn tror jag..
ZZzznark...
Användarvisningsbild
karlstedt
EF Sponsor
Inlägg: 966
Blev medlem: 14 oktober 2003, 16:55:23
Ort: Lund
Kontakt:

Inlägg av karlstedt »

Hårddiskar har ju cacheminnen i storleksordningen MB.
8 MB brukar vara en vanlig siffra.

(Har inte läst igen hela tråden så detta kan vara orelevant svammel)
Användarvisningsbild
Melker
Inlägg: 410
Blev medlem: 26 maj 2003, 22:17:34
Ort: Umeå

Inlägg av Melker »

Hehe... Det stämmer nog... Läste att den jag använder har typ 128KB, sedan är frågan om det går att använda på något smidigt vis...
Det finns ett kommando som heter Read Buffer, men jag vet inte när det som hamnar i buffern hamnar där eller vad som hamnar där. Om en sector hamnar i bufferten medans man läser den så är det ju inte till så stor nytta, kunde man däremot säga åt HDn att läsa X sektorer till Bufferten och sedan läsa från bufferten så kan det kanske vara till nytta, någon som vet hur HD-cachen fungerar?
Användarvisningsbild
karlstedt
EF Sponsor
Inlägg: 966
Blev medlem: 14 oktober 2003, 16:55:23
Ort: Lund
Kontakt:

Inlägg av karlstedt »

I cachen ska systemet lagra den data som kommer att användas mycket och ofta. Systemet ska alltså "gissa" vilket data som kommer att efterfrågas. Med dagens algoritmer för detta så har vi 90% träffar i cachen.

Som du/ni kanske redan vet är ju cachen avsevärt mycket snabbare än om man måste göra en hdd-access.

Cache används för att öka processoranvändningen i ett system pga av att nuförtiden är det inte processorn som inte hinner med utan det är I/O-enheterna.

Säg till om något verkar oklart :wink:
Användarvisningsbild
Melker
Inlägg: 410
Blev medlem: 26 maj 2003, 22:17:34
Ort: Umeå

Inlägg av Melker »

Okej... Så med andra ord så går det inte att använda den som man vill, utan den gör som den tror man vill, typ?
danei
EF Sponsor
Inlägg: 26423
Blev medlem: 2 juni 2003, 14:21:34
Ort: Östergötland
Kontakt:

Inlägg av danei »

Han syftade nog på den vanliga CPU cachen. Jag är inte så säker på att HD-ns cach funkar på samma sätt. Det kan nog vara värt att kolla upp.
Användarvisningsbild
karlstedt
EF Sponsor
Inlägg: 966
Blev medlem: 14 oktober 2003, 16:55:23
Ort: Lund
Kontakt:

Inlägg av karlstedt »

Cache i allmänhet är ju en kopia på ett långsammare minne för att snabbt kunna levera data.

En access på hårdisken tar ca 10ms och det är tidsmässigt ohållbart om man ska ha ett snabbt system. Då spelar det ingen roll om man har 2GB i RAM och en processor som klockas med 5 GHz.
Systemet kommer bara få stå och idla medans hdd'n jobbar.
Skriv svar