mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik MP3 Player Schaltplan zum Review


Autor: Thomas Burkhart (escamoteur)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Hi,

im Anhang findet Ihr den Schaltplan für meinen geplanten MP3 Player mit
dem VS1011.

Schaut doch bitte mal, ob ich irgendwo eien Schnitzer reingebaut habe.

Das Muxen bei der SD-Karte ist notwendig, weil später ein zweiter AVR
der das gesamte System kooridiniert auch auf die SD-Karte zugreifen
soll.

Danke & Gruß

Tom

Autor: holger (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Du willst doch nicht ernsthaft die SD-Karte per
Software SPI ansprechen. Was für eine Verschwendung;)

Autor: Thomas Burkhart (escamoteur)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wieso? Ich denke, dass ich damit flexibler bin, als wenn ich SD + VS1011 
am selben Bus hängen habe.

Wieso Verschwendung? meinst Du CPU Power?

Gruß
Tom

Autor: ... (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
IC1 und IC7 an 5V anschließen.

Autor: Thomas Burkhart (escamoteur)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Dank Dir! Das ist mir vorhin beim Signalumbenennen passiert.

Gruß
Tom

Autor: ... (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Spannungsversorgung an dem SD-Karten-Slot direkt an den Slotbeinchen mit 
10µF und 0,1µF Kerkos abblocken.

Autor: Thomas Burkhart (escamoteur)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Oh, Mist, sonst hab ich dran gedacht. danke!

Hat es eigentlich eine bewandnis wieso mache leute 100nF, andere 0,1µ 
schreiben?

Gruß
Tom

Autor: holger (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
vsdatarequest ist nicht angeschlossen.

>Wieso Verschwendung? meinst Du CPU Power?

Ja. Dein ATMega läuft mit 8MHz. Mit Hardware SPI
könntest du die SD mit fast CPU/2 auslesen.
Per Pintoggle wird das wohl eher so bei 1MHz
oder noch weniger liegen. Wenn das mal reicht
um MP3 ohne zu ruckeln abzuspielen.

Autor: Thomas Burkhart (escamoteur)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Die 3 100nF paralell bei der Spannungsversorgung für den VS1011 hab ich 
aus dem Datenblatt so übernommen. Was für einen Sinn macht es hier 
eigentlich 3 getrennte Kondesatoren zu nehmen und nicht einfach einen 
330nF?

Gruß
Tom

Autor: holger (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>SD mit fast CPU/2 auslesen.

Das sollte natürlich FCPU heissen.
Mit ner halben CPU wirds eh nix ;)

Autor: ... (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
> Die 3x 100nF paralell bei der Spannungsversorgung für den VS1011 hab ich
> aus dem Datenblatt so übernommen.

Ja, da sind 3 x 100nF gezeichnet, weil die Versorgungsspannung dann auf 
3 Pins geht.
Bedeutet: jeder Pin bekommt direkt am entsprechenden IC-Pin einen 100nF 
spendiert. Der 10µF, der auch noch eingezeichnet ist, kommt in die 
Zuleitung der Spannungsversorgung. Natürlich in der Nähe des IC.

Autor: Thomas Burkhart (escamoteur)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ach so!Dann kann ich die da ja wieder rausnehmen.

Wie sehen es denn die anderen bezüglich des SoftSPI ? Wird das zu 
langsam?

Sonst muss ich halt doch nen 16Mhz und nen Pegelshifter nehmen. Ist 
vielleicht sicherer.

Gruß
Tom

Autor: ... (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Da du das SOIC28-Gehäuse benutzt, brauchen die Audi-Out-Ausgänge jeweils 
einen 100µF Auskoppel-Elko. Das SOIC28-Gehäuse hat keinen GBUF-Pin.

Autor: Thomas Burkhart (escamoteur)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Mit Koppelkondesator meinst Du doch einen Kondensator in Reihe 
geschaltet oder?

Ok, das mit den Kodensatoren kommt noch. Sind da wirklich 100µ notwendig 
wenn ich von dort nur an einen OPV gehe? Würden da nicht 2,2µ Folie 
reichen?

Im Datenblatt steht

If GBUF is not used, LEFT and RIGHT must be provided with 1-100 µF 
capacitors depending on load
resistance.

Gruß
Tom

Autor: ... (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
ok, wenn du da keinen Kopfhörer anschließen willst, kannst du auch 10µF 
Kerkos nehmen.

Autor: Micha (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>Hat es eigentlich eine bewandnis wieso mache leute 100nF, andere 0,1µ
>schreiben?
Hängt von den Vorlieben des einzelnen ab...

Autor: Stephan Henning (stephan-)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
die LED würde ich nach Vcc schalten

Autor: holger (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>die LED würde ich nach Vcc schalten

Warum? 8051 geschädigt?

Autor: Sebastian ... (zahlenfreak)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Würde auch Hard-SPI nehmen, ist sonst echt reinste Verschwendung. Wenn 
SD und VS am selben SPI hängen, kannst du sogar die Daten direkt von der 
SD-Karte zum VS weiterreichen, ohne, dass sie erst in den µC müssen. 
Musst nur noch takten.

Autor: Thomas Burkhart (escamoteur)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Sebastian ... schrieb:
> Würde auch Hard-SPI nehmen, ist sonst echt reinste Verschwendung. Wenn
> SD und VS am selben SPI hängen, kannst du sogar die Daten direkt von der
> SD-Karte zum VS weiterreichen, ohne, dass sie erst in den µC müssen.
> Musst nur noch takten.

Aber habe ich dann die volle Kontrolle über den Datenstrom? Wie mach ich 
das denn genau?

Gruß
Tom

Autor: Thomas Burkhart (escamoteur)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hab mir das gerade mal etwas näher angeschaut. Das mit dem direkten 
Weiterleiten von SD-CARD and den VS1011 ist ja ne nette Idee, aber wird 
wohl nur gut zu realisieren sein wenn ich raw von der Karte lesen kann 
und ken FAT Filesystem dazwischen habe oder?

Gruß
Tom

Autor: Sebastian ... (zahlenfreak)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Du musst natürlich erst den FAT-overhead und die Blockanforderungen 
zwischen SD-Karte und AVR ausmachen. Wenn dann die Daten dran sind 
schaltest du den VS wieder an den SPI und taktest nur noch die Daten 
rüber. Nach einem Block muss der VS wieder weg vom Bus und der nächste 
Block vom AVR angefordert werden.

Die größten Bedenken hätte ich wegen den Zugriffszeiten. Du hast dann ja 
nur die 2kB(?) Ram des VS. Die Idee kommt aber nicht von mir, denke also 
dass es läuft.

Sebastian

Autor: holger (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>Die größten Bedenken hätte ich wegen den Zugriffszeiten. Du hast dann ja
>nur die 2kB(?) Ram des VS. Die Idee kommt aber nicht von mir, denke also
>dass es läuft.

Das geht schon so. Selbst wenn man die Daten von der SD erst
in den ATMega liest und dann in den VS schiebt, reichen
8MHz Takt für 320kBps MP3 Dateien aus. Auch mit FAT Overhead.

Autor: Thomas Burkhart (escamoteur)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@Holger: Und dabei wechselseitig den Hardware SPI für SD-CARD und VS 
teilen?

Ok, ich denke so mache ich es

Gruß

Tom

Autor: holger (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>@Holger: Und dabei wechselseitig den Hardware SPI für SD-CARD und VS
>teilen?

Jupp.

Autor: Thomas Burkhart (escamoteur)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich hatte erst das mit den 32 Byte Puffer falsch verstanden, ich dachte 
der VS würde nicht mehr puffern, da hätte ich mir dann doch Sorgen 
gemacht ständig zwischen SD und VS zu switchen. Aber die 32 byte sind ja 
nur sicherheitspuffer.

Gruß
Tom

Autor: ... (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
warum nimmst du nicht einen ATmega328, der geht bei 3,3V bis über 12MHz.

Autor: holger (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>warum nimmst du nicht einen ATmega328, der geht bei 3,3V bis über 12MHz.

Da hat man einfach zu wenig Pins frei!

Allerdings frage ich mich was der zweite ATMega da an der
SD Karte machen soll? Songs draufspielen? Viel zu langsam.

Autor: ... (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
> Da hat man einfach zu wenig Pins frei!
Für was? Für die drei LEDs aus dem Stromlaufplan von oben?

Oder bist du auf dem Trip, dass er die Mischpultsteuerung und die beiden 
MP3-Player mit einem ATmega erschlagen soll?

Autor: holger (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>> Da hat man einfach zu wenig Pins frei!
>Für was? Für die drei LEDs aus dem Stromlaufplan von oben?

>Oder bist du auf dem Trip, dass er die Mischpultsteuerung und

Oh, von seinem Mischpult wusste ich nichts.

>die beiden MP3-Player mit einem ATmega erschlagen soll?

ATMega128 mit 16MHz könnte durchaus zwei VS bedienen.

Autor: Thomas Burkhart (escamoteur)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@... Du blickst schon ziemlich gut durch mein geplantes System durch ;-)

@Holger: Doch, eigentlich sollte der AVR der die Kontrolle des 
Gesamtsystems (zigBee Empfänger, Mischpult, 2x MP3 Player) auch per 
USB-Songs vom PC übernehmen und auf die SD-Karte schreiben. Ist das 
wirklich soo langsam?

Gibt es USB-Chips, die ein direktes Interface zu einer SD-Karte (und 
idealerweise auch noch ein 232-Interface realisieren?

Gruß
Tom

Autor: ... (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
> ATMega128 mit 16MHz könnte durchaus zwei VS bedienen.

Ja, mit dem kann er dann auch gleichzeitig noch seine Mischpultsteuerung 
machen.

Autor: holger (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>auch per
>USB-Songs vom PC übernehmen und auf die SD-Karte schreiben. Ist das
>wirklich soo langsam?

Unter idealen Bedingungen hab ich mal 450kB/s geschafft.
Und das auch nur mit meiner schnellsten Karte.
Da war aber nix mit Datenübertragung dazwischen.
Wenn du Glück hast kommst du auf 100-200kB/s.
Für ne 3MB MP3 dauert das dann sagen wir einfach mal 30s.
Um eine Gigabyte Karte zu füllen......... Spinnenweben
unter den Achseln;)

Schraub die Songs per SD-Kartenleser/schreiber drauf.
Mit ATMega macht das keinen Spaß.

Autor: Sebastian ... (zahlenfreak)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ist das mit den 2 SPI-Mastern noch aktuell? Wieso nimmst du keinen 
74HC157? Du bräuchtest dann nur einen Chip. MISO kann man ja problemlos 
dauerhaft durchverbinden. Und dass man nicht beide Master abschalten 
kann sollte doch eigenltich auch nicht stören.
Oder du regelst das ganze gleich per Software... AVR1 signalisiert AVR2, 
dass er jetzt dran ist und schaltet seinen SPI in Slave-mode. Dann darf 
AVR2 ran, bis er wieder die Kontrolle abgibt.

Nutzt du den ADC? Wenn nicht sollte AREF nur über einen Serien-C (100n) 
an VCC angebunden werden.

vsXDCS, vsXCS und VSReset finde ich überhaupt nicht beim AVR. Die müssen 
ja irgendwo gesteuert werden. vsDataRequest ist zwar beim AVR 
eingezeichnet, aber nicht angeschlossen...
Den CS-Leitungen des VS darst du dann auch gleich einen Pullup 
spendieren.

Weil hier noch über die Geschwindigkeit geredet wurde: 8MHz reicht dicke 
für mp3 aus einem FAT-system. Ich Spiel hier wav von Festplatte mit 
16Mhz. Ich hatte nur etwas bedenken wegen des Puffers. Meine Festplatte 
hat halt doch recht lange Zugriffszeiten, was einen extra Puffer nötig 
macht. Mit SD-Karten hab ich noch nie gearbeitet und kann es also auch 
nicht einschätzen. War reine Vorsicht.

Gruß, Sebasian

Autor: ... (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
> Wenn nicht sollte AREF nur über einen Serien-C (100n) an VCC angebunden
> werden.

Eh? Eher an GND.

Autor: Thomas Burkhart (escamoteur)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
holger schrieb:
>>auch per
>>USB-Songs vom PC übernehmen und auf die SD-Karte schreiben. Ist das
>>wirklich soo langsam?
>
> Unter idealen Bedingungen hab ich mal 450kB/s geschafft.
> Und das auch nur mit meiner schnellsten Karte.
> Da war aber nix mit Datenübertragung dazwischen.
> Wenn du Glück hast kommst du auf 100-200kB/s.
> Für ne 3MB MP3 dauert das dann sagen wir einfach mal 30s.
> Um eine Gigabyte Karte zu füllen......... Spinnenweben
> unter den Achseln;)
>
> Schraub die Songs per SD-Kartenleser/schreiber drauf.
> Mit ATMega macht das keinen Spaß.

Na im Bespielmodus wäre ja sonst nichts los, vielleicht komme ich dann 
ja auf Deine 450 ;-)

Problem ist, ich will für die von mir geplante Lösung die SD-Karten 
nicht zum Rausnehmen machen.

Daher die Frage ob es einen USB Baustein gibt, der gleich zwei 
Enddevices implementiert, einmal SD und einmal RS232.

Gruß

Tom

Autor: Thomas Burkhart (escamoteur)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Sebastian ... schrieb:
> Ist das mit den 2 SPI-Mastern noch aktuell? Wieso nimmst du keinen
> 74HC157? Du bräuchtest dann nur einen Chip. MISO kann man ja problemlos
> dauerhaft durchverbinden. Und dass man nicht beide Master abschalten
> kann sollte doch eigenltich auch nicht stören.
> Oder du regelst das ganze gleich per Software... AVR1 signalisiert AVR2,
> dass er jetzt dran ist und schaltet seinen SPI in Slave-mode. Dann darf
> AVR2 ran, bis er wieder die Kontrolle abgibt.
>
> Nutzt du den ADC? Wenn nicht sollte AREF nur über einen Serien-C (100n)
> an VCC angebunden werden.
>
> vsXDCS, vsXCS und VSReset finde ich überhaupt nicht beim AVR. Die müssen
> ja irgendwo gesteuert werden. vsDataRequest ist zwar beim AVR
> eingezeichnet, aber nicht angeschlossen...
> Den CS-Leitungen des VS darst du dann auch gleich einen Pullup
> spendieren.
>
> Weil hier noch über die Geschwindigkeit geredet wurde: 8MHz reicht dicke
> für mp3 aus einem FAT-system. Ich Spiel hier wav von Festplatte mit
> 16Mhz. Ich hatte nur etwas bedenken wegen des Puffers. Meine Festplatte
> hat halt doch recht lange Zugriffszeiten, was einen extra Puffer nötig
> macht. Mit SD-Karten hab ich noch nie gearbeitet und kann es also auch
> nicht einschätzen. War reine Vorsicht.
>
> Gruß, Sebasian

Danke für die vielen Hinweise. Ja, das mit den zwei Mastern ist noch 
aktuell. Problem ist, das beide AVRs den SPI Bus jeweils auch für sich 
selber Nutzen, d.h. ich muss Sie trennen.

Danke für den Hinweis mit dem 74HC157 das ist ja ein richtiger 
Umschalter, also keine Tristate Schaltung. So was hatte ich ursprünglich 
gesucht. Bin einfach noch nicht lange genug dabei um diese 
Standardbauteile zu kennen.

Gruß
Tom

Autor: Max (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>Ich hatte erst das mit den 32 Byte Puffer falsch verstanden, ich dachte
>der VS würde nicht mehr puffern, da hätte ich mir dann doch Sorgen
>gemacht ständig zwischen SD und VS zu switchen. Aber die 32 byte sind ja
>nur sicherheitspuffer.


Das musst du mir ma genauer erklären.
Ich habe mir auch ein MP3 Player gebaut mit VS1011 + ATMega644 + SD + 
FAT es spielt auch ohne große Probleme 320kBit/s.

Aber ich lade immer nur 32Byte in den VS1011 und warte ab bis er neue 
Daten brauchen.

Du schreibst ja das mann auch mehr Daten in denn VS1011 laden kann und 
so mit auch nicht so oft von Sd zu vs1011 springen muss.

Wie hast du das gemacht?^^

Ich habe auch die zeile in den Features gelesen: "5.5 KiB On-chip RAM 
for user code / data"...

Kannste mir vll ein tipp geben wie ich das machen kann?

danke
mfg Max

Autor: Thomas Burkhart (escamoteur)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hast Du es schon mal probiert? So wie ich das Datenblatt verstehe und 
was ich aus einigen anderen Diskussionen hier verstanden habe.
Wird DataReq erst auf low wenn er keine Daten mehr annehmen kann:

The DREQ pin/signal is used to signal if VS1011e’s FIFO is capable of 
receiving data. If DREQ is high,
VS1011e can take at least 32 bytes of SDI data or one SCI command. When 
these criteria are not met,
DREQ is turned low, and the sender should stop transferring new data.


Da steht at least 32 bytes, d.h. wenn er wenigstens 32 Byte aufnehmen 
kann.

Because of a 32-byte safety area, the sender may send upto 32 bytes of 
SDI data at a time without
checking the status of DREQ, making controlling VS1011e easier for 
low-speed microcontrollers.
Note: DREQ may turn low or high at any time, even during a byte 
transmission. Thus, DREQ should
only be used to decide whether to send more bytes. It should not abort a 
transmission that has already
started.

D.h. wenn DREQ einmal high ist, kannst Du problemlos 32Byte auf einmal 
senden. Wenn es immer noch high ist, einfach noch mal 32 Byte. zumindest 
verstehe ich das so.

Wie schaffst Du es bei den 32Byte häppchen die rechtzeitig von der SD zu 
bekommen? Hast Du SD und VS am selben  Bus?

gruß

Tom

Autor: Sebastian ... (zahlenfreak)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
... schrieb:
>> Wenn nicht sollte AREF nur über einen Serien-C (100n) an VCC angebunden
>> werden.
>
> Eh? Eher an GND.

GND ist natürlich richtig. War einfach schon zu spät gestern...

Zum Puffer: So wie Tom es schreibt passts. Der Puffer ist größer als 
32Byte (weiß jetzt nicht wie viel genau). DREQ zeigt nur an, ob 
mindestens 32 Byte platz ist.

Sebastian

Autor: Sebastian ... (zahlenfreak)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Thomas Burkhart schrieb:

> Daher die Frage ob es einen USB Baustein gibt, der gleich zwei
> Enddevices implementiert, einmal SD und einmal RS232.

Dürfte selten sein. Aber du kannst ein Hub einbaun und an den eine SD 
und eine RS232 Brücke hängen.

SD-Brücke musst du dir aber selbst suchen. Ich hab grad nur ne 
HDD-USB-Bridge (CY7C68300B) zum laufen gebracht. Die ist mitlerweile 
recht zahm und geht auf Befehl auch vom Bus runter. Ist aber natürlich 
P-ATA, braucht also ein paar Pins mehr...

Sebastian

Autor: Max (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>Wie schaffst Du es bei den 32Byte häppchen die rechtzeitig von der SD zu
>bekommen? Hast Du SD und VS am selben  Bus?


Mein Porgramm Code sieht so aus:
while(!feof_(stream))
{
     for(i = 0; i < 32; i++)        
       mp3stream[i] = fgetc_(stream);
        
  vs_wait();
      
  DCS_VS1011_ENABLE();
      
  for(i = 0; i < 32; i++)
  {
    
    spi_out(mp3stream[i]);
  }

  DCS_VS1011_DISABLE();  
}

void vs_wait(void)
{
  while(!(PINA & (1 << PINA2)))
  {
    PORTA |= (1 << VS_LED);
    cmd();  //Termial programm auswerten
  }
  PORTA &= ~(1 << VS_LED);
}

Also mein Programm sendet mehr als 32Byte. Hatte vorher gedacht das er 
gleich nach 32Byte auf Low schaltet.

Autor: Thomas Burkhart (escamoteur)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@Max: Was passiert bei Deinem Programm eigentlich wenn Du in der for 
schleife beim lesen der 32 Byte über die das Fileende hinausschreibst??

Auch wäre es sehr viel effizienter die Zeichen nicht einzeln zu lesen 
und nur 32Byte zu verarbeiten. Ließ mehr auf einmal in den Puffer.

Gruß

Tom

Autor: Bernhard B. (schluchti)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi,

bin gerade dabei mit Hilfe der Suchfunktion des Forums über diesen 
Thread gestolpert. Ich möchte diesen Thread gleich nutzen um eine Frage 
bez. der Versorgung des VS1011 loszuwerden. Ist es zwingend 
erforderlich, die analoge und die digitale Versorgung des ICs zu 
trennen?

Autor: Sebastian ... (zahlenfreak)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Zwingend notwendig dürfte es eigentlich nicht sein, aber Der 
Musikqualität wird es wohl helfen.

@Tom
Was ist aus deinen USB-Plänen geworden?

Sebastian

Autor: Max (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>@Max: Was passiert bei Deinem Programm eigentlich wenn Du in der for
>schleife beim lesen der 32 Byte über die das Fileende hinausschreibst??

Dann gibt er ein EOF zurück (0x00).

>Auch wäre es sehr viel effizienter die Zeichen nicht einzeln zu lesen
>und nur 32Byte zu verarbeiten. Ließ mehr auf einmal in den Puffer.
>
>Gruß
>
>Tom

Ja das ich richtg, Optimieren kann man da noch einiges. War erst mal 
froh das alles ging (bis 320kbits). Hab aber leider bissl die lust 
verloren bzw. frage ich mich für wenn ich mir eigentlich die arbeit 
mache^^.

Max

Autor: Thomas Burkhart (escamoteur)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@Max: Das ist bei mir das Gute. Ich hab wirklich ne konkrete Anwendung 
für die Dinge die ich baue ;-)


@Sebastian: Ich hab mir das USBKey Board von ATMEL besorgt und werde 
demnächst mal testen wie schnell ich auf die SD Card schreiben kann. Auf 
jeden Fall gut ein Bauteil weniger zu brauchen.

Gruß

Tom

Autor: Sebastian ... (zahlenfreak)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Dann schon mal viel Erfolg.
Mit AVR kommst du halt SPI-Seitig maximal auf Clk/2, also 8Mbit/s, also 
1MByte/s (und selbst das stimmt ja nicht ganz...)
Also Im besten Fall brauchst du für einen Song noch über 3 Sekunden bzw. 
über 30 Sekunden für ein Album.
Mir persönlich wärs zu langsam (Meine ATA-Bridge macht knapp 30MByte/s 
:-)), aber ich weiß ja nicht, was für Datenmengen du rüberspielen 
willst.
Wie gesagt: Viel Erfolg mit dem Key. Und meld dich wenns was neues gibt.

Sebastian

Autor: Christoph M. (chrito)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Hallo!
Sebastian schreibt, man kann von der SD-Karte die Daten direkt an den 
MP3-Dekoder weiterleiten, wenn man den richtigen Datenblock erwischt:

"Du musst natürlich erst den FAT-overhead und die Blockanforderungen
zwischen SD-Karte und AVR ausmachen. Wenn dann die Daten dran sind
schaltest du den VS wieder an den SPI und taktest nur noch die Daten
rüber. Nach einem Block muss der VS wieder weg vom Bus und der nächste
Block vom AVR angefordert werden."

Wie muss ich das ganze denn dann verdrahten? SP0 der SD-Karte an SPI des 
VLSI-Dekoders? Und kann der Controller dem VLSI Befehle senden?

Ich vermute mal, du denkst da an so eine Hardware, wie ich sie angehängt 
habe (sie ist unter diesem Link zu finden: 
http://www.teuthis.com/html/mmc_mp3.html)

Das funktioniert also quasi per Weiterleitung? Dann müsste es ja doppelt 
so schnell sein, wie die anderen Varianten und außerdem weniger Speicher 
verbrauchen?
Viele Grüße,
Christoph

Autor: Jannis C. (kabelwurm)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,
Mal aufs Datum des Threads geschaut?
Mach mal besser einen neuen auf.
Gruß Jannis

Autor: Sebastian ... (zahlenfreak)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ja, sowas in die Richtung meinte ich. Muss aber zugeben, dass ich selbst 
noch nie was mit geteiltem SPI-"BUS" gemacht habe. Man müsste das ganze 
eigetnlich auch kaskadieren können (also als Ring aufbauen). Dann 
verliert man zwar bei einigen Konstellationen wieder etwas Bandbreite, 
kann dafür aber auch Daten vom mp3-decoder wieder empfangen. Aber prüfe 
das besser selbst nochmal, bevor du es so aufbaust.

Die direkte Weiterleitung dürfte sogar mehr als doppelt so schnell sein, 
weil du dir den Verwaltungs-overhead im Controller sparst. Zumindest 
teilweise.

Viele Grüße,
Sebastian

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.