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   8 / 55
(#) Xenen Mo válasza gyengus hozzászólására (») Dec 19, 2008 /
 
Köszönöm! Egy másik panelon kipróbáltam mükszik az a bootloader(18F4550). A gondom hogy nagyon elöre szaladtam, azaz ez a panel amit most csináltam nem az USBről kapja a tápot(amin frankón mükszik az USB táplálású) most néztem meg az adatlapban hogy mi az ajánlott(SELF-POWER ONLY) Viszont ott felkell használni egy portlábat 2 db 100k R felhasználásával. Néztem microchipes dokumentációkat és van ahol ráköti a PIC VUSB lábára az USB 5V-ját.
PIC18F87J50 adatlapjában egy kicsitt bövebbre veszi a szót. 331 oldal jobb hasáb ill a melléklet. No de akkor itt már maga a port lábat is kéne szabályoznia a bootloadernek.

SPO.JPG
    
(#) icserny válasza Xenen Mo hozzászólására (») Dec 19, 2008 /
 
Ha 18F4550-ről van szó,akkor inkább a PICDEM FSUSB kártya felhasználói kézikönyvét nézegesd, elvégre ahhoz való a közzétett 18F4550-es bootloader. Itt az USB-ről jövő VBUS 100k-val megy GND-re, 4,7k-val pedig RA1-re van kötve.
(#) szilva válasza Xenen Mo hozzászólására (») Dec 19, 2008 /
 
Idézet:
„van ahol ráköti a PIC VUSB lábára az USB 5V-ját”


Ezt nagyon rosszul nézted, ott nem 5V-ot köt rá, hanem közben van egy 3.3V-os stabilizátor is.! A VUSB-n 3.3V-nak kell lennie, ez származhat belső regulátorból úgy, hogy a PIC 5V tápfeszt kap, vagy külsőleg előállított módon.

A 4550 és családja még 5V-os, és van benne 3.3V-os stabilizátor az USB-hez, a 67J50 és társai pedig már 3.3V-osak, emiatt az USB-hez nem is kell belső stabilizátor, ellenben a tápfeszéhez kell, ha az USB 5V-járól akarod táplálni. Az a portláb egyébként csak annak az érzékelésére szolgál, hogy az USB csatlakozóba van-e dugva számítógép. Ezt szoftveresen kezeli le, szerintem akár ki is lehet iktatni, ha egy kicsit belemászik az ember a firmware-be.
(#) Xenen Mo válasza icserny hozzászólására (») Dec 19, 2008 /
 
Igen abból néztem, de most gondolokodtam azon hogy miért van az USB 5Vja rákötve a VUSBre amikor ott egy 3.3V regulátor kimenet van, de most esett le hogy azt ki lehet kapcsolni, és akkor bootloader #pragma-nal ki kell kapcsolnom és rákötni az USB 5Vját, remélem jó a meglátásom.
(#) Xenen Mo válasza szilva hozzászólására (») Dec 19, 2008 /
 
Pont egyszerre irtunk... Én nem látok 3.3V-os regulátort egyedül 7805 van a kapcsolásban, de az sem az USB 5Vjára van csatlakoztatva. PICDEM FS USB datasheet
(#) icserny válasza Xenen Mo hozzászólására (») Dec 19, 2008 /
 
Idézet:
„Igen abból néztem, de most gondolokodtam azon hogy miért van az USB 5Vja rákötve a VUSBre amikor ott egy 3.3V regulátor kimenet van”

Nics rákötve. A VUSB-re (ami az adatlap szerint egy belső 3,3 V-os szabályozó) csak egy szűrőkondenzátor van rákötve.

Az USB 5 V-ja nem a VUSB-re, hanem VBUS-ra van kötve, ami nem ugyanaz! VBUS egyrészt a már említett ellenálláson RA1-re megy (csatlakoztatás figyelése), másrészt - ha a kártya nem kap saját táplálást, akkor a FET-es kapcsolón és a D5 diódán keresztül tápfeszültséget szolgáltat a kártyának. (megspóroltak egy jumpert... )

Idézet:
„ki lehet kapcsolni, és akkor bootloader #pragma-nal ki kell kapcsolnom és rákötni az USB 5Vját, remélem jó a meglátásom.”


NEM!!!!! Külső táplálásnál is csak 3,3V-ot szabad ráadni!!!

Idézet:
„When the regulator
is disabled, a 3.3V source must be provided through
the VUSB pin for the internal transceiver.”
(#) potyo válasza szilva hozzászólására (») Dec 19, 2008 /
 
Idézet:
„Ezt szoftveresen kezeli le, szerintem akár ki is lehet iktatni, ha egy kicsit belemászik az ember a firmware-be.”


Nemis kell nagyon belemászni, csak valami VBUS_SENSE vagy valami ilyesmi nevű define sort kell kikommentezni belőle. Úgy emlékszem, a main-ben van valahol az alja felé.
(#) Xenen Mo válasza icserny hozzászólására (») Dec 19, 2008 /
 
OK, meg van, elnéztem VBUSt VUSBnek...
Most viszont totál meg vagyok kavarodva, abban sem vagyok biztos akkor egy kicsit rá kell terhelni a VBUS vonalra.
Jelen pillanatban a szimpla D+- bekötésével ill a VUSBn lévő kondival nem nagyon akarmenni, nem nagyon látom hogy mi a gond...
(#) potyo válasza Xenen Mo hozzászólására (») Dec 19, 2008 /
 
A SENSE dologra rákerestél a kódban? Alapból az engedélyezve van, és akkor oda is tápot kell adni, vagy kikapcsolni és újrafordítani.
(#) szilva válasza Xenen Mo hozzászólására (») Dec 19, 2008 /
 
Ok, valószínűleg kicsit megkavart, hogy a 67J50-es család adatlapjával példálóztál, annak a rajzaiban a VBUS és a Vdd/VUSB között van egy szürke téglalap, ami mellé 3.3V regulator van írva - elég hülye jelölés, de fogadjuk el a szöveges magyarázatot, amit mellé tettek.

Azaz a 67J50-nél azért lehet összekötve a Vdd és a VUSB, mert ott a CPU is 3.3V-ról jár, nem is kaphat 5V-ot. Ahogy a 4550-es családnál sem kaphat 3.6V-nál többet a VUSB láb, küldő táplálás esetén.

Amit írtál, hogy D+, D- és Vdd van bekötve, az jó kell, hogy legyen, csak ilyenkor a VUSB lábra kell egy külső hidegítő kondenzátor (talán 220-470nF a javasolt), és be kell kapcsolni a belső 3.3V-os stabilizátorát a VREGEN konfigurációs bittel. Ha jól áll ez a bit, akkor a VUSB lábon 3.3V-ot kell mérni feszültségmérővel.
(#) Xenen Mo válasza potyo hozzászólására (») Dec 19, 2008 /
 
Ilyet nem nagyon találtam.

main.c
    
(#) potyo válasza Xenen Mo hozzászólására (») Dec 19, 2008 /
 
Akkor valamelyik másik fájlban kell lennie, nézd meg az USBCheckBusStatus() föggvényt. Bár itt azt írja a kommentben, hogy módosítva lett, hogy mindig engedélyezze az usb modult, de azért keress rá.
(#) Xenen Mo válasza szilva hozzászólására (») Dec 19, 2008 /
 
Szóval khhmm... meg van a probléma oka, amikor a nyákot terveztem haver mondta hogy ha az USB földjét rákötöm a táp földjére akkor föld hurok keletkezik... Mondtam neki jah és átgondolás nélkül ki is vettem azt a kötést... Nah most vissza raktam. Mondjuk az is volt a fejemben hogy csak ugy lebeg az adat vezeték, de ha haver...
Azért remélem tényleg nincsen föld hurok Köszönöm a segítséget!
(#) Xenen Mo válasza potyo hozzászólására (») Dec 19, 2008 /
 
Jah majd elmerülök benne, a szoftveres rész jobban érdekel meg megy is hál'Isten. Köszönöm!
(#) potyo válasza Xenen Mo hozzászólására (») Dec 19, 2008 /
 
Az usb-nek szüksége van a földvezetékre menet közben SE0 állapot felismerése miatt.
(#) DaeMonS hozzászólása Márc 3, 2009 /
 
lehet hogy butan hangzik a kerdes,de nem sikerult eddig kitalalnom :S
melyik lehet a legegyszeribb fw amit beleegethetek a 4550be es ami az xpnek mondjuk legegyszerubb modon szolgaltat adatokat? pl, 10 analog portrol olvasok es beirom az erteket 1 regiszterbe, ezt kiolvasom xp oldalon. 10 portra irok, ugy hogy regiszterekbe irok,es azokat kiolvasva a pic vegrehajtja.
ilyesmire van vkinek 5lete?
koszi
(#) watt válasza DaeMonS hozzászólására (») Márc 3, 2009 /
 
Ha nem csak kisbetűvel írnál és nem idióta rövidítésekkel, érthetetlen mondatrészekkel(bár mondatrészeket eleve nem fedezek fel), akkor lenne, de így inkább nincs kedvem válaszolni.
(#) NeoCorteX válasza watt hozzászólására (») Márc 3, 2009 /
 
Naa Watt légyszí. Akkor mások kedvéért. :worship:
Én pl most újítottam 18f14k50-est és HID gamecontrollert szeretnék belőle.

(#) gyengus válasza DaeMonS hozzászólására (») Márc 3, 2009 /
 
A Microchip CDC firmware-t javaslom, mert COM portként fog látszani Windows és Linux alatt. Ez megkönnyíti a PC oldali program írását.
Természetesen át kell írni a CDC firmwaret, hogy azt csinálja amit szeretnél és Neked kell megírnod a PC oldali programot is.
(#) lukr hozzászólása Márc 6, 2009 /
 
Sziasztok!

A példa "Simple Custom Demo"-t akarom lefordítani 18F4550-re. Legújabb MPLab (8.2) és C18, 64bit XP, és a módosítatlan kódra ezt a hibát dobja:
"...Generic HID - Firmware\main.c:633:Error: syntax error"
A kérdéses sor:
" if(!(HIDRxHandleBusy(USBOutHandle))) //Check if data was received from the host."

Ha az "USBOutHandle"-t kicserélem "1"-re, akkor továbbmegy ezen a soron, és leakad a következő sornál ugyan ezzel a hibával, ahol USBOutHandle, vagy USBInHandle van.
Ötlete valakinek?
(#) potyo válasza lukr hozzászólására (») Márc 6, 2009 /
 
A HIDRxHandleBusy() nem valami #define-al van létrehozva? Mert ha igen, akkor ugyanaz van, mint amit nekem server2003 alatt produkál a C18. A 64 bites XP elvileg a server2003 kerneljére épül, így nem lenne meglepő ez.

Valamiért a preprocesszor nem dolgozik rendesen ezen operációs rendszerek alatt, és nem cseréli le a define-os cuccokat fordítás előtt. Megoldást még nem láttam rá, valaki írta a Microchip fórumán, hogy másik preprocesszorral kell csináltatni, nem a C18-ban levővel, akkor a fordító többi része elvégzi a feladatát. De nem igazán emlékszem a részletekre, esetleg próbálj rákeresni a c18 alfórumukon a server2003-ra.

Én felraktam egy virtual PC-t (microsoftnak van ilyen ingyenes progija), arra meg egy XP-t, és abban csinálom az ilyesmit.

(MPLAB-ból nem 8.2 a legújabb, hanem 8.20)
(#) lukr válasza potyo hozzászólására (») Márc 6, 2009 /
 
de #define-os. Argh...
Köszi a tippet, épp telepítem a virtuál MPlabot.

Hogy használod? Fordítasz a virtuális gépen, hexet megosztott drivera, és a rendes OS alól programozod fel, vagy sikerült beizzítani a programozót (nekem PICkit2) virtuális gép alól működésre bírni?

ja, elírtam, 8.20-as van fent.
(#) potyo válasza lukr hozzászólására (») Márc 7, 2009 /
 
Hálózati meghajtóként csatlakoztattam a mappát, amiben a forráskód, hex, stb. van, így a valódi gépen is elérhetők a fájlok, és valódi gép alól lehet égetni. De ha esetleg felrakod a vmware virtual pc-t, akkor abban van olyan is, hogy az usb-s cuccokat a virtuális géphez köti, így a komplett fejlesztést lehet az alól intézni. Csak a vmware nem ingyenes...
(#) DaeMonS válasza gyengus hozzászólására (») Márc 9, 2009 /
 
megvan,sikerult, a legegzszerubb ha comx driverrel csinalom, mar megisvan minden hozza. koszonom a segitokesz embereknek a ravilagitast.
(#) undcityboy89 hozzászólása Márc 10, 2009 /
 
Hello én kezdő vagyok ebben a 18 as sorozat usb kommunikációjában .. az lennne a kérdésem hogy olyan lehetséges e hogy usb keresztül vmi programmal a pic portjait vagy lábait a winowsból kapcsolgatni lehessen?
ilyet lehet vagy már csinált ilyet vki mer engem ilyesmi érdekelne..válaszokat előre is köszönöm..
(#) potyo válasza undcityboy89 hozzászólására (») Márc 10, 2009 /
 
Legegyszerűbb a CDC firmware-t használni, akkor a PC oldalról soros portként kezelhető az egész, a PIC oldalról meg nem sokat kell hozzáírni a firmware-hez, hogy a lábakat kapcsolgassa.
(#) pipi válasza undcityboy89 hozzászólására (») Márc 10, 2009 /
 
telepítsd fel a microchip mchpfsusb applikációt, találsz benne példát
(#) kisptr válasza undcityboy89 hozzászólására (») Márc 17, 2009 /
 
Hello!
Ahhoz hogy elindulj szükséged lesz néhány dologra.
Némi segítség!
http://usb2pic.blogspot.com/
(#) qwer85 hozzászólása Ápr 11, 2009 /
 
Üdv!
Már egy jó ideje szenvedek az USB HID firmware-al pic18f14k50-es mikrokontrollerren. A problémám az, hogy felprogolom a pic-et lehúzom a pickit2-ről bedugom gépbe és vagy azt írja ki, hogy nem sikerült elindítani az eszközt vagy ismeretlen eszköz és nem talált megfelelő drivert. Eszközkezelőben is az USB csoport alatt Ismeretlen eszköz néven szerepel. Kiprobáltam másik három gépen plusz egy iskolain és ott rögtön felismerte h Mouse In A Circle Demo (a microchip honlapjáról letölthető hid példaprogram) és gond nélkül működik. (megjegyzem a másik 4gépen NINCS felrakva a Pickit2 ami ha jól tudom ugyanígy HID device, tehát lehet ez kavar be neki, de javítsatok ki ha tévedek)

Válaszotokat előre is köszönöm!
(#) qwer85 válasza qwer85 hozzászólására (») Ápr 11, 2009 /
 
Na találtam egy másik gépet amin szintén nem megy: ami a két gépbe közös: mindkettőnek Szabványos univerzális PCI -> USB állomásvezérlője van, a többi gép amin működött VIA Rev5 vagy Intel82....stb. vezérlője volt.
Remélem ezzel több infót adtam.... :pirul:
Következő: »»   8 / 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