60 nap alatt Arduino #08 - Házi feladatok - Knight Rider

A "60 nap alatt Arduino" tanfolyam házi feladatai és közvetlen témái
Avatar
kapu48
Elektronbűvölő
Hozzászólások: 3375
Csatlakozott: 2008. augusztus 29. péntek, 6:00

Re: 60 nap alatt Arduino #08 - Házi feladatok - Knight Rider

Hozzászólás Szerző: kapu48 »

Természetesen!
Az elsőt megírtam neked példának:

Kód: Egész kijelölése

byte pwm=0;     // indulasi alap
byte pwm2=0;     // indulasi alap 2

 void tizenegy(){
pwm2 = 0;
      for(int pwm = 0 ; pwm <= 255; pwm +=5) { 
          analogWrite(11, pwm);         
          delay(15);                            
  }  
  
   for(int pwm = 255 ; pwm >= 0; pwm -=5) { 
        analogWrite(11, pwm);         
        analogWrite(10, pwm2);  // Hogy melyik a következő azt itt döntöd el
        pwm2 += 5;         
       delay(15);                            
  }
}

Izeka
Újonc
Újonc
Hozzászólások: 2
Csatlakozott: 2014. július 17. csütörtök, 16:43

Re: 60 nap alatt Arduino #08 - Házi feladatok - Knight Rider

Hozzászólás Szerző: Izeka »

Köszönöm, ez így jó lett. Nagyjából sikerült megcsinálni azt amit szerettem volna :)
minimodel
Újonc
Újonc
Hozzászólások: 1
Csatlakozott: 2015. február 24. kedd, 12:46

Re: 60 nap alatt Arduino #08 - Házi feladatok - Knight Rider

Hozzászólás Szerző: minimodel »

Sziasztok!

Az egyszerü kódot tettem fel az Arduino Uno R3 SMD-re, müködött is. De amikor kicsit folyamatosabbá akartam tenni a futófényt az idök módosításával, nem tudta felülírni. A feltöltésnél hibaüzenetet kaptam, szinkronizálási hiba gyanánt és a TX LED villogott ritkán rövideket.

Másik kérdésem, hogy az Arduino be tud kapcsolni egyszerre két LED-et? Mert a kód és a gyakorlat szerint is csak egymás után hajtja végre a kódban az utasításokat.

Köszönöm.
Avatar
Robert
Elektronbűvölő
Hozzászólások: 10191
Csatlakozott: 2005. december 9. péntek, 7:00

Re: 60 nap alatt Arduino #08 - Házi feladatok - Knight Rider

Hozzászólás Szerző: Robert »

Egyszerre nem.
Egymás után igen. A köztes idő ~0.01 msec.

Alacsony szinten - kilépve az Arduinoból: van rá mód, ha egy porton vannak a LEDek (azaz lsd adatlapban a összerendelt lábakat...)



Feltöltési tipp: a D0, D1-et SOHA ne használd. Vedd le a LED-eket róla.
Így menni fog a feltöltés.
Avatar
etwg
Pákabűvész
Hozzászólások: 213
Csatlakozott: 2011. február 7. hétfő, 7:00

Re: 60 nap alatt Arduino #08 - Házi feladatok - Knight Rider

Hozzászólás Szerző: etwg »

Hadd rakjak be én is egy fényorgonát... :D

Kód: Egész kijelölése

//  CHASING LIGHT
//  8 LEDs on Ports 2-10

 int unit=100;    //Speed

void setup() {

pinMode(2, OUTPUT);
pinMode(3, OUTPUT);
pinMode(4, OUTPUT);
pinMode(5, OUTPUT);
pinMode(6, OUTPUT);
pinMode(7, OUTPUT);
pinMode(8, OUTPUT);
pinMode(9, OUTPUT);
}

void loop() {
for(int i=2; i<5; i++){   //run from 2-5
digitalWrite(i,HIGH); //turn on LED
digitalWrite(11-i,HIGH);
delay(unit);           //time for ON
digitalWrite(i,LOW);  //turn of LED
digitalWrite(11-i,LOW);
delay(unit);
}

  for(int i=5; i>2; i--){   //run from 2-5
digitalWrite(i,HIGH); //turn on LED
digitalWrite(11-i,HIGH);
delay(unit);           //time for ON
digitalWrite(i,LOW);
digitalWrite(11-i,LOW);  //turn of LED
delay(unit);
}


}
Éljenek a vonatok!

http://www.youtube.com/playlist?list=PLF2674BF4E3765682
Avatar
Verjoz
SzínkódFestő
Hozzászólások: 99
Csatlakozott: 2018. március 13. kedd, 7:18

Re: 60 nap alatt Arduino #08 - Házi feladatok - Knight Rider

Hozzászólás Szerző: Verjoz »

Tisztelt etwg!

Akkor légyszives a diákoknak soronként elmagyarázni, mit miért tettél!
Nem kötekedés, de egy másik témában erről beszélsz. Akkor mutass példát!
De ezt többen is preferálják, hogy a kódban legyen minél több komment, hogy másnak is értelmezhető legyen a leírt betűhalmaz.
De a te kommentjeid elég szűkreszabotrak.
Kérlek fejsd ki bővebben....
Avatar
etwg
Pákabűvész
Hozzászólások: 213
Csatlakozott: 2011. február 7. hétfő, 7:00

Re: 60 nap alatt Arduino #08 - Házi feladatok - Knight Rider

Hozzászólás Szerző: etwg »

Szivesen megteszem, de én annyira kezdö vagyok, hogy 2 hete még az Arduino IDE sem volt a gépemen. Eddig mindig minden programot assemblerben irtam (ahol sokkal szigorubbak és egyöntetüek a szabályok).
Gondoltam, hogy beiratkozok a tanfolyamra, hadd tanuljak valami ujat (meg tudjak a fiamnak néha segiteni), Érdekes modon az általam hiányolt informáciok minden tanfolyambol hiányoznak (közben utánnanéztem idegen -német, angol- forrásokban is). Nem tudom, miért? (pl a zárojelek feladata - márpedig van egy sereg, a változok definicioja stb.) Ezen a tanfolyam is simán átsiklott. A kezdönek mindenféle mintaprogramokbol kell összetákolnia a programot, és csak proba-szerencse alapján sikerül. Már jeleztem Robertnek, hogy nagyon örülnék, ha ezeket a kezdetben tisztáznánk (a 8. lecke a második amiben egyáltalán a programozásrol van szo). Az eddig irt egyszerü programjaimnak a 90%- a azon bukott, hogy valami gond volt a zárojellel és a sugo sem ad erre egyöntetü választ. Ezért nagyon örülnék, ha itt a programozo guruk ebben segitenének. Köszönöm!
Éljenek a vonatok!

http://www.youtube.com/playlist?list=PLF2674BF4E3765682
vargham
Chipgyilok
Hozzászólások: 308
Csatlakozott: 2014. január 8. szerda, 8:32

Re: 60 nap alatt Arduino #08 - Házi feladatok - Knight Rider

Hozzászólás Szerző: vargham »

Nagyon jó kérdést feszegetsz.
A programozás során egy halom szabályt be kell tartani, különben nem működik. Ha a szintaxist szúrod el, akkor szól a fordító. Ha viszont értelmesen küldöd el hülyeséget csinálni a processzort, akkor nem véd meg semmi.
Ha egy kezdőnek az összes ilyen szabályt meg akarod tanítani elsőre, akkor elmegy a kedve az egésztől. Egy tanulási folyamat során ugyanis nagyon fontos a motiváció. A feladat legyen egy kicsivel nehezebb, mint amit éppen meg tudok oldani. De ne sokkal, hogy viszonylag hamar jöjjön a sikerélmény.
Ezért kezdenek az ilyen tanfolyamok meglévő kódok átírásával. Nem kell értened az egészet, mindig csak az éppen tanult résszel foglalkozol, a többit elfogadod, ahogy van. Majd megérted később.
Az Arduino rendszer is pont ilyen. Az AVR mikrokontroller progarmozásával kapcsolatban egy csomó mindent elrejt. Különösen igaz ez a Leonardo USB kezelésére. 4 kB kódot belefordít, amit rendszeresen hívogat is a te kódod mellett.
Ha ennél nagyobb kontrollt szeretnél, akkor hagyd ki az Arduino-t, és használj AVR libc-t közvetlenül. Vagy lehet a C-t is regiszter írás/olvasás szintjén használni, majdnem olyan lesz, mint az Assembly.
Avatar
etwg
Pákabűvész
Hozzászólások: 213
Csatlakozott: 2011. február 7. hétfő, 7:00

Re: 60 nap alatt Arduino #08 - Házi feladatok - Knight Rider

Hozzászólás Szerző: etwg »

Nem kivánok tul mélyen más programok rejtelmeibe elmélyedni. Programozást soha nem tanultam az assemblert is önképzö modon sajátitottam el több évtizede.
Én megelégednék, ha legalább valahol fel lenne sorolva a zárojelek meg egyébb ( nem matematikai vagy logikai) irásjelek funkcioja. (;|{ } |,| () stb). Pl. Loop () {.
A változokkal is elég sok balhé van. Pl. a "value" az egyik helyen HIGH/LOW értéket jelent egy másik sorban egy számot stb. Ezek meglehetösen zavaroak tudnak lenni, ha valaki megszokta a mérnöki pontosságot. Vagy olyasmi, hogy beolvasol valamit valahonnan a kapott értéket ugyanabban a formában nem tudod kiküldeni... pl beolvasok egy bytet, és egy másik 8 portra akarom küldeni, már gondban vagyok.
Szoval jo lenne ilyen dolgokat talán itt megbeszélni, ha már a tanfolyam átfut rajtuk.
Éljenek a vonatok!

http://www.youtube.com/playlist?list=PLF2674BF4E3765682
Avatar
etwg
Pákabűvész
Hozzászólások: 213
Csatlakozott: 2011. február 7. hétfő, 7:00

Re: 60 nap alatt Arduino #08 - Házi feladatok - Knight Rider

Hozzászólás Szerző: etwg »

Itt a progi leirasa:

int unit=100; Alapidö 0,1 sec

A setupban meghatározzuk hova vannak kötve a LED-ek és azokat OUTPUTra irjuk.( port 2-10) printMode (pin, OUTPUT)

A loopban egy "i" változoval oldottam meg a feladatot.

i=2. 2. 10. LED világit
Idö: Unit
2. 10. LED kikapcsol
Idö
I=3. 3. 9. LED bekapcsol
Idö
3. 9. LED kikapcsol

.

i=5. 5.6. LED bekapcsol
Idö
5.6. LED kikapcsol

Innen megfordul az i változása azaz csökkeni fog 5 -röl 2- és a ciklus megfordul azaz a fények szétfutnak.

Remělem az editor nem teszi tönkre a formát.
Éljenek a vonatok!

http://www.youtube.com/playlist?list=PLF2674BF4E3765682
vargham
Chipgyilok
Hozzászólások: 308
Csatlakozott: 2014. január 8. szerda, 8:32

Re: 60 nap alatt Arduino #08 - Házi feladatok - Knight Rider

Hozzászólás Szerző: vargham »

A LOW és a HIGH az szám.
Arduino.h

Kód: Egész kijelölése

#define HIGH 0x1
#define LOW  0x0
Avatar
etwg
Pákabűvész
Hozzászólások: 213
Csatlakozott: 2011. február 7. hétfő, 7:00

Re: 60 nap alatt Arduino #08 - Házi feladatok - Knight Rider

Hozzászólás Szerző: etwg »

Erre már rájöttem, mert ha kiprinteled akkor 0-t meg 1-t kapsz.

De majd mindjárt kiprobálom, hogy pl a digitalWrite elfogadja-e ha beirom, hogy digitalWrite(13,1);
Éljenek a vonatok!

http://www.youtube.com/playlist?list=PLF2674BF4E3765682
Avatar
Verjoz
SzínkódFestő
Hozzászólások: 99
Csatlakozott: 2018. március 13. kedd, 7:18

Re: 60 nap alatt Arduino #08 - Házi feladatok - Knight Rider

Hozzászólás Szerző: Verjoz »

Ob 121 ha még nem látoggatál volna el oda etwg.
Ugyan ez az arduino referenc is.
Leírja a szintaxisokat, példát hoz rá. Nekem nagy segítség.
De megjegyzésként:
Ha az arduino ide nem létezne jómagammal együtt sok más ember is kihagyta volna a hobbi kódírogatást.
Mert egy C nyelv elsajátítása sokkal időigényesebb.
Nem hiába íródott meg ez a szerkesztő, fordító ilyenre.
Természetesen vannak neki hiányai, hátrányai, korlátai de egy kezdőnek tökéletesen elég.
Ha már feszegeted a legtöbb határát az ardu. idéjének, akkor lehet más programozási eljárásokon is gondolkodni.
Avatar
etwg
Pákabűvész
Hozzászólások: 213
Csatlakozott: 2011. február 7. hétfő, 7:00

Re: 60 nap alatt Arduino #08 - Házi feladatok - Knight Rider

Hozzászólás Szerző: etwg »

A fiamnak van egy hivatalos Arduino tanulokönyve (német), ott is nézegettem - nekem föleg a zárojelek meg a vesszök, pontosvesszök okozzák a gondot. A többivel ugy ahogy elboldogulok, ha nem is tartom mindig logikusnak.Az Arduino reference az mindig nyitva, de a logikája meglehetösen idegen. Az eddigi munkám során a változok nagyságrenddel jobban voltak specifikálva, de majd talán a tanfolyam során belejövök. Az 121 meg nem tudom mi.
(Az tény, hogy egy ASM programot két 16 portos I2C modul között kb 3 ora alatt megirtam, az Arduino verzioval meg már 3-4 napja szenvedek. A mintapéldák mennek azaz irni olvasni tudom a modulokat,de az olvasott byteot nem tudom átirni a másik modulba, pedig az kellene csak).:-(
Éljenek a vonatok!

http://www.youtube.com/playlist?list=PLF2674BF4E3765682
Avatar
Verjoz
SzínkódFestő
Hozzászólások: 99
Csatlakozott: 2018. március 13. kedd, 7:18

Re: 60 nap alatt Arduino #08 - Házi feladatok - Knight Rider

Hozzászólás Szerző: Verjoz »

Na látod, pont ezért van a fórum. Ha valamit nem értesz, vagy nem jön össze akkor itt kérhetsz segítséget.
Válasz küldése