Stap 10: Software
De software werd geschreven in assembler. Zowel het broncodedossier *.asm en het *.hex-bestand voorprogrammering zijn hier opgenomen. Het PDF-bestand bevat een hoog niveau van een stroomschema met hoe de software
werkt.
De software kan een van de twee modi worden uitgevoerd: normale modus en Test.
Normale modus:
In de normale modus voert de software de primaire functie van vertraagde audio afspelen. De bijgevoegde PDF bevat een stroomdiagram weergegeven: de stappen in het proces.
Selecteer switches en de spanning op de vertraging die input in deze modus die de hoeveelheid vertraging is ingesteld door het bereik. De samplefrequentie wordt bepaald door de bemonstering tarief-switch, waardoor voor 8000Hz of 11025Hz samplingfrequenties.
Speciale Test-modus:
Speciale Test-modus is een modus die ik opgenomen om te helpen bij het controleren van de prestaties van het juiste circuit na
bouw. Als deze modus is geselecteerd, zal de volgende gebeuren na macht omhoog:
RAM-Tests
De microprocessor test het RAM-door het wegschrijven van een waarde aan het, en dan proberen om het te lezen terug. Als de waarde
keerde terug is van een match, de test passen, en de LED zal oplichten gedurende twee seconden. Als de waarde niet
Match, dan knippert de LED drie keer. Als het circuit beide RAMs bevolkt heeft, zal de tweede RAM worden
ook, op dezelfde wijze, met de LED inschakelen voor 2 seconden voor een pass of knipperen drie getest
tijden voor een mislukken.
DAC-Test
Het eerste deel van de DAC-test stuurt een waarde naar de DAC, zodat de juiste output kan worden geverifieerd. Eerste de
DAC zal output van 1/3 van het volledige schaalbereik, en houd hem gedurende 3 seconden. Het zal dan springen tot en met 2/3 van de volledige, schaal en houd
voor 3 seconden, en dan zal springen op volledige schaal 3 seconden ingedrukt.
Het volgende deel van de DAC-test het programma zal de uitgang van een sinus 1 kHz, swingende boven en onder de
½ VDD referentielijn. Dus, moet u een sinusgolf met een amplitude van grenzen aan 1.65V, swingende boven
en onder 1.65V. De sinus output brandt voor 0,25 seconden, en vervolgens uit voor 0,25 seconden, en
op die manier voor onbepaalde tijd worden herhaald.