Hirdetés
- Három játékprofillal készült az új Arc meghajtó
- Befutottak a beágyazott rendszerekbe szánt, tempós Ryzenek
- Mi történik a szemeddel, ha napi 8 órát monitort nézel? | Orvos válaszol
- A Synology visszatáncolt a saját márkás HDD-k megkövetelésének kapcsán
- 350 Hz-es IPS kijelzővel gyarapodott a Samsung portfóliója
-
PROHARDVER!
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
-
DeniL
tag
Sziasztok,
6 nyomógombot "szimulálnék" a GND és 0-5-ig a digitális pinek összeérintésével. A 6 nyomógombot adott sorrendben kellene lenyomni, de ha ez nem így történik, akkor futás közben kellene visszajelzést adnia, hogy "elrontottad". Ne csak a végén ellenőrizzen, ha le lett nyomva mind a 6.
Elkezdtem többféleképpen, de már kezdem feladni és belefáradni. Remélem találok köztetek olyanokat, akik a helyes útra térítenek és segítségemre lesznek. Köszönöm
1.
#include <SoftwareSerial.h>
int button1 = 0;
int button2 = 1;
boolean button1_state = false;
boolean button2_state = false;
int mode = 0;
void buttoncheck1(){
button1_state = !digitalRead(button1);
}
void buttoncheck2(){
button2_state = !digitalRead(button2);
}
void setup() {
Serial.begin(9600);
pinMode(button1, INPUT);
pinMode(button2, INPUT);
buttoncheck1();
buttoncheck2();
}
void loop() {
while (mode == 0){
Serial.println("elso ciklus");
while (mode == 0){
delay(2000);
buttoncheck1();
if (button1_state==true) {
Serial.println("ez az elso");
mode = 1;
}
else {
Serial.println("rossz sorrend 1.");
}
}
}
while (mode == 1){
Serial.println("masodik ciklus");
while (mode == 1){
delay(2000);
buttoncheck2();
if (button2_state==true) {
Serial.println("ez az masodik");
//mode = 3;
}
else {
Serial.println("rossz sorrend 2.");
}
}
}
}2.
#include <SoftwareSerial.h>
int ButtonPins[] = {0, 1};
int buttonState[] = {HIGH, HIGH};
int index;
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 (index = 0; index < numberOfBUTTON; index++)
{
buttonState[index] = digitalRead(ButtonPins[index]);
if (buttonState[index] == LOW) {
Serial.print((String)(ButtonPins[index]));
Serial.print(" elem");
} else {
Serial.println("rossz sorrend");
}
}
delay(2000);
}3.
#include <SoftwareSerial.h>
int scheme[6];
int ints_read[6];
int but_state[6];
void buttoncheck(){
int i,j;
for(j=0;j<6;j++)
{
if(but_state[j] != digitalRead(j))
{
for(i=5;i>0;i--)
ints_read[i]=ints_read[i-1];
ints_read[0] = j+1;
}
but_state[j] = digitalRead(j);
/*Serial.print(ints_read[j]);
Serial.print(" ");
Serial.println(scheme[j]); */
}
}
int match_buttons()
{
int i;
int j;
for(j=0;j<6;j++)
{
if(ints_read[j] == 0)
return j;
if(scheme[j] != ints_read[j])
{
for(i=0;i<6;i++)
ints_read[i] = 0;
return -1;
}
}
return 6;
}
void setup() {
int j;
Serial.begin(9600);
for(j=0;j<6;j++)
{
pinMode(j, INPUT);
ints_read[j] = 0;
}
pinMode(6, INPUT);
}
void loop()
{
boolean match = false;
//gombok FORDÍTOTT sorrendben. A helyes lenyomási sorrend 2,3,5,4,1,6;
scheme[0] = 6;
scheme[1] = 1;
scheme[2] = 4;
scheme[3] = 5;
scheme[4] = 3;
scheme[5] = 2;
delay(2000);
while(true)
{
buttoncheck();
if(match_buttons() == -1)
{
Serial.println("rossz sorrend");
//Az eddig beöltött minta már törölve
}
if(match_buttons() == 6)
{
Serial.println("jó sorrend");
break;
}
delay(100);
}
}
Új hozzászólás Aktív témák
- sziku69: Fűzzük össze a szavakat :)
- Kodi és kiegészítői magyar nyelvű online tartalmakhoz (Linux, Windows)
- Milyen videókártyát?
- Azonnali informatikai kérdések órája
- sziku69: Szólánc.
- Nagyon apró félokos a HMD új mobilja
- Autóápolás, karbantartás, fényezés
- Linux kezdőknek
- Amazon Kindle
- Vírusirtó topic
- További aktív témák...
- BESZÁMÍTÁS! ASROCK B650M R5 7600X 32GB DDR5 1TB SSD RX 7900 XT 20GB Zalman Z1 PLUS A-Data 750W
- iMac Pro 1.1 2017 Intel Xeon W2150B 64GB 1TB VEGA 64 16GB!!! 1 év garancia!
- Bomba ár! Dell Latitude E5440 - i5-4GEN I 4-8GB I HDD v SSD I 14" I HDMI I Cam I W10 I Gari!
- BESZÁMÍTÁS! Lenovo Legion 5 Pro 16 Gamer notebook - i7 13700HX 16GB DDR5 512GB SSD RTX 4060 8GB W11
- Lenovo ThinkPad dokkolók: USB-C 40A9/ 40AY/ 40AS/ Thunderbolt 3 40AC/ Hybrid USB-C DisplayLink 40AF
Állásajánlatok
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest
Cég: Laptopműhely Bt.
Város: Budapest