Skocz do zawartości

Płynne włączanie i wyłączanie diody


Patryk9111

Pomocna odpowiedź

Gość
41 minut temu, _LM_ napisał:

No to jeśli jedziemy z gotowcam

Przy okazji i ja się czegoś nauczę😉

int wypelnienie = 0;
int wartosc = 5;

void setup() {}

void loop() {

  analogWrite(10, wypelnienie += wartosc);

  if ((wypelnienie > (255 - wartosc)) || (wypelnienie < abs(wartosc))) { wartosc = wartosc * (-1); }
  delay(50);
}

Ile łbów tyle pomysłów...

A na koniec przyjdzie @ethanak i będą baty 😁 

Link do komentarza
Share on other sites

No ale czemu nie założysz osobnego tematu?  Zdaje się że nie ten jest o adc? 

Edytowano przez _LM_
Link do komentarza
Share on other sites

Gość
2 minuty temu, _LM_ napisał:

Zdaje się że nie jest to o adc

Jakie ADC?

Link do komentarza
Share on other sites

Zarejestruj się lub zaloguj, aby ukryć tę reklamę.
Zarejestruj się lub zaloguj, aby ukryć tę reklamę.

jlcpcb.jpg

jlcpcb.jpg

Produkcja i montaż PCB - wybierz sprawdzone PCBWay!
   • Darmowe płytki dla studentów i projektów non-profit
   • Tylko 5$ za 10 prototypów PCB w 24 godziny
   • Usługa projektowania PCB na zlecenie
   • Montaż PCB od 30$ + bezpłatna dostawa i szablony
   • Darmowe narzędzie do podglądu plików Gerber
Zobacz również » Film z fabryki PCBWay

Gość

@_LM_ A bo to mega328 dysponuje jakimś DAC? Przecież w tym kodzie analogWrite odnosi się do PWM. 

Link do komentarza
Share on other sites

Pwm jest prostym DAC 😉 ale ok, zafiksowałem się na tym że źle przeczytałem analog read zamiast write. 

A w ogóle, co ten twój program ma robić i jaki ma związek z tematem? 

Edytowano przez _LM_
Link do komentarza
Share on other sites

Gość
3 minuty temu, _LM_ napisał:

A w ogóle, co ten twój program ma robić i jaki ma związek z tematem?

To o co prosi autor tematu. Pulsuje LEDem.  

Link do komentarza
Share on other sites

Gość

@_LM_ Autor prosił o pomoc w odniesieniu do Arduino UNO. Nie rozumiem gdzie się doszukujesz problemu. 

Link do komentarza
Share on other sites

Gość

Wersja dla księdza;

int wypelnienie = 0;
int wartosc = 5;

void setup() {}

void loop() {
  analogWrite(10, wypelnienie);
  wypelnienie += wartosc;
  wypelnienie = constrain(wypelnienie, 0, 255);
  if ((wypelnienie == 255) || (wypelnienie == 0)) { wartosc = wartosc * (-1); }
  delay(50);
}

Chociaż w założeniach autora było jedynie pulsowanie LEDem. 

Edytowano przez rafal220
Link do komentarza
Share on other sites

@rafal220   po angielsku 😞 , może ktoś zrobi tutaj opis wszystkich funkcji i makr (jak wspomniał @ethanak ), po polsku ? Oczywiście zapoznam się z tym, ale spruję w niedzielę napisać program do tej nieszczęsnej diody :).  I jak czas da, to przetestuję tutejsze pomysły 🙂 Z linuksem niestety utknąłem w miejscu z powodu braku czasu,  zresztą tak jak z innymi rzeczami. 

Tak na marginesie to dzięki dyskusji o DAC zacząłem czytać i rzeczywiście przydałoby się takie coś . No ale jak na razie to siedzę w piaskownicy diodowej i tak się bawię jak przedszkolak .

Link do komentarza
Share on other sites

Bądź aktywny - zaloguj się lub utwórz konto!

Tylko zarejestrowani użytkownicy mogą komentować zawartość tej strony

Utwórz konto w ~20 sekund!

Zarejestruj nowe konto, to proste!

Zarejestruj się »

Zaloguj się

Posiadasz własne konto? Użyj go!

Zaloguj się »
×
×
  • Utwórz nowe...

Ważne informacje

Ta strona używa ciasteczek (cookies), dzięki którym może działać lepiej. Więcej na ten temat znajdziesz w Polityce Prywatności.