Arduino programozás segítség

Processing/Wiring (illetve C) nyelvű programozási fogások, tippek. (AVR-Duino, Arduino, EthDuino, Diecimila, Severino, Nano, LilyPad)
Avatar
kapu48
Elektronbűvölő
Hozzászólások: 3248
Csatlakozott: 2008. augusztus 29. péntek, 6:00
Tartózkodási hely: Újkígyós

Re: Arduino programozás segítség

HozzászólásSzerző: kapu48 » 2018. december 20. csütörtök, 9:10

Kezdésként tanulmányozd az alapokat:
HOW TO SET UP AN IR REMOTE AND RECEIVER ON AN ARDUINO
http://www.circuitbasics.com/arduino-ir-remote-receiver-tutorial/

Ez egy bővítmény az Operában, nem tudom nálad működik e?
HU: http://translate.google.com/translate?hl=en&sl=en_US&tl=hu_HU&prev=_dd&u=http://www.circuitbasics.com/arduino-ir-remote-receiver-tutorial/
Nálam szuperül fordit teljes veb oldalakat.

vegso79
Újonc
Újonc
Hozzászólások: 4
Csatlakozott: 2018. december 11. kedd, 17:49

Re: Arduino programozás segítség

HozzászólásSzerző: vegso79 » 2018. december 26. szerda, 18:19

Szia nagyon szépen köszönöm a segítséget.

Avatar
Robert
Elektronbűvölő
Hozzászólások: 9925
Csatlakozott: 2005. december 9. péntek, 7:00
Tartózkodási hely: Budapest
Kapcsolat:

Re: Arduino programozás segítség

HozzászólásSzerző: Robert » 2018. december 26. szerda, 18:56

A 60 nap után van a 15 napos ráadás tanfolyam. Abban van az IR vezérlésről szó...
http://www.tavir.hu - a gazda :)

Verjoz
DrótVégénSzéndarab
Hozzászólások: 29
Csatlakozott: 2018. március 13. kedd, 7:18

Re: Arduino programozás segítség

HozzászólásSzerző: Verjoz » 2018. december 26. szerda, 19:59

Miben másab az if ben if mint azif után if eljárás.

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

if(digitalRead(gomb[0]) == HIGH){
      if(data[0] == 10){
         data[0] = 11;
      }else{
         data[0] = 10;}

Avatar
kapu48
Elektronbűvölő
Hozzászólások: 3248
Csatlakozott: 2008. augusztus 29. péntek, 6:00
Tartózkodási hely: Újkígyós

Re: Arduino programozás segítség

HozzászólásSzerző: kapu48 » 2018. december 27. csütörtök, 9:07

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

if(digitalRead(gomb[0]) == HIGH){   // Ha a külső if igaz, megnyomták a gombot?
      if(data[0] == 10){   //az átkapcsolás csak akkor következik be.
         data[0] = 11;
      }else{
         data[0] = 10;}
}
Ahogy te csináltad hibás, nem olvasod be a gomb állapotát
az gomb[1] tőmben csak a gomb címe van, hogy melyik pinre kötötted:
if(gomb[1]==HIGH){   //ez mindig végrehajtódik az 1-es gombmegnyomásakor
  data[1]=11;
  Wire.beginTransmission(2);
  Wire.write(data[1]);
  Wire.endTransmission();
  delay(30);}

if(gomb[1]==HIGH&&data[1]==11){ // ez megismétlődik az előző rutin után, ha a második feltétel is teljesül.
  data[1]=10;
  Wire.beginTransmission(2);
  Wire.write(data[1]);
  Wire.endTransmission();
  delay(30);}
//Felesleges kétszer vizsgálni ugyanazt a feltételt, erre van az else ág.



Ráadásul az én változatom tömörebb is.
És az egész programod kis munkával tovább fejleszthető.
Egy for cikluson belül az összes gomb lekezelhető lenne.
Most csúnya a spagetti kódod!

Verjoz
DrótVégénSzéndarab
Hozzászólások: 29
Csatlakozott: 2018. március 13. kedd, 7:18

Re: Arduino programozás segítség

HozzászólásSzerző: Verjoz » 2019. január 3. csütörtök, 19:41

Mivel elektronikában kezdő vagyok, ezért lehet hogy hülyeséget kérdezek.
Shift regiszterből van olyan amit bemenet ként lehet használni. Még mindíg a nyomógomboknál leragadva kérdezem ezt.

Avatar
Robert
Elektronbűvölő
Hozzászólások: 9925
Csatlakozott: 2005. december 9. péntek, 7:00
Tartózkodási hely: Budapest
Kapcsolat:

Re: Arduino programozás segítség

HozzászólásSzerző: Robert » 2019. január 4. péntek, 4:26

Van.Pl. SN74HC165N
Viszont, hogy a gombnyomásról tudomásod legyen folyamatosan (polling) kell olvasnod.
Akkor már inkább PCF8574 IIC bővítő. Az gombnyomáskor megszakítást is ad.
Vagy MCP23017 vagy MCP23008 vagy MCP23016.

De ha nem kell egyszerre több gombot figyelni, akkor lehet még a gombmátrix is: 8 IO láb : 4x4-es gombmátrix.
De a főprogramban az állandó gombfigyelés erőforrásigényes! (időben)
http://www.tavir.hu - a gazda :)

Verjoz
DrótVégénSzéndarab
Hozzászólások: 29
Csatlakozott: 2018. március 13. kedd, 7:18

Re: Arduino programozás segítség

HozzászólásSzerző: Verjoz » 2019. január 4. péntek, 11:56

Az hogy erőforrás igényes szerintem esetemben nem számít, mivel lámpákat akarok kapcsolgatni, egy gépjárművön.
Csak mégis lehet hogy megkérdezném, hogy az időbeli eltolódás mekkora lehet.
A hw ugy néz ki:
Pro mini master figyeli a gombokat
(A gombmátrixot elvetném mert nem túl strapabíró az alkalmazandó környezetben uv,hideg-meleg,por, viz ...stb)
Majd egy másik mininek az adatot átküldi, és az triacot kapcsol, amiegy nagyobb teljesítményű rellét kapcsol.


Csak azért gondolkodom hogy a gombok is valahogy buszon legyenek beolvasva, mert visszajelzést(gombállapot) is beépitésre kerülne.


Vissza: “Arduino / C-nyelvű programozás (AVR-Duino, EthDuino, Arduino, Diecimila)”

Ki van itt

Jelenlévő fórumozók: nincs regisztrált felhasználó valamint 1 vendég