Stap 3: Software details
De schets achter dit project is bestaat uit de volgende functies
- seven_seg_disp (int num)
- RGBLED (int r, int g, int b)
- colortorgb (int kleur)
- rgbdisp()
- printbandcolor (int band)
- Value()
- Start()
Voordat het uitleggen van kunt elke functie begrijpen van de code en hoe het werkt:
- Eerst in de lus-functie kunt u een tijdje loop met voorwaarde == TRUE.
DOEN is een sleutel voor uitvoering, met de beginwaarde FALSE. Als gebruiker niet gefinisht correct zal niet gewijzigd op true.
toetsen is belangrijk om ervoor te zorgen dat sommige codes niet uitvoeren, tenzij ik de sleutel ontgrendelt.
Als wordt gebruikt om ervoor te zorgen dat FOR niet voeren, tenzij de gebruiker op ' *', waardoor DO2 (de sleutel van FOR-lus) waar.
De structuur van deze kabel is gewijd aan toetsenblok invoermethode. In de FOR lus gebruiker beëindig de post door te drukken op ' *' trekken tijden, omdat sommige tijden gebruiker één cijfer in te voeren zoals 1 ohm.
Laat nu praten over elke functie: seven_seg_disp(int num)
Uitgang de D0-D3 op Arduino pinnen aangesloten op 7seg stuurprogramma.
RGBLED (int r, int g, int b)
Uitgang van de argumenten naar RGB pinnen aangesloten op de Arduino.
colortorgb (int kleur)
Numerieke waarde van weerstand bands omzetten in RGB-kleur.
rgbdisp()
Uitgang functie voor zowel 7seg of RGB leds, het geactiveerd en demultiplexers en kanalen als wat ik uitgelegd in hardwaredetails deactiveren.
printbandcolor (int band)
De kleurcode van elke band afdrukken op seriële monitor.
Value()
Manipuleren van ingevoerde waarden volgens mogelijkheden van posten en de waarden in de matrix genaamd colorcode opslaat.
Start()
Om ervoor te zorgen dat sommige waarden terug naar beginwaarde vooral cijfers matrix die wordt gebruikt voor post en door blank, moeten elke keer als we nieuwe waarden invoeren.