Motstånd kalkylatorn med hjälp av RGB lysdioder (3 / 4 steg)
Steg 3: Programvara Detaljer
Skissen bakom detta projekt består av följande funktioner
- seven_seg_disp (int num)
- RGBLED (int r, int g, int b)
- colortorgb (int färg)
- rgbdisp()
- printbandcolor (int band)
- Value()
- Start()
Innan vi förklarar kan varje funktion förstå koden och hur det fungerar:
- Först i loop funktion kan du se ett tag loop med villkor == TRUE.
GÖRA är en nyckel för utförande, med ursprungliga värdet FALSKT. Om användaren inte avsluta korrekt kommer att ändra inte sant.
nycklar är viktigt att se till att vissa koder inte genomföra om inte jag låsa upp nyckeln. - Då hittar du 2 strukturer: för det första är om och den andra är för.
OM för att se till att det för inte köra om användaren inte trycker på "*", som gör DO2 (nyckeln av FOR-loop) sant.
Dessa släptåg struktur är tillägnad tangentbord inmatningsmetod. I för loop användaren kan avsluta transaktionen genom att trycka på ' *' bogsera gånger, eftersom vissa gånger användaren har en siffra till ingång som 1 ohm. - Du kan se i både indatametod - knappsatsen och seriell monitor - som jag använt en counter numofdigits, orsaken är relaterad till manipulera de angivna värdena (i funktionen anropas value()).
- Indata från tangentbordet eller dator är kodad med "ASCII" så för att få det verkliga värdet måste vi subtrahera det från "0" värde i ASCII.
Nu kan tala om varje funktion: seven_seg_disp(int num)
Produktion D0-D3 på Arduino stift ansluten till 7seg förare.
RGBLED (int r, int g, int b)
Utgång argument till RGB pins ansluten till Arduino.
colortorgb (int färg)
Konvertera numeriska värdet för resistor band till RGB-färg.
rgbdisp()
Utgång funktion för både 7seg eller RGB lysdioder, det aktiverat och avaktivera demultiplexers och kanaler alternativt som vad jag förklarade i hårdvara detaljer.
printbandcolor (int band)
Skriva ut färgkoden för varje band på Serial monitor.
Value()
Manipulera in värdena enligt möjligheter av poster och lagra värdena i matris kallas colorcode.
Start()
Se till att vissa värden återgår till initialvärde särskilt siffror matris som används för inmatning och måste av Tom varje gång vi ange nya värden.