60 nap alatt Arduino #07 - SOS villogó

A "60 nap alatt Arduino" tanfolyam házi feladatai és közvetlen témái
Válasz küldése
Avatar
Robert
Elektronbűvölő
Hozzászólások: 10191
Csatlakozott: 2005. december 9. péntek, 7:00

Re: 60 nap alatt Arduino #07 - SOS villogó

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

Lefordítás után (0022 alatt teszteltem) keletkezik egy HEX állomány. Ezt a C:\Users\<felhasznalo>\AppData\Roaming\Arduino\preferences.txt-ben bekapcsolhatod: mindenfele verbose=true.
Arduino ujraindit. Igy minden belső üzenetet látsz. A feltöltési próba esetén kiírja hol a HEX. Utána ezt kell megetetni a szimulátorral...


Tippek:Virtual BradBoard:
http://arduino.cc/forum/index.php?topic=30365.0;wap2

IOS-ra:
http://handheld.softpedia.com/get/Busin ... 7664.shtml

Néhány szimulátor:
http://www.buildinginternetofthings.com ... imulators/

Protesusban:
http://all-about-embedded.blogspot.hu/2 ... oteus.html
Avatar
Totya87
Újonc
Újonc
Hozzászólások: 5
Csatlakozott: 2011. október 22. szombat, 6:00

Re: 60 nap alatt Arduino #07 - SOS villogó

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

Robert írta:Lefordítás után (0022 alatt teszteltem) keletkezik egy HEX állomány. Ezt a C:\Users\<felhasznalo>\AppData\Roaming\Arduino\preferences.txt-ben bekapcsolhatod: mindenfele verbose=true.
Arduino ujraindit. Igy minden belső üzenetet látsz. A feltöltési próba esetén kiírja hol a HEX. Utána ezt kell megetetni a szimulátorral...


Tippek:Virtual BradBoard:
http://arduino.cc/forum/index.php?topic=30365.0;wap2

IOS-ra:
http://handheld.softpedia.com/get/Busin ... 7664.shtml

Néhány szimulátor:
http://www.buildinginternetofthings.com ... imulators/

Protesusban:
http://all-about-embedded.blogspot.hu/2 ... oteus.html

Szia!
Köszönöm a segítséget! Most volt csak időm kipróbálni amit írtál!
Win7 az oprendszer amivel próbálkozom, de a preferences.txt-ben nem találok ilyen sorokat. Próbáltam 1.0.4-el és az általad írt 0022-es verzióval is. Nem tudom, hogy mi nem jó nálam. Van még valami ötleted?
Telepítettem AVR Studio 4-et, csak abból sem tudok HEX állományt kinyerni. Ez csak nálam nem működik, vagy más is küzd hasonló problémákkal?! :(
Avatar
Robert
Elektronbűvölő
Hozzászólások: 10191
Csatlakozott: 2005. december 9. péntek, 7:00

Re: 60 nap alatt Arduino #07 - SOS villogó

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

1.0.4 alatt meglestem:

C:\Users\<neved>tavir\AppData\Roaming\Arduino\preferences.txt

build.verbose=true
upload.verbose=true

Mellékletben lsd kép: log mutatása....
Nincs meg a kellő jogosultságod a hozzászóláshoz csatolt állományok megtekintéséhez.
Avatar
Totya87
Újonc
Újonc
Hozzászólások: 5
Csatlakozott: 2011. október 22. szombat, 6:00

Re: 60 nap alatt Arduino #07 - SOS villogó

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

Robert írta:1.0.4 alatt meglestem:

C:\Users\<neved>tavir\AppData\Roaming\Arduino\preferences.txt

build.verbose=true
upload.verbose=true

Mellékletben lsd kép: log mutatása....

Köszönöm! Ìgy már sikerült megoldani. :)
vörsi
Újonc
Újonc
Hozzászólások: 4
Csatlakozott: 2014. január 5. vasárnap, 10:47

Re: 60 nap alatt Arduino #07 - SOS villogó

Hozzászólás Szerző: vörsi »

Üdv!

Megcsináltam az SOS villogót,delay-al,egyszerüen.
Gondoltam jó lenne hanggal.
Ez is sikerült.
De nem tudtam "még" sehogy se if parancsal megoldani :roll:

int led = 13;



void setup() {
 
  pinMode(led, OUTPUT);
  digitalWrite(9,LOW);
}


void loop() {
  
  
  digitalWrite(led, HIGH); // turn the LED on (HIGH is the voltage level
  tone (9,1000);
  delay(120); // wait for a second
  digitalWrite(led, LOW); // turn the LED off by making the voltage LOW
  noTone(9);
  delay(120); // wait for a second
  digitalWrite(led, HIGH); // turn the LED on (HIGH is the voltage level
  tone (9,1000);
  delay(120); // wait for a second
  digitalWrite(led, LOW); // turn the LED off by making the voltage LOW
  noTone(9);
  delay(120); // wait for a second
  digitalWrite(led, HIGH); // turn the LED on (HIGH is the voltage level
  tone (9,1000);
  delay(120); // wait for a second
  digitalWrite(led, LOW); // turn the LED off by making the voltage LOW
  noTone(9);
  delay(360); // wait for a second
  digitalWrite(led, HIGH); // turn the LED on (HIGH is the voltage level
  tone (9,1000);
  delay(360); // wait for a second
  digitalWrite(led, LOW); // turn the LED off by making the voltage LOW
  noTone(9);
  delay(120); // wait for a second
  digitalWrite(led, HIGH); // turn the LED on (HIGH is the voltage level
  tone (9,1000);
  delay(360); // wait for a second
  digitalWrite(led, LOW); // turn the LED off by making the voltage LOW
  noTone(9);
  delay(120); // wait for a second
  digitalWrite(led, HIGH); // turn the LED on (HIGH is the voltage level
  tone (9,1000);
  delay(360); // wait for a second
  digitalWrite(led, LOW); // turn the LED off by making the voltage LOW
  noTone(9);
  delay(120); // wait for a second
  digitalWrite(led, HIGH); // turn the LED on (HIGH is the voltage level
  tone (9,1000);
  delay(120); // wait for a second
  digitalWrite(led, LOW); // turn the LED off by making the voltage LOW
  noTone(9);
  delay(120); // wait for a second
  digitalWrite(led, HIGH); // turn the LED on (HIGH is the voltage level
  tone (9,1000);
  delay(120); // wait for a second
  digitalWrite(led, LOW); // turn the LED off by making the voltage LOW
  noTone(9);
  delay(120); // wait for a second
  digitalWrite(led, HIGH); // turn the LED on (HIGH is the voltage level
  tone (9,1000);
  delay(120); // wait for a second
  digitalWrite(led, LOW); // turn the LED off by making the voltage LOW
  noTone(9);
  delay(840);
}
If led == HIGH
(
tone(9,1000)
)

nem müködik.
Hogy kéne kinéznie?
Avatar
Robert
Elektronbűvölő
Hozzászólások: 10191
Csatlakozott: 2005. december 9. péntek, 7:00

Re: 60 nap alatt Arduino #07 - SOS villogó

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

A _bemenetet_ kell nézned:
digitalRead(láb) (remélem jól emlékszem)
vörsi
Újonc
Újonc
Hozzászólások: 4
Csatlakozott: 2014. január 5. vasárnap, 10:47

Re: 60 nap alatt Arduino #07 - SOS villogó

Hozzászólás Szerző: vörsi »

próbáltam azzal is...

Próbáltam már kész programot letölteni a netről ,de hiányzik a függvénytáramból pl: a timer függvény.
Lehet,h valamit nem töltöttem még le?
Avatar
Robert
Elektronbűvölő
Hozzászólások: 10191
Csatlakozott: 2005. december 9. péntek, 7:00

Re: 60 nap alatt Arduino #07 - SOS villogó

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

Timer????
Akkor az nem egy kezdő program, vagy nagyon elbonyolította....

Mit szeretnél megcsinálni?
A bemenet figyelés/kezelés még 2 lecke...
vörsi
Újonc
Újonc
Hozzászólások: 4
Csatlakozott: 2014. január 5. vasárnap, 10:47

Re: 60 nap alatt Arduino #07 - SOS villogó

Hozzászólás Szerző: vörsi »

Szerettem volna egy netes programot betölteni,de már az ellenörzésnél megakad...
Avatar
Robert
Elektronbűvölő
Hozzászólások: 10191
Csatlakozott: 2005. december 9. péntek, 7:00

Re: 60 nap alatt Arduino #07 - SOS villogó

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

A bootloader a chipet _már_ felkonfigurálta sorosportnak....
És a programodból hiányzik, hogy az összes lábat beállítsd az elején kimenetnek (D0...D13-ig)!


Ha kérdés van:
- oldal/programkód linkje, képe, beillesztése kellene :)
- ötletbörze nem ér! (legalábbis nem megy anélkül, hogy minumum segítenél linkkel vagy prg kóddal)
efzsé
Újonc
Újonc
Hozzászólások: 1
Csatlakozott: 2014. január 12. vasárnap, 17:08

Re: 60 nap alatt Arduino #07 - SOS villogó

Hozzászólás Szerző: efzsé »

Sziasztok,

Megpróbáltam csak azt felhasználni amit eddig tudhatunk, alapfokú programozási ismerettel (ennyi van) és józan paraszti ésszel megoldani.
Ezzel az egyszerű megoldással szerintem átlátható és ha minden betűt definiálunk egyszer akkor bármi kiíratható.

Üdv

EfZsé

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

int e=250;                   //morse jelek alap időegységének meghatározása

void setup(){
 pinMode(13,OUTPUT);
}
  
  void ti(){                 //rövid Morse jel 
  digitalWrite(13,HIGH);
  delay(e);
  digitalWrite(13,LOW);
  delay(e);
  }
  
  void ta(){                 //hosszu Morse jel 
  digitalWrite(13,HIGH);
  delay(3*e);
  digitalWrite(13,LOW);
  delay(e);
  }
  
  void s(){                  // s betű Morse jele
    ti();
    ti();
    ti();
  }
  
  void o(){                  // o betű Morse jele
    ta();
    ta();
    ta();
  }
  void szoKoz(){             // szóköz Morse jele
    delay(7*e);
  }
  
void loop(){
 
  s();
  o();
  s();
  szoKoz();
  
}
soma22
Újonc
Újonc
Hozzászólások: 8
Csatlakozott: 2014. január 9. csütörtök, 18:22

Re: 60 nap alatt Arduino #07 - SOS villogó

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

Sziasztok!

Mivel még nem érkezett meg a boardom, így kerestem egy szimulátort, amivel letesztelhettem magam. Mivel programozásban teljesen kezdő vagyok, így a blink alapra támaszkodva ugyan, de sikeresen megcsináltam a házi feladatot.
Bemásolom azért:

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

int led = 13;
void setup() {                
  // initialize the digital pin as an output.
  pinMode(led, OUTPUT);     
}

// the loop routine runs over and over again forever:
void loop() {
  digitalWrite(led, HIGH);   // turn the LED on (HIGH is the voltage level)
  delay(500);               // wait for a second
  digitalWrite(led, LOW);    // turn the LED off by making the voltage LOW
  delay(1000);               // wait for a second
  digitalWrite(led, HIGH);    // turn the LED off by making the voltage LOW
  delay(500);               // wait for a second
  digitalWrite(led, LOW);    // turn the LED off by making the voltage LOW
  delay(1000);               // wait for a second
  digitalWrite(led, HIGH);    // turn the LED off by making the voltage LOW
  delay(500);               // wait for a second
  digitalWrite(led, LOW);    // turn the LED off by making the voltage LOW
  delay(1000);               // wait for a second
  digitalWrite(led, HIGH);    // turn the LED off by making the voltage LOW
  delay(1000);               // wait for a second
  digitalWrite(led, LOW);    // turn the LED off by making the voltage LOW
  delay(1000);               // wait for a second
  digitalWrite(led, HIGH);    // turn the LED off by making the voltage LOW
  delay(1000);               // wait for a second
  digitalWrite(led, LOW);    // turn the LED off by making the voltage LOW
  delay(1000);               // wait for a second
  digitalWrite(led, HIGH);    // turn the LED off by making the voltage LOW
  delay(1000);               // wait for a second
  digitalWrite(led, LOW);    // turn the LED off by making the voltage LOW
  delay(1000);               // wait for a second
  digitalWrite(led, HIGH);    // turn the LED off by making the voltage LOW
  delay(500);               // wait for a second
  digitalWrite(led, LOW);    // turn the LED off by making the voltage LOW
  delay(1000);               // wait for a second
  digitalWrite(led, HIGH);    // turn the LED off by making the voltage LOW
  delay(500);               // wait for a second
  digitalWrite(led, LOW);    // turn the LED off by making the voltage LOW
  delay(1000);               // wait for a second
  digitalWrite(led, HIGH);    // turn the LED off by making the voltage LOW
  delay(500);               // wait for a second
  digitalWrite(led, LOW);    // turn the LED off by making the voltage LOW
  delay(1000);               // wait for a second
}
soma22
Újonc
Újonc
Hozzászólások: 8
Csatlakozott: 2014. január 9. csütörtök, 18:22

Re: 60 nap alatt Arduino #07 - SOS villogó

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

Sziasztok!

Megérkezett az Uno R3 alappanelem, hibátlan, le is teszteltem az eddigi házi feladataimmal, és örömmel konstatáltam, hogy rendben működik:)
Alig várom, hogy a további dolgokat beszerezhessem Róbertnél, csak várom a válaszát:)
spal
Újonc
Újonc
Hozzászólások: 2
Csatlakozott: 2014. február 5. szerda, 17:24

Re: 60 nap alatt Arduino #07 - SOS villogó

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

Sziasztok!
Elkészült a feladat. Így oldottam meg. Sok jó ötlet van erre, sok variáció nincs.

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

/*
  SOS villogtatása.
 */

// Pin 13 has an LED connected on most Arduino boards.
// give it a name:
int led = 13;

// the setup routine runs once when you press reset:
void setup() {
  // initialize the digital pin as an output.
  pinMode(led, OUTPUT);
}
// s betű definiálása
void s() {
  digitalWrite(led, HIGH);
  delay(200);
  digitalWrite(led, LOW);
  delay(200);
  digitalWrite(led, HIGH);
  delay(200);
  digitalWrite(led, LOW);
  delay(200);
  digitalWrite(led, HIGH);
  delay(200);
  digitalWrite(led, LOW);
  delay(600);
}
// o betű definiálása
void o() {
  digitalWrite(led, HIGH);
  delay(600);
  digitalWrite(led, LOW);
  delay(200);
  digitalWrite(led, HIGH);
  delay(600);
  digitalWrite(led, LOW);
  delay(200);
  digitalWrite(led, HIGH);
  delay(600);
  digitalWrite(led, LOW);
  delay(600);
}
// the loop routine runs over and over again forever:
void loop() {
  s();
  o();
  s();
  delay(1000);
}
Avatar
csabeszq
Bitfaragó
Hozzászólások: 678
Csatlakozott: 2012. szeptember 5. szerda, 6:00

Re: 60 nap alatt Arduino #07 - SOS villogó

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

> Sok jó ötlet van erre, sok variáció nincs.

Gondolom kezdő programozó vagy, gratulálunk a probléma megoldásához.

A sok variáció nincs, az így egy kicsit durva, pláne programozói füllel hallva. Kiválasztottál egy favágó megoldást, ami pazarolja ugyan a memóriát, de Ctrl+C és Ctrl+V segítségével könnyen, gyorsan megoldható. Nyilván, ha utánaolvasol a tömböknek, akkor már egy fokkal közelebb kerülsz a kultúrált megoldáshoz, ha pedig megérted, hogy mi az a PROGMEM, akkor eljutsz egy optimális megoldásig.

Mi programozók is időnként copy-paste-elünk a gyorsabb megoldás érdekében, de azért hidd el, van más megoldás is és végleges kódba ilyen nem kerül bele. Pláne ha a memória is kevés.
Válasz küldése