Stap 3: Hoe de Code werkt
In mijn code die ik heb mijn top module, die wordt weergegeven in de afbeelding door de gestippelde square, ingangen die schakelaars, een knop voor wissen en de systeemklok.
Vanuit de grotere bovenste module heb ik een teller, Comparateur, overschakelt naar hoek decoder, en hoek op constante waarde decoder.
De teller neemt in de systeemklok en duidelijk. Elke klokcyclus het verhoogt de waarde van een count totdat het hits een bepaalde constante waarde. Deze waarde is wat nodig is om de juiste frequentie. Vindt u de vergelijking voor die commentaar in de code. Zodra zij die waarde tot herstelt het. Dus, het telt naar de constante en gaat dan terug naar nul. Hiermee wordt de frequentie.
De overstap naar hoek decoder neemt in een switch-waarde en het wordt toegewezen aan de waarde van een hoek.
De hoek-decoder neemt in de waarde van een hoek en het wordt toegewezen aan een constante waarde die het juiste pulserend sproeien krijgt. Dat de vergelijking ook is commentaar in de code.
De comparator neemt dan in de waarde van count, en de constante waarde uit de hoek-decoder. Als de waarde van count dat kleiner is dan de constante dan de uitvoer is 1, anders is de output is nul. Dit maakt het PWM-signaal.
U kunt zien dat in de tweede afbeelding wordt geïllustreerd.
Als u wilt gebruiken de hoek als een input in plaats van de schakelopties kunt u de switch om te hoek decoder verwijderen. Als je gebruiken meer dan één servo wilt, kunt u meerdere modules van de controller van de servo in een hogere top module instantiëren.