Audio Delay modul (5 / 12 steg)
Steg 5: SPI RAM
RAM-minnet används här kommunicerar med mikroprocessor i SPI-gränssnittet. Kondensatorer C7 och C8 är
Bypass kondensatorer för två marker.
Denna design butiker vågform proverna som 8 bit värden. Som sådan, ger det inte extremt hög
fidelity ljud, men det är bättre än AM radio kvalitet. Denna krets var avsedd att använda mikrochips 23 K 256
RAM-chips, som är 32 k byte i storlek. (32k av 8). Hänvisa till databladet för delen för mer detaljer
om dess funktion.
RAM-minnet används som en stor cirkulär buffert. Den maximala mängden möjliga fördröjning beror på storleken
bufferten och den kurs som ingår i urvalet insignal. Programmet loopar hela tiden, lagra
nya prover in i RAM med varje slinga. När antalet prov överstiger RAM storlek, det
sveper över och skriver över de äldsta proverna.
Systemet kan använda antingen en eller två RAM-chips, beroende på hur mycket kapacitet behövs. Om två
RAMs används, och sedan dra upp motstånd R13 måste användas på chip Markera rad. Denna linje samplas
av mikroprocessorn vid start, och om det dras höga, programmet kommer att konfigureras för två baggar.
Programmet sedan justerar automatiskt sättet de behandlar hanteras, så att de två baggar
behandlas i programvaran som en stor buffert. CS-ingången på den andra RAM måste dras höga
genom en resistor, inte är ansluten direkt till VDD. Om den är ansluten direkt till VDD, kommer det kort VDD till
marken när dra chip Välj linje låg och processorn kan sannolikt vara skadad. När endast en
RAM är använde, raden bör dras låg, också genom ett motstånd i stället för direkt till marken.
Som tidigare nämnts, beror maximal förseningen på storleken på bufferten och samplingsfrekvens. Varje
provet är en byte. Den maximala mängden ljud, i sekunder, som kan lagras är sedan ges av:
Max Delay (i sekunder) = buffertstorlek (i byte) / samplingsfrekvens (i samplingar per sekund)
Så om en 32 k-byte RAM krets används och samplingsfrekvensen är 11025 samplingar per sekund, maximalt
fördröjning som kan produceras är:
Max Delay = 32768 / 11025 = 2.972 sekunder
Om provet är 8000 prover per näst är högsta förseningen:
Max Delay = 32768 / 8000 = 4.096 sekunder
Om du använder två RAM-chips skulle max fördröjningstiderna vara 5.944 och 8.192 sekunder, respektive
för 11025 och 8000 prover per andra priser.