Fórum témák
» Több friss téma |
Fórum » PIC - USB - PC projekt
Elkezdtem kigyomlálni. Az is fura nekem hogy egy header filet több helyről is be akarnak tölteni, meg headerek külön hozzáadva forrásfileként, mikor incudolva is benne van... hát nem egy kezdőknek szóló mintapélda pédája
![]() Mert ezzel hogy nagyon univerzális. és mindenre jó, csak arra nem hogy megértse az ember. Ha végeztem a gyomlálással, megpróbálom átrakni hi-tech alá. Még jó hogy ami miatt belekezdem az usb be (xpressnet packet analyzer) azt most meg tudom csinálni olyan piccel, amiben van két uart. Így ez most ha nem megy, nem is olyan nagy baj egyelőre. Idézet: „Az is fura nekem hogy egy header filet több helyről is be akarnak tölteni” Ez C-ben elég általános szokás... Ezért vannak a
típus feltételek, hogy végeredményben csak egyszer legyenek becsatolva. Idézet: „meg headerek külön hozzáadva forrásfileként” Azokat érdemes becsatolni, amelyeket esetleg módosítasz. Így az MPLAB tudni fogja, hogy mikor, mit kell újrafordítani, amikor a Project/Make menüpontra böksz. Idézet: Hát persze, hogy nem!„hát nem egy kezdőknek szóló mintapélda” Idézet: „Így ez most ha nem megy” Miért is ne menne? Neked gyakorlatilag csak a demóprogram könyvtárában levő hardware konfiguráció és a main.c állománnyal kell foglalkoznod. Az utóbbiban is csak néhány függvényt kell megbabrálni (meg az interrupt kiszolgálást, ha kell).
Üdv!
Szeretnék kicsit ismerkedni a PIC->USB->PIC kommunikációval. Tudtok nekem mondani valami gyakroló kapcs rajzot illetve valami kezdetlegesebb példa progit asm-ben? Vagy inkább PIC c-ben gondolkozzak? Előre is köszi!
Csak C-ben találsz példát, azt is C18 gyári fordítóra(illetve C30, C32). Több cikket is találhatsz, ha keresgélsz itt az oldalon!
![]() Egyik pic se egyszerű eset, egyik az USB miatt, a másik meg tqfp64 tokozás sűrű lábai miatt. Készül az átalakító most épp. De valamelyik megoldás csak működni fog. Idézet: „PIC->USB->PIC” Remélem, hogy ebből az egyik PC akart lenni! Gyakorló áramkört a honlapomon is találsz. Szoftvert a a gyártó honlapjáról tudsz letölteni (a Microchip Application Libraries csomagot kell letölteni). Barátkozz meg a C18 fordítóval! Assembly nyelven is találsz elvétve USB kapcsolatot kezelő programot, de a föntebb megadott linken található C programcsomag a hivatalosan támogatott.
USB-hez lehet asm-ben gondolkodni, de az már tényleg csak mazochistáknak való. Inkább a C kellene. Itt van ez a téma, olvasd végig, szerintem nem te vagy az első, aki ezzel akarna foglalkozni. Meg itt egy linkgyüjtemény: Link
Hú ezt a kétoldali PIC-et én észre sem vettem!
![]() ![]()
Dehogynincs. Van olyan PIC, ami tud host lenni. Azt össze lehet házasítani egy olyannal, ami device-ként működik. Persze értelme nem sok van, mert van ettől egyszerűbb kapcsolatra is lehetőség.
Köszi a sok és gyors választ.
Igen PIC->USB->PC akart lenni ![]() Na ezekre 7végén rávetem magam! Akkor marad a PIC c, csak már ezer éve nem foglalkoztam cével, kicsit kijöttem a gyakrolatból. ![]()
Itt keresd az OTG vagy Embedded host jelzéseket.
Ja hogy a 32-esekről van szó! Azt hittem a 18F-ek között is létezik ilyen. Vagy nem voltam elég figyelmes? Csak a 32-eseknél láttam host-ot...
Van a 16 bitesek között is. Ahogy mész végig a listán, az első, ahol szerepel OTG, az 24F.
Mi a különbség az OTG és a host/OTG között? (azt hittem, csak a host jelzésű tud host-ot)
Nagyon nem mélyedtem bele én sem, de úgy tűnik, hogy az Embedded host az csak host-ként tud működni, míg az OTG a helyzettől függően tud host és device is lenni (persze egyidőben csak az egyik). Tehát mintha az OTG hardveresen mindkét módot tudná, az Embedded host pedig csak a host oldalit.
Értem, köszi az infókat!
Azért érdekes lenne egy Pendrive-ot használni PIC-el. Esetleg egy USB-s mobillal is lehetne kommunikálni. Idézet: Amit említettem az ENC28J60-as témában (nemtudom, azt követed-e) "TCPIP MDD Demo App" demót, abban van olyan, hogy pendrive-ról is tudná a weboldalt olvasni. „Azért érdekes lenne egy Pendrive-ot használni PIC-el.”
Régebben beszélgettünk, hogy a CDC fw 1Mbájt/sec-el tud dolgozni, mert 1024-esek lehetnek a csomagjai. Én értettem félre valamit, vagy csak a gyári CDC fw képes csak 64 bájtnyit fogadni? A HID is ennyit tud, de ezt tudtam.
![]()
Full speed eszközöknél tudtommal csak isochronous módban lehet 1023 bájtos csomagokat küldeni. Interrup Transfer és Bulk Transfer esetén csak Hi speed eszközöknél lehet 1024 ill.512 bájtos csomagméret. Full speednél max. 64 bájt lehet.
Mostmár csak az a kérdés, hogy a CDC az milyen átviteli módban megy... Bővebben: Link
Sok helyen sokfélét írnak, már úgy meg vagyok zavarodva, mint Ádám apánk anyák napján...
Van itt egy érdekes előadás az USB-ről (a Masters 2007-ről), amit érdemes megnézni. Eszerint HID: max. 64 kB/s, CDC max. 80 kB/s (ez bulk módot használ), s a custom mód (mhcpusb.sys, vagy libusb) tud ~ 1mB/s körüli sebességet. Itt pedig egy érdekes topik található. Megjegyzem, nemminden állítását tudom igazolni a fenti előadás alapján... Valahol azt írják, hogy a virtuális soros port Windows-os meghajtó szoftvere 1 mbit/s-nál limitál. Tehát hiáb tudna a CDC többet, a Windows akkor is megfogná.
Stefan!
Van egy függvény, amit ellenőriz a CDC firmware, és ha teljesül, csak akkor fut rá a felhasználói rutinokra. Tehát ha ez nem teljesül, akkor az USB-s kapcsolat még nem állt fel.
Ezt megpróbálhatod, hogy megfelel-e minden feltételednek. (Ezt a rutint ne keresd pont így, ezt már én alakítottam ilyenné.)
Ez nem ebbe a topicba tartozó kérdés...
Ha USB-s midi cuccra gondolt, akkor végülis idevaló.
poznamokus: nézz szét a microchip fórumán, mintha láttam volna, hogy ilyesmikről volt szó, de sosem olvastam bele a témákba.
Üdv. Cassis!
Az első 2 link mögött már nincs tartalom sajnos. Esetleg nem tudod, hogy hol lehetne még azokat elérni, vagy hol találok hasonló olvasmányt. Nekem a 4. és az 5. kifejezetten tetszett. Nem túl részletes, de érthető. Köszönöm: István |
Bejelentkezés
Hirdetés |