-
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
-
-
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.
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
Hirdetés
- Tokba kerülnek a Pixel 10 mágnesei
- Azonnali alaplapos kérdések órája
- Kazy Computers - Fehérvár - Megbízható?
- Android alkalmazások - szoftver kibeszélő topik
- Villanyszerelés
- Vezetékes FEJhallgatók
- Kompakt vízhűtés
- Milyen okostelefont vegyek?
- Fotók, videók mobillal
- Renault, Dacia topik
- További aktív témák...
- LG 25GR75FG - E-Sport Monitor - FHD 360Hz 1ms - NVIDIA Reflex + G-sync - AMD FreeSync - HDR 400
- BESZÁMÍTÁS! Gigabyte B450M R5 5600X 16GB DDR4 512GB SSD RTX 3060 12GB Rampage SHIVA Seasonic 520W
- DELL Thunderbolt Dock - WD19TB modul 02HV8N (ELKELT)
- Epson Workforce DS-530II Dokumentum szkenner
- Beszámítás! Apple Mac mini 2023 M2 Pro 16GB 512GB SSD számítógép garanciával, hibátlan működéssel
Állásajánlatok
Cég: CAMERA-PRO Hungary Kft
Város: Budapest
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest