Stap 5: Code, de uitvoer en de snelheid
Zodra ik het opbouwen van mijn controller waar de code is bedoeld om te worden uitgevoerd, zal ik meer foto's, maar hier is de code. Het is vrij goed gedocumenteerd en toegelicht, zodat ik terugzakte alle het commentaar op deze pagina.
De code liep op een atmeag328P neemt 52ms aan het voltooien van elke cyclus die analyseert Voorfrequenties 196hz tot 3136hz (frequentiebereik van een viool). Merk op dat aanpassing van het aantal vertragingen om te testen voor zal grote invloed hebben op uw snelheid!
Update, 21 juli 2015: op basis van mijn behoeften, ik niet echt schelen als de hogere frequenties boven 3000 hz kreeg aliased omdat mijn behoeften waren gebaseerd op de fundamenten van de viool varieerden van 196 hz tot 3136 hz. Dus daalt het ADC samplefrequentie tot 19,2 khz waarmee de processor meer tijd aan de beschikbare gegevens. Het gebruik van een 64 scalaire resulteerde in de tijd van de uitvoering van een 17ms, maar de 3136hz teruggebracht tot slechts 12 monsters voor amdf. Gaan langzamer zou waarschijnlijk sneller verder, maar hogere frequentie resolutie is verloren. De code komt niet overeen met deze wijziging.
U kunt het gebruik van gehele getallen voor hogere precisie als u wilt aanpassen.
U moet waarschijnlijk vervangen door de code voor de weergave van een serieel commando of iets dergelijks.