Hirdetés
- sziku69: Fűzzük össze a szavakat :)
- gban: Ingyen kellene, de tegnapra
- Luck Dragon: Asszociációs játék. :)
- sh4d0w: Kalózkodás. Kalózkodás?
- localhost: Hatvan időegység. [Update 65]
- VHS digitalizálás
- Sub-ZeRo: Euro Truck Simulator 2 & American Truck Simulator 1 (esetleg 2 majd, ha lesz) :)
- sziku69: Szólánc.
- Meggyi001: Eldugott helyek Párizsban, amiket jó eséllyel még nem láttál... 3. rész
- Ndruu: Segíts kereshetővé tenni a PH-s arcképeket!
-
LOGOUT
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
-
-
válasz
Brain75
#17034
üzenetére
Túl konkrét vagy, az a baj.

Az eszköz gondolom egy játékvezérlő, a készülék funkciója pedig valamiféle csalás lenne.![;]](//cdn.rios.hu/dl/s/v1.gif)
A feladatot valószínűleg meg lehet oldani a fent említett usb host shielddel, és egy Arduino Pro micro-val olyan módon, hogy rögzíteni kell a gamepad jeleit a host shielden keresztül, a pro micro-val pedig egy másik gamepad-et emulálni. Némi késleltetéssel lehet számolni. -
válasz
Brain75
#17032
üzenetére
Szia! Az első két bekezdés egyszerűnek tűnik, mintha egy tanítható infra távirányítóról lenne szó.
A gondok itt kezdődnek:
A jel USB-n jön és USB-n kell továbbmennie
Erről kicsit többet kéne tudni, mert elég sokféle jel közlekedhet usb-n, viszont Arduinoval csak egy részét lehet feldolgozni vagy emulálni. Valószínűleg szükség lesz egy olyan eszközre, amit pont kettővel feletted linkelt a kolléga. -
válasz
Brain75
#14998
üzenetére
Ja, hogy ja! Ez a fontos információ kimaradt, hogy az analóg és a gomb mindig együtt kapja az inputot. Ez esetben valóban weiss kolléga megoldása kapja a pontot.

Egy apró változtatást eszközölnék csak a kódján:const int kapcsolo = 7;
const int gomb = 9;
const int poti = A0;
void setup(){
pinMode(kapcsolo, INPUT_PULLUP);
pinMode(gomb, INPUT_PULLUP);
pinMode(poti, INPUT);
}
void loop(){
int poti_ertek = 0;
if(digitalRead(kapcsolo)){
poti_ertek = analogRead(poti);
}
else{
poti_ertek = digitalRead(gomb)?1023:0;
}Így a poti_ertek változóban mindig egy 0-1023 közti szám lesz, nem szükséges a kapcsoló állását később külön vizsgálni. A gombnál feltételeztem, hogy az alsó (kiengedett) állásban van megnyomva (poti_ertek=0).
-
válasz
Brain75
#14998
üzenetére
Fejből írom, de kb. erre gondoltam:
const int kapcsolo = 7;
const int gomb = 9;
const int poti = A0;
void setup(){
pinMode(kapcsolo, INPUT_PULLUP);
pinMode(gomb, INPUT_PULLUP);
pinMode(poti, INPUT);
}
void loop(){
bool gomb_lenyomva = false;
int poti_ertek = 0;
if(digitalRead(kapcsolo)){
poti_ertek = analogRead(poti);
}
else{
gomb_lenyomva = digitalRead(gomb);
}
} -
válasz
Brain75
#14991
üzenetére
Szerintem értelmetlen ez a megszakító gomb, mert egyszerű logika elég lenne hozzá: a nyomógomb felülírja az analóg jelet. Ha a nyomógomb nincs lenyomva, az analóg jelet olvasod be, ha a nyomógomb le van nyomva, az analóg állásától függetlenül 100% állást küldesz. Így akár felváltva is lehet használni a kart és a gombot.
De ha mindenképpen ragaszkodsz hozzá, akkor olyan javaslatom van, amihez 1db analóg láb is elég: a potméter marad fixre bekötve. A VCC és az A0 közé pedig sorba kötve a nyomógomb és a kapcsoló, ami kiiktatja.
Működés: az A0-on az analóg jelet kell olvasni. A nyomógomb 5V-ra húzza az A0-t, a poti állásától függetlenül. A kapcsoló pedig ezt meg tudja akadályozni.
Nem jó, az analóg GND felőli állásában rövidzárlatot csináltam
Én az első megoldást csinálnám. Ha használnom kellene is inkább egy ilyen megoldást preferálnék, mint kapcsolgassam ide-oda. Kivéve, ha a megrendelőnek kifejezett kívánsága volt (de akkor meg lebeszélném róla
) -
-
-
-
-
válasz
Brain75
#14982
üzenetére
Szia! Nem értem a logikát.

A potméter egy feszültségosztó, a VCC és a GND közti 5V-ot osztja le, az A0 ezt a feszültséget méri. Ha megszakítod a GND-t, nincs mit osztani, az A0 megkapja a VCC-t.
Miért van szükség erre? Ha egyszerre csak egy bemenetre van szükséged, akkor olvasd csak az egyiket a programból.
Új hozzászólás Aktív témák
- NVIDIA GeForce RTX 3080 / 3090 / Ti (GA102)
- Kerékpárosok, bringások ide!
- Akciófigyelő: Black Friday kedvezmények az EarFun cuccaira
- Építő/felújító topik
- Villanyszerelés
- Android alkalmazások - szoftver kibeszélő topik
- Projektor topic
- Hardcore café
- Telekom otthoni szolgáltatások (TV, internet, telefon)
- Spórolós topik
- További aktív témák...
- Dell Inspiron 3593 15,6 Fullhd i7 16Gb SSD256Gb HDD1TB Win11pro
- Újszerű bivaly Lenovo Thinkpad T16 gen3 (13.gen Core Ultra 7 32Gb DDR5 1 Tb SSD) MAGYAR 30 hó GARI!
- Bivaly Lenovo T14 gen5 (Core Ultra 7 32Gb DDR5 1 Tb SSD) laptopom eladó 30 hónap gyártói garanciával
- Bomba ár! Dell Latitude 3410 - i3-10110U I 8GB I 256SSD I HDMI I 13,3" FHD Touch I Cam I W11 I Gari
- Bomba ár! Dell Latitude E5550 - i5-5GEN I 8GB I 128SSD I 15,6" FHD Touch I HDMI I W10 I Cam I Gari!
- HIBÁTLAN iPhone 12 mini 64GB Purple -1 ÉV GARANCIA - Kártyafüggetlen, MS3481, 100% Akksi
- Bomba ár! HP ProBook 640 G4 - i5-8GEN I 8GB I 256GB SSD I 14" FHD I Cam I W11 I Garancia!
- Most èrkezett! Kingston 1TB NV3!
- ÁRGARANCIA!Épített KomPhone Ryzen 7 5700X 16/32/64GB RAM RTX 5060 Ti 16GB GAMER termékbeszámítással
- Game Pass Ultimate előfizetés azonnal, problémamentesen, méghozzá OLCSÓN! Immáron 8 éve!
Állásajánlatok
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest
Cég: Laptopműhely Bt.
Város: Budapest


![;]](http://cdn.rios.hu/dl/s/v1.gif)
).





ekkold
