INHOUDSOPGAWE:
2025 Outeur: John Day | [email protected]. Laas verander: 2025-01-13 06:56
In hierdie projek skep ons 'n rooi, wit en blou LED -skerm met 'n potensiometer en 'n drukknop. Dit klink maklik, maar ons sal ook onderbrekings hiervoor gebruik. As die drukknop ingedruk word, stel die waarde van die potensiometer die helderheid van die LED's in. Die benodigde materiaal sluit in:
-Arduino Uno R3
-broodbord
-mannetjie tot manlike drade
-drie LED's (rooi, wit, blou)
-potensiometer
-druk knoppie
Weerstand van 220 ohm
Stap 1: Krag en grond
Koppel eers die grond- en 5v -krag aan die broodbord.
Stap 2: Verbind LED's
Plaas al drie LED's op die broodbord. Verbind die katode met elkeen op die grond. Koppel 'n weerstand van 220 ohm aan die anode en koppel dit dan aan die arduino, penne 9-11.
Stap 3: Druk op die knoppie
Maak seker dat u die drukknoppie presies in die prentjie verbind. Power to power, 220ohm weerstand teen die grond, en dan die teenoorgestelde kant van pen 3. Dit sal as onderbreking gebruik word.
Stap 4: Potensiometer
Koppel die potensiometer net soos die drukknop, net soos op die foto. Dit sal die doel dien om die helderheid aan te pas.
Stap 5: Moontlike foute
Maak seker dat die penne aan mekaar gekoppel is, soos die kode en foto's toon, en dat hulle ooreenstem. Maak ook seker dat die anode en katode dienooreenkomstig verbind is.
Stap 6: Kode
const byte ledBlue = 11; // stel LED blou by pin 11const byte ledRed = 10; // stel LED rooi by pen 10
const byte ledWhite = 9; // stel LED wit op pen 9
const byte interruptPin = 3; // die drukknop as die onderbreking
const byte potPin = 1; // potensiometer is pen A1
vlugtige int helder; // LED -helderheid
ongeldige opstelling () {
pinMode (ledBlue, OUTPUT); // blou LED as UITGANG
pinMode (ledRed, OUTPUT); // rooi LED as UITGANG
pinMode (ledWhite, OUTPUT); // wit LED as UITGANG
pinMode (interruptPin, INPUT_PULLUP); // knoppiespen as INPUT_PULLUP
pinMode (potPin, INPUT); // potensiometerpen as INGANG
// stel die onderbreking op met invoerpen en helderheid na RISING
attachInterrupt (digitalPinToInterrupt (interruptPin), light, RISING);
} // beëindig die opstelling
leemte -lus () {
analogWrite (ledBlue, helder); // Stel die blou LED op die vasgestelde vlak van helderheid
analogWrite (ledRed, helder); // Stel die rooi LED op die vasgestelde vlak van helderheid
analogWrite (ledWhite, helder); // Stel die wit LED in op die vasgestelde vlak van helderheid
} // eindlus
leegte () {
helder = analogRead (potPin); // Lees in waarde van potensiometer
helder = kaart (helder, 0, 1023, 0, 255); // Kaarte waardes vir LED -helderheid
} // eindiger