Stap 5: SPI RAM
De RAM gebruikt hier communiceert met de microprocessor met de SPI-interface. Condensatoren C7 en C8
condensatoren voor de twee chips te omzeilen.
Dit ontwerp slaat de golfvorm monsters als 8-bits waarden. Als zodanig, verstrekt het geen extreem hoge
Fidelity-geluid, maar het is beter dan de geluidskwaliteit van de radio van de AM. Dit circuit is ontworpen om het gebruik van Microchips' 23 K 256
RAM-chips, die 32 k bytes in grootte. (32k door 8). Verwijzen naar het gegevensblad voor het deel voor meer details
over de werking.
Het RAM-geheugen wordt gebruikt als een grote circulaire buffer. De maximale hoeveelheid vertraging mogelijk is afhankelijk van de grootte
van de buffer en het tarief waartegen het ingangssignaal wordt bemonsterd. Het programma wordt voortdurend, op te slaan
nieuwe monsters in het RAM met elke lus. Als het aantal monsters groter is dan de RAM, het
wikkelt en overschrijft de oudste monsters.
Het systeem kan gebruiken één of twee RAM-chips, afhankelijk van hoeveel capaciteit nodig is. Als twee
Rammen zijn gebruikt, dan de pull up weerstand R13 moet worden gebruikt op de chip Kiesderegel. Deze regel wordt bemonsterd
door de microprocessor bij het opstarten, en als het hoge wordt getrokken, zal het programma worden geconfigureerd voor de twee rammen.
Het programma zal dan automatisch aanpassen de manier waarop die de adressering wordt afgehandeld, zodat de twee rammen
behandeld in de software als een grote buffer. De CS-ingang van de tweede RAM moet worden hoog getrokken
door middel van een weerstand, niet rechtstreeks verbonden aan VDD. Als deze is aangesloten rechtstreeks op de VDD, zal het VDD naar korte
gemalen wanneer trekken de chip Selecteer regel lage en de processor waarschijnlijk beschadigd. Wanneer slechts één
RAM-geheugen wordt gebruikt, de lijn laag, ook door middel van een weerstand in plaats van direct moet worden getrokken op grond.
Zoals eerder vermeld, de maximale wachttijd is afhankelijk van de buffergrootte en de bemonsteringssnelheid. Elke
monster is één byte. De maximale hoeveelheid audio, in seconden, die kunnen worden opgeslagen wordt dan gegeven door:
Max Delay (in seconden) = buffergrootte (in bytes) / Sample Rate (in samples per seconde)
Dus, als een 32 k-byte RAM-chip is gebruikt, en de samplingfrequentie is 11025 samples per seconde, de maximale
vertraging die kan worden geproduceerd is:
Max Delay = 32768 / 11025 = 2.972 seconden
Als de samplefrequentie 8000 monsters per tweede is de maximale wachttijd:
Max Delay = 32768 / 8000 = 4.096 seconds
Als twee RAM-chips worden gebruikt, zou de max vertragingstijden 5.944 seconden en 8.192 seconden, respectievelijk
voor de monsters 11025 en 8000 per tweede tarieven.