Fórum témák

» Több friss téma
Fórum » PIC - USB - PC projekt
 
Témaindító: JohnyBravo, idő: Szept 26, 2006
Lapozás: OK   48 / 55
(#) TakiG válasza szuperman hozzászólására (») Aug 1, 2013 /
 
Az AtUsbHidGui osztályban van a lényeg, a konstruktorban a
usbDevice = new AtUsbHidJni();
sorral létrehoz egy usbDevice osztályt, ezzel be is tölti a dll-eket, van itt némi hibakezelés is.
A következő lényeges dolog a setDeviceConnected metódus, ezzel kapcsolódik az eszközhöz, ill. ezzel is tudsz szétkapcsolódni.
Adat küldéséhez a toogleLed metódusban van egy pl. ez elég egyszerű.
A fogadás kicsit trükkösebb, mert nincs az API-nak callback funkciója, ezért időnként meg kell nézni hogy jött-e adat a PIC-től. Erre létre van hozva egy Timer, amiben a usbDevice.readData() metódust hívogatjuk, ez visszaad egy tömböt, és ha ennek a hossza nem 0, akkor jött adat és feldolgozzuk.
Más nem is érdekes azt hiszem számodra.
A hozzászólás módosítva: Aug 1, 2013
(#) szuperman válasza TakiG hozzászólására (») Aug 1, 2013 /
 
Ilyen metódus nincs: setDeviceConnected.

Ha jól sejtem, akkor a findHidDevice(VID, PID1); metódussal lehet létrehozni a kapcsolatot, de VID -et és a PID -et honnan tudom meg?
(#) _vl_ válasza szuperman hozzászólására (») Aug 1, 2013 /
 
Azokat Te adod az USB-s eszközödnek (vagy használod a gyári alapértékeket, ha van neki ilyen).
(#) szuperman válasza _vl_ hozzászólására (») Aug 1, 2013 /
 
És hol lehet megadni?
(#) _vl_ válasza szuperman hozzászólására (») Aug 1, 2013 /
 
Azt a CCS USB könyvtárának a leírásában keresd meg (nem használok CCS-t, így nem tudom, hogy hogyan kell beállítáni).
VID = Vendor ID, PID = Product ID, ilyen neveken kell futnia ott.
(#) szuperman válasza _vl_ hozzászólására (») Aug 1, 2013 /
 
Nem találok semmi ilyesmit a helpjében.
(#) _vl_ válasza szuperman hozzászólására (») Aug 1, 2013 /
 
Nekem 10 másodpercbe tellett megtalálni, a helyes gugli keresőkifejezés használatával: "ccs usb how to set pid": Bővebben: Link
(#) szuperman válasza _vl_ hozzászólására (») Aug 1, 2013 /
 
Hát én itt egy darab ID -t sem látok. De lehet sokat segítene, ha tudnék angolul.
(#) potyo válasza szuperman hozzászólására (») Aug 1, 2013 /
 
Keress rá a VID vagy a Vendor szavakra a forrásfájlokban, ott kell annak lennie valahol. Abban a fájlban, amiben az usb descriptorok vannak. Talán valami usb_desc, usb_descriptors, vagy ilyesmi nevű fájlban lesz.
(#) _vl_ válasza szuperman hozzászólására (») Aug 1, 2013 /
 
Superman nem tud angolul?!? Hát mivé lett ez a világ...
(#) szuperman válasza potyo hozzászólására (») Aug 1, 2013 /
 
Van egy ilyen benne:
  1. USB_CONFIG_VID & 0xFF, ((USB_CONFIG_VID >> 8) & 0xFF), //vendor id       ==9, 10
  2.          USB_CONFIG_PID & 0xFF, ((USB_CONFIG_PID >> 8) & 0xFF), //product id, don't use 0xffff       ==11, 12


Sajna én ezt nem tudom értelmezni.
(#) potyo válasza szuperman hozzászólására (») Aug 2, 2013 /
 
Ezek az USB descriptor részei, bájtként vannak megadva a kétbájtos VID és PID értékek. Most keresd meg azt a két sort, ami úgy szól, hogy
  1. #define USB_CONFIG_VID xxxx
  2. #define USB_CONFIG_PID yyyy

Talán ott lesznek ugyanabban a fájlban feljebb, de az is lehet, hogy valamelyik másik fájlban. Ez a két sor lesz az, ami megadja a VID és PID azonosítót.

Egyébként amikor feldugod a cuccot az USB-re, akkor az eszközkezelőben megkeresve az USB eszközt, jobbkatt rajta, Tulajdonságok, Részletek fül, és ha ott kiválasztod a legördülő menűből az Eszközpéldány azonosítója bejegyzést, akkor alul látni fogsz egy olyat, hogy
  1. USB\VID_xxxx&PID_yyyy\zzzzzzz

Na itt ebből is az xxxx és az yyyy a VID és a PID.
A hozzászólás módosítva: Aug 2, 2013
(#) szuperman hozzászólása Aug 2, 2013 /
 
Nagyon nem akar ez a dolog össze jönni.

A CCS fájlban megtaláltam azt a bizonyos két sort:
#define USB_CONFIG_PID 0x0020
#define USB_CONFIG_VID 0x0461

Az eszközkezelőben ez szerepel:
USB\VID_80EE&PID_0021\5&18F54CB7&0&1

Egyszerűen nem találja meg.
(#) potyo válasza szuperman hozzászólására (») Aug 2, 2013 /
 
Biztos jókat nézel? Lehet több helyen is ilyen a forrásfájlokban különféle eszközökhöz. Mert egyik VID valami Virtualboxhoz tartozó, a másik meg Windows Pocket PC-hez/Primax electronics-hez tartozó. Ettől függetlenül lehet, hogy jó, de mindenesetre nem térhet el a forráskódban megadott és az eszközkezelőből kiolvasott. Egyik #define sor alá tegyél be valami összevissza szöveget, amin a fordító megakad, hogy biztosan lásd, hogy ezekre a sorokra fut rá fordítás közben. Ha lehúzod az USB-ről, akkor biztosan ez az eszköz tűnik el az eszközkezelőből?

Javaban sajnos nem tudok segíteni.
(#) szuperman válasza potyo hozzászólására (») Aug 2, 2013 /
 
Proteusban szimulálom az áramkört, szóval mindig szerepel az eszközkezelőben. Azt hiszem több rétegben is gond van. Esetleg nem tudnál kisegíteni egy olyan hex el, ami valami egyszerű USB feladatot valósít meg. Pl.: bekapcsol egy ledet ha egy adott csomagok kap. Így legalább 1 réteget ki tudnék zárni. A Proteusban lévő szimulációval szerintem nincs gond, de ki tudja. Az ördög soha nem alszik.
(#) usane hozzászólása Okt 14, 2013 /
 
USB OTG-t csinált már valaki PIC-en? Valyon mennyi hely kell a stack-nak?
(#) potyo válasza usane hozzászólására (») Okt 14, 2013 /
 
Nekem úgy rémlik, hogy van valami helyfoglalásról szóló táblázat a Microchip példakódokhoz társított súgóban.
(#) usane válasza potyo hozzászólására (») Okt 16, 2013 /
 
Hát akkor én béna vagyok, mert egyenlőre nem találtam ilyesmit.
(#) Zsora hozzászólása Dec 9, 2013 /
 
Üdv!
Hivatalosan az USB adatvonalai 90ohm hullámellenálásúak. Mennyire kell ezt betartani paneltervezéskor ha kb. 3...4cm távolság van a mikrovezérlő és a csatlakozó között? Továbbá - a rugalmasság érdekében - kellene elágazás egy A és B csatlakozóhoz, ill. átkapcsoló 2 USB forrás felé. (A mikrovezérlő kapcsolódhatna az A és B csatihoz is, ill. alternatívaként egy UART-USB átalakító is rámehetne a B csatira. Akár mindkettő is működhetne párhuzamosan.) Ez az elrendezés mennyire érinti negatívan a jelminőséget? Van valakinek erről tapasztalata?
(#) kaqkk hozzászólása Dec 27, 2013 /
 
Van egy "projektem " ahol 2pic et kellene adatokkal ellátnom egy usb csatlakozóról , hogyan oldható meg a párhuzamosítás? Kell valami cél ic vagy egyszerűbben is megoldható?
A hozzászólás módosítva: Dec 27, 2013
(#) Hp41C válasza kaqkk hozzászólására (») Dec 27, 2013 /
 
USB HUB vagy egy 3. pic, ami egy összetett USB eszköz. ezetleg az egyik meglévő pic lesz az összetett USB eszköz, ami más csatornán (uart) kommunikál a másikkal.
A hozzászólás módosítva: Dec 27, 2013
(#) kaqkk válasza Hp41C hozzászólására (») Dec 27, 2013 /
 
Köszi a gyors segítséget .
(#) enree hozzászólása Jan 6, 2014 /
 
Sziasztok!
Van egy Synology USB Station2 NAS szerverem. Ehhez USB-n keresztül csatlakozik egy Samsung 3G Station külső merevlemez. A NAS menüjében be lehet állítani, hogy hány perc inaktivitás után kapcsolja le a külső vinyót. Sajnos, akármilyen időt adok meg neki, ha nincs adatforgalom pár perc elteltével kikapcsolja a vinyót. Ez egyrészt idegesítő, másrészt gondolom a vinyónak se túl jó ez a sok leállás/újraindulás. Arra gondoltam, hogy mi lenne, ha megbontanám az USB-kábelt, elvágnám a tápot, egy PIC-el figyelném a NAS-tól érkező 5V-ot, ha az megérkezik, a PIC kimenete kapcsolná be a vinyót, inaktivitást követően ahogy a NAS elveszi az 5V-ot a PIC elkezd számolni és csak X idő múlva kapcsolja le a vinyót. A fizikai megvalósítással nem lenne gondom, csak az a kérdés, hogy ez így működőképes e? Nem okoz e gondot a vinyó működésében?
(#) Zsora válasza enree hozzászólására (») Jan 6, 2014 /
 
Nem hiszem hogy a VBUS (5V) elvételével állítja meg a NAS a lemezt. Inkább csak egy parancsot küld neki, hogy kapcsoljon készenléti módba. Így az 5V figyelésével nem mész semmire. Szerintem...
(#) enree válasza Zsora hozzászólására (») Jan 6, 2014 /
 
Értem... Akkor első körben meg kellene mérnem, hogy mi történik, mikor aludni megy a vinyó.
(#) Prome hozzászólása Jan 8, 2014 /
 
Sziasztok. Tudtok tanácsot adni? Egy régi jojstickot szeretnék a számítógéphez illeszteni.

A probléma az, hogy billentyűzet vezérelt játékokhoz kell.

Tehát a Jojsticnak miután rácsatlakoztattam a számítógépre (gondolom usb porton keresztül) billentyűzetként kellene viselkednie, s a jojstickon kellene valahogy beállitanim melyik állás melyik billentyű megnyomásának felel meg. mert van amelyik játék pl. nyíllal megy jobbra, de van amelyik pl. a vagy s betűvel.

Esetleg van olyan topic ahol ezt már megcsinálták?
A hozzászólás módosítva: Jan 8, 2014
(#) Zsora válasza Prome hozzászólására (») Jan 8, 2014 /
 
Szia!
A legegyszerűbb, ha kibányászod egy olcsó/régi USB v. PS/2 billentyűzet elektronikáját és a gombokat a billenytyűmátrixba kötöd, pl. a nyílak helyére. A játékban meg úgyis többnyire meg lehet változtatni a hozzárendeléseket. Érdemes olyan mátrixpontokat választani, hogy több gomb együttes lenyomásakor se keletkezzen "szellem".
Kissé bonyolultabb amikor saját vezérlőt raksz össze PS/2 csatolással. A PS/2 jóval egyszerűbb az USB HID megoldásnál, ellenben van olyan alaplap amin már nincs PS/2 port.
(#) bbb válasza Prome hozzászólására (») Jan 8, 2014 /
 
Szia!

Ha a joystickod a géppel össze tudod kötni, akkor a joytokey programot tudom a figyelmedbe ajánlani. Nekem USB-s keypadot nem ismerte fel játékom (a Windows simán kezelte, de a játék nem látta, mint joyt), s ez remek áthidaló megoldásnak bizonyult.
(#) Prome válasza bbb hozzászólására (») Jan 8, 2014 /
 
Köszi mindkettőtöknek, de közben kiderült, van egy óriási probléma:
Ez nem is joystick, elirtam. ez távirányitó. a feladat az hog yszimulátor programokat használjak "igazi" modell távirányitóval.

És az az óriási különbség a joystick és e között, hogy a joystickban kapcsolók vannak, itt azonban potmetert teker a kar vagy valami olyasmit, a lényeg az, hogy a kar különböző mértékű megdöntése nem csak "legyom" egy billentyűt" hanem a lenyomás mértékét is megszabja.
ugyhogy ujra kell gondolni az egészet.
a program ehhez lesz irva vagy ilyen programok lesznek beszerezve.

nem tudom ennek amit leritam mi a neve de azt mégkevésbé hogyan is lehet megvalósitani.
de azt hinném nem én találtam ki hanem már megcsinálta valaki, ergó an hozzá pl. mikrokontroller, esetleg kapcsolási rajz s forráskód.

asszem a billenytűzetet mint hasonlatot ugy ahogy van el kell felejtenem.
(#) icserny válasza Prome hozzászólására (») Jan 8, 2014 /
 
Google barátod mit mond? (pl. joystick USB PIC kulcsszavakra) Van sok projekt, de te tudod, hogy melyik áll közelebb az elképzeléseidhez.

Például: Cytron USB Game Controller Kit (van mellette leírás, kapcsolás és mintaprogram is)
Következő: »»   48 / 55
Bejelentkezés

Belépés

Hirdetés
XDT.hu
Az oldalon sütiket használunk a helyes működéshez. Bővebb információt az adatvédelmi szabályzatban olvashatsz. Megértettem