Arduino programozás segítség

Processing/Wiring (illetve C) nyelvű programozási fogások, tippek. (AVR-Duino, Arduino, EthDuino, Diecimila, Severino, Nano, LilyPad)
Verjoz
DrótVégénSzéndarab
Hozzászólások: 24
Csatlakozott: 2018. március 13. kedd, 7:18

Re: Arduino programozás segítség

HozzászólásSzerző: Verjoz » 2018. május 17. csütörtök, 11:12

if(gomb1=1){gombok++;}
Helyesbïtek
if(gomb1==1){gombok++;}

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

Re: Arduino programozás segítség

HozzászólásSzerző: Verjoz » 2018. május 25. péntek, 13:52

Nézelődők a többi fórum témákban is,
és megakadt a szemem a C prog. codon.
Ahogy a "nagyok csinálják".
De számomra még felfoghatatlan.
Csak egy kérésem lenne.
Ha nem túl nagy kérés!
Az altálam utóbbi megosztott kódot leírnà más prog. nyelven és még meg is osztaná velem meg hogy miben írta csak azért hogy lássam milyen különbségek vannak a nyelvek között. Azt megköszönöm!

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

Re: Arduino programozás segítség

HozzászólásSzerző: Verjoz » 2018. május 25. péntek, 13:56

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

/*jcb powershift transm. c.s.*/

#include "LiquidCrystal.h"

LiquidCrystal lcd(4,5,6,7,8,9);

byte gombok=5;



void setup() {



lcd.begin(16,2);
pinMode(A0,INPUT);//gomb+
pinMode(A1,INPUT);//gomb-
pinMode(A2,INPUT);//uzemi fek
pinMode(A3,INPUT);//kezi fek
pinMode(A4,INPUT);//motor uzem jel

pinMode(2,OUTPUT);//elorre irany
pinMode(3,OUTPUT);//hatra irany
pinMode(10,OUTPUT);//2 es fokozat
pinMode(11,OUTPUT);//3 as fokozat
pinMode(12,OUTPUT);//4 es fokozat
 
}

void loop() {
if(analogRead(A0)==HIGH){
delay(3);
gombok++;}
if(analogRead(A1)==HIGH){
delay(3);
gombok--;}
if(analogRead(A2)==HIGH){
delay(3);
digitalWrite(2,LOW);
digitalWrite(3,LOW);
}
if(analogRead(A3)==HIGH){
delay(3);
digitalWrite(2,LOW);
digitalWrite(3,LOW);
lcd.clear();
lcd.setCursor(0,0);
lcd.print("KEZIFEK BEHUZVA");
delay(1000);
lcd.clear();
delay(100);
}
if(gombok!=5 && analogRead(A4)==LOW){gombok=5;
lcd.setCursor(0,0);
lcd.print("ELINDULASHOZ");
lcd.setCursor(0,1);
lcd.print("NYOMJ FEKET");}
//ide lehet kotni motornak indito megszakitast is
/* pl:if(analogRead(A4)==LOW && analogRead(A2)==HIGH){digitalWite(x,HIGH);*/
//az x pin egy rellet vezerel ami a gepnek az indito jelet szakitja meg
// a motor uzemjelet akar az olajnyomas kapcsolorol is le tudom venni
//ha van olajnyomas akkor megy a motor(elmeletileg) :)

gombok=constrain(gombok,1,9);
lcd.clear();
lcd.setCursor(0,0);
lcd.print("IRANY:");
lcd.setCursor(0,1);
lcd.print("FOKOZAT:");

switch (gombok){
case 5:
digitalWrite(2,LOW);
digitalWrite(3,LOW);
digitalWrite(10,LOW);
digitalWrite(11,LOW);
digitalWrite(12,LOW);
lcd.setCursor(7,0);
lcd.print("URES");
lcd.setCursor(9,1);
lcd.print("0");
break;

case 4:
digitalWrite(2,HIGH);
digitalWrite(3,LOW);
digitalWrite(10,LOW);
digitalWrite(11,LOW);
digitalWrite(12,LOW);
lcd.setCursor(7,0);
lcd.print("HATRA");
lcd.setCursor(9,1);
lcd.print("1");
break;

case 3:
digitalWrite(2,HIGH);
digitalWrite(3,LOW);
digitalWrite(10,HIGH);
digitalWrite(11,LOW);
digitalWrite(12,LOW);
lcd.setCursor(7,0);
lcd.print("HATRA");
lcd.setCursor(9 1);
lcd.print("2");
break;

case 2:
digitalWrite(2,HIGH);
digitalWrite(3,LOW);
digitalWrite(10,LOW);
digitalWrite(11,HIGH);
digitalWrite(12,LOW);
lcd.setCursor(7,0);
lcd.print("HATRA");
lcd.setCursor(9,1);
lcd.print("3");
break;

case 1:
digitalWrite(2,HIGH);
digitalWrite(3,LOW);
digitalWrite(10,LOW);
digitalWrite(11,LOW);
digitalWrite(12,HIGH);
lcd.setCursor(7,0);
lcd.print("HATRA");
lcd.setCursor(9,1);
lcd.print("4");
break;

case 6:
digitalWrite(2,LOW);
digitalWrite(3,HIGH);
digitalWrite(10,LOW);
digitalWrite(11,LOW);
digitalWrite(12,LOW);
lcd.setCursor(7,0);
lcd.print("ELORRE");
lcd.setCursor(9,1);
lcd.print("1");
break;

case 7:

digitalWrite(2,LOW);
digitalWrite(3,HIGH);
digitalWrite(10,HIGH);
digitalWrite(11,LOW);
digitalWrite(12,LOW);
lcd.setCursor(7,0);
lcd.print("ELORRE");
lcd.setCursor(9,1);
lcd.print("2");
break;

case 8:
digitalWrite(2,LOW);
digitalWrite(3,HIGH);
digitalWrite(10,LOW);
digitalWrite(11,HIGH);
digitalWrite(12,LOW);
lcd.setCursor(7,0);
lcd.print("ELORRE");
lcd.setCursor(9,1);
lcd.print("3");
break;

case 9:
digitalWrite(2,LOW);
digitalWrite(3,HIGH);
digitalWrite(10,LOW);
digitalWrite(11,LOW);
digitalWrite(12,HIGH);
lcd.setCursor(7,0);
lcd.print("ELORRE");
lcd.setCursor(9,1);
lcd.print("4");
break;}
}

Avatar
Robert
Elektronbűvölő
Hozzászólások: 9908
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. május 25. péntek, 19:32

Nagy kérés, hogy egyik nyelvről írj át egy másikra.
Tipp: A lefordított HEX-> disasm ->ASm (gépi kód)


Nyelvek közti különbség? Erről 1/2 - 1 éves oktatás van pl felsőfokú intézményben...

Tipp:
leriaat.web.elte.hu/007/PhD/pny/oop.ppt

https://forum.hwsw.hu/topic/88787-progr ... sonlitasa/


De: https://www.google.com/search?q=program ... Dt%C3%A1sa
http://www.tavir.hu - a gazda :)

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

Re: Arduino programozás segítség

HozzászólásSzerző: Verjoz » 2018. május 26. szombat, 23:54

ooops!!!!!!

Bocsi!!

Ezt nem tudtam, hogy ilyen nagy falat egy ilyen mozzanat!
Csak mert ahogy nézegettem a weben pascal, C, Assembly.....stb
van egy alap platforrm és az van hogy csak egyes parancsok és kisebb logikai összetevők különbözőek....
de ahogy látom itt nagyon többről is van szó....
:( :(

megint egy világ tört össze bennem.......... ha életem végéig tanulok akkor se fogom tudni......

Avatar
Robert
Elektronbűvölő
Hozzászólások: 9908
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. május 27. vasárnap, 5:51

Igen. Olyan ez mint bármely más szakma szelete:
- ha életed végéig tanulsz - akkor sem ismered teljesen....

Mitől bölcs valaki? Tudja azt, hogy mit nem tud még....


Azonban: az Arduino az indulásnak jó választásnak tűnik, mert:
- egyszerű utasításokból áll,
- soks-sok minta van hozzá (igaz az egyszerű (rész)feladatokra),
- sok eszköz azonnal élesíthető alatta
- utóbbi időben sok platformra lehet vele fordítani.

Ebből később ki lehet nőni a C/C++ irányába - az alapja úgyis ez a Arduinonak (ez van "mögötte").


Amit meg kell tanulni:
- programról diagram/blokkokban gondolkodni
- a programszervezést/felépítést megtanulni (lineáris programozást elfelejteni)
- sokat tanulni!


Nyelvek:
- Basic ágak
- ASM / gépi kód
- C/C++
- ....

Programozási nyelvek fája (2500+ nyelv van):
http://slideplayer.com/slide/6312477/
A legnagyobbak: https://en.wikipedia.org/wiki/C_(programming_language)#/media/File:Tiobe_index.png
http://www.tavir.hu - a gazda :)

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

Re: Arduino programozás segítség

HozzászólásSzerző: Verjoz » 2018. május 29. kedd, 6:04

Tisztelt Cseh Róbert!
Meg szeretném köszönni a válaszát és leginkább a bevezetést a micro vezérlők világába!
Nagyon rendes Öntől hogy egy ilyen tudást àtad. Persze értem az üzletpolitikájàt is, de ettől függetlenül használható módon lett leadva az anyag.
A 60 + 15 nap alatt tanfolyam egy kezdőnek (szerény személyem is) tökéletes elindulàsi alapot adott. Ha végig is csinálja bárki is ezt a tanfolyamot lelkiismeretesen és önszorgalomból kivesézi a tanfolyam témáját tudása szerint a legjobban, akkor az illető egy minimális tudás megszerzett és ha hosszú időn keresztül meg foglalkozik vele talán programozó is lehet belőle.
De sajnos olyan nincs hogy valaki ezt valamilyen felnőttképzési (OKJ) vagy valamilyen formában az alapokat tovább tudna fejleszteni. Éveket jelentene a tudás elsajátításában.
A tanfolyam végére én is el tudtam dönteni hogy melyik iranyvonalon szeretnék a microkkal foglalkozni annyi rálátást ad a tanfolyam. Csak mikor a legelején jártam még kérdéseket sem tudtam feltenni most így a végére megszámlálhatatlan kérdés merül fel bennem.
Külön köszönet a fórum segítőkész tagjainak is!
Nem búcsúzom maradok e világban és " aktív" tagja a tavir fórumnak.


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 2 vendég