- Xiaomi Watch 2 - fast fashion
- Motorola Edge 50 Neo - az egyensúly gyengesége
- Samsung Galaxy S25 Ultra - titán keret, acélos teljesítmény
- Magisk
- Samsung Galaxy A52s 5G - jó S-tehetség
- Telekom mobilszolgáltatások
- iPhone topik
- Samsung Galaxy Watch7 - kötelező kör
- Hivatalos a OnePlus 13 startdátuma
- Samsung Galaxy Watch (Tizen és Wear OS) ingyenes számlapok, kupon kódok
-
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
-
A második egy nagyon elegáns megoldás. Az egyetlen dolog, amire figyelned kell, hogy a for ciklus ne rohanjon kontrolálatlanul.
Az általad megírt verzióban ugyanis egy pillanat alatt végigfut, ennyi idő alatt nem végignyomni a szükséges gombokat.
Ha prellezésmentesek lesznek a gombok amiket használsz, akkor így menni fog:
#include <SoftwareSerial.h>
int ButtonPins[] = {0, 1};
int buttonState[] = {HIGH, HIGH};
//int index; ha globális a változód, a for ciklus csak egyszer fut, hacsak ki nem nullázod utána kézzel
int numberOfBUTTON = 2;
void setup() {
Serial.begin(9600);
/*for (int i = 0; i < numberOfBUTTON; i++) {
pinMode(ButtonPins, INPUT_PULLUP);
}*/
pinMode(ButtonPins[1], INPUT_PULLUP);
pinMode(ButtonPins[2], INPUT_PULLUP);
}
void loop() {
for (int index = 0; index < numberOfBUTTON; index++)
{
bool buttonPressed = false;
while(!buttonPressed)
{
for (int i=0; i<numberOfBUTTIN;i++)
{
if (!digitalRead(ButtonPins[i]) buttonPressed=true;
}
}
/*az fenti rész megoldja, hogy amíg te nem nyomtál semmilyen gombot, addig ne akarja ellenőrizni a lenyomott gombokat. Másképp akkor is ellenőrizne, ha nem nyomsz épp semmit.*/
buttonState[index] = digitalRead(ButtonPins[index]);
if (buttonState[index] == LOW) {
Serial.print((String)(ButtonPins[index]));
Serial.print(" elem");
while(!digitalRead(ButtonPins[index])){} //megakadályozza, hogy rögtön továbblépjen, mikor még a gombot nyomod
} else {
Serial.println("rossz sorrend");
break; //kiugraszt a for ciklusból, ha már egyszer elrontottad
}
}
delay(2000);
}Így hirtelen ezt tudtam, lehet még benne hiba, de erre indulj el.
Majd tájékoztass
Új hozzászólás Aktív témák
- Robogó, kismotor
- Peugeot, Citroën topik
- Filmvilág
- Xiaomi Watch 2 - fast fashion
- Milyen videókártyát?
- AliExpress tapasztalatok
- Kerékpárosok, bringások ide!
- CURVE - "All your cards in one." Minden bankkártyád egyben.
- AMD Ryzen 9 / 7 / 5 9***(X) "Zen 5" (AM5)
- sziku69: Fűzzük össze a szavakat :)
- További aktív témák...
- Bomba ár! HP EliteBook 840 G5 - i5-8G I 8GB I 128GB SSD I 14" FHD Touch I HDMI I Cam I W11 I Gari!
- AKCIÓ! Lenovo Legion Slim 5 Gamer notebook - R7 7435HS 16GB RAM 1TB SSD RTX 4070 8GB GDDR6 WIN11
- Xiaomi Redmi Note 10 Pro 128GB, Kártyafüggetlen, 1 Év Garanciával
- LG K61 128GB, Kártyafüggetlen, 1 Év Garanciával
- Huawei Nova Y90 128GB, Kártyafüggetlen, 1 Év Garanciával
Állásajánlatok
Cég: FOTC
Város: Budapest