- Térerő gondok, tapasztalatok
- Android alkalmazások - szoftver kibeszélő topik
- Netfone
- Fotók, videók mobillal
- Hónap végén érkezik a Xiaomi Band 10, ára is van
- Tokba kerülnek a Pixel 10 mágnesei
- Milyen okostelefont vegyek?
- Igazi csúcskészülék lett a Poco F7 Ultra
- Samsung Galaxy S21 FE 5G - utóirat
- iPhone topik
-
Mobilarena
Arduino hardverrel és szoftverrel foglakozó téma. Minden mikrovezérlő ami arduinoval programozható, és minden arduino program, board, és hardverrel kapcsolatos kérdések helye.
Új hozzászólás Aktív témák
-
balintarduin
újonc
Sziasztok!
Nekem egy olyan kérdésem lenne, milyen megoldással tudok olyan programot készíteni, aminek annyi a lényeg, hogy egy adott idő pl 04:55 ig számoljon vissza az aktuális pontos időtől.
DS3231 Real Time modult használok. Egyáltalán hogy tudok visszaszámlálást csinálni.Előre is köszönöm a segítséget!
-
balintarduin
újonc
Sziasztok! Tapasztalt programozót keresek, menü készítési feladat miatt, én nem tudom megcsinálni, de sürgős lenne! Annyira, hogy kifizetem, ha megírja azt a programot amit szeretnék, az alapokat biztosítani tudom!
-
balintarduin
újonc
Sziasztok!
Korábban már a menürendszert sikerült elkészítenem, változókkal és amelyekben tömbökben tárolom a kiírt adatot. Most tovább lépni szeretnék, és egy olyan kérdésem lenne, hogy hogyan tudom megcsinálni azt, hogy beírok egy idézőjelbe előre beírt számot, pl,43 és ezt kiírja a kijelzőre, ahogy begépelem a 4x3-as membrános billentyűzeten és utána az ehhez a számhoz tartozó parancsot végrehajtja. Amennyiben nem írtam be ezt, vagy jót, akkor nem történik semmi.
És valahogy úgy gondoltam, hogy tömbökbe teszem az összes számot amire szeretnék cselekvést, és egy ifekbe beírkálom a számát, hogy ha ezt adom be neki, akkor az ahhoz tartozó függvényt, parancsot, (pl kapcsoljon be egy ledet) fusson le.Előre is köszönöm a segítséget!
-
balintarduin
újonc
válasz
tibi-d #10308 üzenetére
Rendben, köszönöm a segítséget! Még fel merült bennem, hogy hogyan tudok olyan if szerkezetet csinálni, hogy ha a 4x3 membrános billentyűzeten beírok egy számot, pl. 51 akkor ehhez a számhoz elolvassa az adott feladatot, pl, hogy megnyissa a menüt. Ezt egy egyszerű váltózóval meg lehet oldani? Ráadásul nekem nem csak egy szám kellene, hanem elég sok (buszjárat számok), pl, az 45-ös számot beírom akkor annak a menüjét hozza be. Vagy ha az 53-as akkor az ugyan ilyen számmal jelzett menüt hozta be.
-
balintarduin
újonc
válasz
Teasüti #10304 üzenetére
Itt van menümnek a kódja. Azt csinálja, hogy a kijelzőn a fel le gomb hatására 1-et hozzáad és így le megy a ">" jel a kijelzőn.
#include <Wire.h>
#include <LiquidCrystal.h>
LiquidCrystal lcd(A0, A1, A2, A3, A4, A5);
int upButton = 48;
int downButton = 44;
int selectButton = 28;
int menu = 1;
void setup() {
pinMode(upButton, INPUT_PULLUP);
pinMode(downButton, INPUT_PULLUP);
pinMode(selectButton, INPUT_PULLUP);
Menu1();
}
void loop() {
//első menü fügvényei
if (!digitalRead(downButton)){
menu++;
Menu1();
delay(100);
while (!digitalRead(downButton));
}
if (!digitalRead(upButton)){
menu--;
Menu1();
delay(100);
while(!digitalRead(upButton));
}
if (!digitalRead(selectButton)){
Menu2();
Menu1();
delay(100);
while (!digitalRead(selectButton));
}
// második menü függvényei
if (!digitalRead(downButton)){
menu++;
Menu2();
delay(100);
while (!digitalRead(downButton));
}
if (!digitalRead(upButton)){
menu--;
Menu2();
delay(100);
while(!digitalRead(upButton));
}
if (!digitalRead(selectButton)){
Menu3();
Menu2();
delay(100);
while (!digitalRead(selectButton));
}
}
void Menu1() {
switch (menu) {
case 0:
menu = 1;
break;
case 1:
lcd.clear();
lcd.setCursor(0, 0);
lcd.print(">MenuItem1");
lcd.setCursor(0, 1);
lcd.print(" MenuItem2");
break;
case 2:
lcd.clear();
lcd.setCursor(0, 0);
lcd.print(" MenuItem1");
lcd.setCursor(0, 1);
lcd.print(">MenuItem2");
break;
case 3:
lcd.clear();
lcd.print(">MenuItem3");
lcd.setCursor(0, 1);
lcd.print(" MenuItem4");
break;
case 4:
lcd.clear();
lcd.print(" MenuItem3");
lcd.setCursor(0, 1);
lcd.print(">MenuItem4");
break;
case 5:
menu = 4;
break;
}
}
void Menu2() {
switch (menu) {
case 0:
menu = 1;
break;
case 1:
lcd.clear();
lcd.setCursor(0, 0);
lcd.print(">Staticmenu1");
lcd.setCursor(0, 1);
lcd.print(" Staticmenu2");
break;
case 2:
lcd.clear();
lcd.setCursor(0, 0);
lcd.print(" Staticmenu1");
lcd.setCursor(0, 1);
lcd.print(">Staticmenu2");
break;
case 3:
lcd.clear();
lcd.print(">Staticmenu3");
lcd.setCursor(0, 1);
lcd.print(" Staticmenu4");
break;
case 4:
lcd.clear();
lcd.print(" Staticmenu3");
lcd.setCursor(0, 1);
lcd.print(">Staticmenu4");
break;
case 5:
menu = 4;
break;
}
}
void Menu3() {
switch (menu) {
case 0:
menu = 1;
break;
case 1:
lcd.clear();
lcd.setCursor(0, 0);
lcd.print(">Thirdmenu1");
lcd.setCursor(0, 1);
lcd.print(" Thirdmenu2");
break;
case 2:
lcd.clear();
lcd.setCursor(0, 0);
lcd.print(" Thirdmenu1");
lcd.setCursor(0, 1);
lcd.print(">Thirdmenu2");
break;
case 3:
lcd.clear();
lcd.print(">Thirdmenu3");
lcd.setCursor(0, 1);
lcd.print(" Thirdmenu4");
break;
case 4:
lcd.clear();
lcd.print(" Thirdmenu3");
lcd.setCursor(0, 1);
lcd.print(">Thirdmenu4");
break;
case 5:
menu = 4;
break;
}
}
} -
balintarduin
újonc
Sziasztok! Egy Arduinos projektem kapcsán kérdeznék tapasztaltabbakat. Egy menü rendszert próbálok készíteni, ahol egy 2x16-os lcd kijelzőn váltogatom a képet egy Fel és Le nyomógombbal. Sikerült addig eljutnom, hogy egy Enter gomb megnyomására tovább lép egy ugyan olyan menübe. A problémám ott van, hogy ha lefelét nyomok, nem tudja eldönteni, hogy melyik menüben menjen le. Az elsőben vagy a másodikban. Értem, hogy azért csinálja ezt, mert mindkettő menü kezelő if utasítása a loop-ban van benne, és nem tudom, hogy hogy tudnám megmondani neki, hogy az első menüben van akkor ott menjen le, ha megnyomom a lefelét, ha pedig a másodikban van, akkor ott menjen lefele.
Köszönöm a segítséget, előre is.
Új hozzászólás Aktív témák
Hirdetés
- Építő/felújító topik
- Térerő gondok, tapasztalatok
- Debrecen és környéke adok-veszek-beszélgetek
- Android alkalmazások - szoftver kibeszélő topik
- Házi barkács, gányolás, tákolás, megdöbbentő gépek!
- Kecskemét és környéke adok-veszek-beszélgetek
- Netfone
- Kerékpársportok
- Xbox tulajok OFF topicja
- Székesfehérvár és környéke adok-veszek-beszélgetek
- További aktív témák...
- BESZÁMÍTÁS! MSI MAG321QR 32 165Hz WQHD 1ms monitor garanciával hibátlan működéssel - használt
- ÁRGARANCIA!Épített KomPhone i5 13400F 16/32/64GB RAM RX 7700 XT 12GB GAMER PC termékbeszámítással
- Microsoft Windows, Office & Vírusirtók: Akciók, Azonnali Szállítás, Garantált Minőség, Garancia!
- Dell D6000 univerzális dokkoló USB-C/ USB-A, DisplayLink & Dell WD15 (K17A) USB-C + 130-180W töltő
- Bomba ár! Lenovo ThinkPad T490s - i7-8GEN I 16GB I 256SSD I 14" WQHD HDR I Cam I W11 I Gari!
Állásajánlatok
Cég: PC Trade Systems Kft.
Város: Szeged
Cég: CAMERA-PRO Hungary Kft
Város: Budapest