Kezdőoldal » Számítástechnika » Programozás » Az alábbi problémát, hogy...

Az alábbi problémát, hogy kellene arduinoval megoldani?

Figyelt kérdés
Van egy kis lámpám amiben 3 led van. Annyit tudott, hogy az első led lassan felerősödött majd lassan elhalványodott, de közben már a második is elkezd erősödni, és így tovább újra és újra. Mind a három soha nem világított együtt. Megköszönném a forráskódot.

2023. márc. 24. 21:23
 1/10 anonim ***** válasza:

analogWrite (ledpin, value);

Pwm pint használj a value 8 bit tehát 0-254

2023. márc. 24. 21:30
Hasznos számodra ez a válasz?
 2/10 A kérdező kommentje:
Hú, nekem ez még sajnos nagyon kevés, azt gondoltam, hogy pwm kell. Meg ehhez valamiféle ciklus kéne, nem?
2023. márc. 24. 21:54
 3/10 anonim ***** válasza:
23%

A problémáját megoldhatja úgy, hogy az Arduino egyik tüskéjét programozza PWM jel generálására, és ezt a tüskét csatlakoztatja a LED anódjához (+) egy 220 ohmos ellenálláson keresztül. A LED katódját (-) közvetlenül a GND-hez kell csatlakoztatni. A PWM jel szélességének változtatásával elérheti, hogy a LED fokozatosan fel- és lehalványuljon.


Ha három LED-et szeretne használni, akkor három különböző tüskét kell programoznia PWM jel generálására, és mindegyiket egy-egy LED-hez kell csatlakoztatnia egy ellenálláson keresztül. A PWM jelek szélességét úgy kell változtatnia, hogy a LED-ek egymástól függetlenül halványuljanak fel és le.


A forráskódot a következőképpen írhatja meg:


// A három LED tüskéinek meghatározása

const int ledPin1 = 9;

const int ledPin2 = 10;

const int ledPin3 = 11;


// A három LED fényerejének változóinak meghatározása

int brightness1 = 0;

int brightness2 = 0;

int brightness3 = 0;


// A fényerő változásának mértékét meghatározó változók

int fadeAmount1 = 5;

int fadeAmount2 = 5;

int fadeAmount3 = 5;


void setup() {

// A tüskéket kimenetként állítja be

pinMode(ledPin1, OUTPUT);

pinMode(ledPin2, OUTPUT);

pinMode(ledPin3, OUTPUT);

}


void loop() {

// A PWM jelek szélességét beállítja a fényerő változók alapján

analogWrite(ledPin1, brightness1);

analogWrite(ledPin2, brightness2);

analogWrite(ledPin3, brightness3);


// A fényerő változókat növeli vagy csökkenti a változás mértékével

brightness1 = brightness1 + fadeAmount1;

brightness2 = brightness2 + fadeAmount2;

brightness3 = brightness3 + fadeAmount3;


// Ha a fényerő eléri a maximumot vagy a minimumot, akkor megfordítja a változás irányát

if (brightness1 <= 0 || brightness1 >= 255) {

fadeAmount1 = -fadeAmount1;

}

if (brightness2 <= 0 || brightness2 >= 255) {

fadeAmount2 = -fadeAmount2;

}

if (brightness3 <= 0 || brightness3 >= 255) {

fadeAmount3 = -fadeAmount3;

}


// Egy kis késleltetést ad, hogy látható legyen a halványulás hatása

delay(30);

}

2023. márc. 24. 22:34
Hasznos számodra ez a válasz?
 4/10 anonim ***** válasza:
54%
Bár nyilván a kérdező örül a kódnak, kezd elég idegesítő lenni ez a chat-gpt vacakból másoló mániákus válaszoló...
2023. márc. 24. 23:09
Hasznos számodra ez a válasz?
 5/10 anonim ***** válasza:
0%
Dobd ide a karácsonyi fényfüzéredet teso holnapra bevillogtatom neked fiam
2023. márc. 24. 23:33
Hasznos számodra ez a válasz?
 6/10 anonim ***** válasza:
0%
Mert #4-es? Eddig a Google-t nem használták sokan. Most meg már megerőltetniük se kell magukat, csak elolvasni azt a pár sort amit a bot írt. Igaz, van néha false választa, de eleve nem rossz.
2023. márc. 24. 23:44
Hasznos számodra ez a válasz?
 7/10 A kérdező kommentje:
Kedves 3-as. Köszönöm a forráskódot, megpróbáltam, majdnem tökéletes. Annyi vele a gond, hogy a három led egyszerre csinálja a halványulást erősödést. Pedig a lényeg az lenne, hogy a színek keveredjenek, tehát, hogy ameddig az egyik erősödik addig a másik halványul, a harmadik addig nem üzemel és így tovább. Köszönöm, ha futsz vele még egy kört.
2023. márc. 25. 13:18
 8/10 anonim ***** válasza:
Mármint mi fussunk még egy kört? Arduinot ne vegyünk hozzá neked. Innen azért már illene megoldanod, nem egy ingyen megoldjuk helyetted oldal ez, hanem segítünk, útbaigazítunk.
2023. márc. 25. 15:02
Hasznos számodra ez a válasz?
 9/10 anonim ***** válasza:
Ezt kedvelem a legjobban. Amikor megérkezik a sehonnai és elkezdi nyalatni a valagát.
2023. márc. 25. 16:52
Hasznos számodra ez a válasz?
 10/10 anonim ***** válasza:

Ehelyett:

// A három LED fényerejének változóinak meghatározása

int brightness1 = 0;

int brightness2 = 0;

int brightness3 = 0;


Írd ezt:

// A három LED fényerejének változóinak meghatározása

int brightness1 = 0;

int brightness2 = 85;

int brightness3 = 171;

2023. márc. 25. 17:30
Hasznos számodra ez a válasz?

Kapcsolódó kérdések:




Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu

A weboldalon megjelenő anyagok nem minősülnek szerkesztői tartalomnak, előzetes ellenőrzésen nem esnek át, az üzemeltető véleményét nem tükrözik.
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!