Fórum témák
» Több friss téma |
Igaz, nem kellett volna a "minden", de 16F628-at kérdezett, úgyhogy végülis nem vezettem félre.
![]()
Srácok, PIC32MX795-el USB-zem.. Van olyan függvény vagy valami változó aminek vizsgálatával tudom figyelni, hogy mikor van bedugva az USB?
Előre is köszi.. ui: 2012-es USB stack-et használok.. A hozzászólás módosítva: Okt 9, 2016
A Vbus láb oda van kitalálva(device).Host-nál 1 picit más,bár azt még nem próbáltam.Ha micros stack-et használsz,abban benne kellene lennie.Én a cdc,hidat próbáltam,simán mentek.
VBUS láb sajna nem jó..
Helyette ezt használom most, bár az első init-nél nem jól fut le..
Amit eredetileg kérdeztél az a "connected state", de azt más módon nem tudod vizsgálni, csak a VBUS figyeléssel. Az általad említett CONFIGURED_STATE az állapotok listájának a "túlsó végén" van (amikor már lezajlott az enumeráció).
A PIC32MX795F512L PIM modul (és az Explorer 16 kártya) eseténe a gyári demókban a PORTB RB5 bitje szolgál a VBUS figyelésére. A main.c elején a kommentekben írják le, hogy ezt miért kell figyelni (VBUS-ra keress rá!). Ugyanott írják, hogy ha a PIC kettős táplálású (bus powered vagy self powered is lehet), akkor a saját tápfeszt is figyelni kell, mert a Getstatus() lekérdezésre válaszul meg kell tudni adnia a firmware-nek, hogy self- vagy bus powered módban vagyunk. (PORTA RA2 bit-et használja, ha a harware profilban USE_SELF_POWER_SENSE_IO definiálva van). Ezek a figyelések (USE_SELF_POWER_SENSE_IO, USE_USB_BUS_SENSE_IO) a gyári demókban alapértelmezetten nincsenek bekapcsolva (ki vannak kommentálva, tehát vedd ki a sor eleji komment jeleket - ha kellenek!):
A hozzászólás módosítva: Okt 9, 2016
Itt arról van szó, ha használom az USB-t, akkor pl. RB5 magas szintre kerül?
De azt is látom, hogy ezek inputok, de nekem ezeken a lábakon nincs semmi..
Nekem ezek voltak definiálva.. De most átírom RB5-re..
Menet közben azt se felejtsd el, hogy ezek nem absztrakt dolgok, hanem áramkörileg támogatottak. Írtad, hogy 2012-es libet használsz, és írnod kellett volna azt is, hogy milyen hardvert. A válasz ugyanis a kapcsolási rajzban van.
Igaz ezt sejtettem, de reméltem, hogy belül állítgatja a bitet
![]() Áramkörileg nincs felkészítve erre, szoftveresen kell megoldjam.
Amikor csatlakoztatod a külső táplálású mikrovezérlőt a PC USB csatlakozójához, akkor (a korábban belinkelt példában) RB5 magas szintre kerül. Ehhez természetesen a hardvert úgy kell kialakítani, hogy a VBUS 5 V-ja eljusson a kiszemelt lábra.
Ügyelni kell arra is, hogy 5V-ot toleráló lábat használj erre a célra!
Arról is gondoskodni kell, hogy ha nincs meg a kontroller saját tápellátása és az USB kapcsolat csatlakoztatva marad ne ez a láb lássa el a kontrollert árammal. Valamint ne lebegjen a láb, ha nincs meg az USB kapcsolat.
Idézet: Akkor marad a workaround: a sikeres config visszajelzést használni fel. „Áramkörileg nincs felkészítve erre, szoftveresen kell megoldjam.”
Sziasztok, kezdõ PIC hasznàlóként azt kéne megcsinàlnom, hogy pl egy mikrofonba koppintok kettõt, a hangszórón dupla annyi koppintàs hangozzon el. Ehhez esetleg valami megoldàsotok, ötletetek ? Esetlegesen egy piezo hangszóróval ez megoldható lenne ?
Az a legkevesebb, hogy mivel csinalsz hangot. A fo kerdes a feladat pontos definialasa. Pl: elobb koppintasz es utana varod a hangot (menyi ido telhet el a te ket koppintasod kozott, van-e elmeleti felso hatar a szamban?) vagy a te elso kopintasod utan mar kezdje el a sajat duplazott koppintasait, kozben figyelje a te tovabbi koppintasaidat. A koppintast is definialnod kell, mennyire eros utest tekintesz koppintasnak, a gepi koppintas lehet-e rovidebb, mint a tied volt es igy tovabb.
Igazából teljesen szabad kezet kaptam, úgy gondoltam ha meglehet csinálni, megadom a határokat, hogy mitől számítson koppintásnak a piezon, ezt feldolgozza és duplán visszajátssza a hangszóróra, késleltetéssel, vagy akár gomblenyomással. Ha ezt így meglehet csinálni, szerintem ez lenne a legegyszerűbb.
Gondolkoztam még ISD IC-n de ahogy utánaolvastam azt sokkal bonyolultabban lehetne megvalósítani.
Sziasztok!
Az eprom olvasás már megy változóba, de hogy lehet file regiszerbe írni 20 karaktert egyszerre egymás után? Egy szöveget szeretnék átmásolni.
FSR -be tölteni a kezdőcímet, az adatokat az INDF -be írni, majd növelni / csökkenteni az FSR értékét a határra figyelni.
Erre gondoltam én is csak nem áll rá a logikám.
Valamiért az eepromot nem akarja léptetni.
Jó, hogy nem lépteti, ha az eepromot csak egyszer olvasod ki az elején.
Azzal csak a címet állítod be, az olvasáshoz az EECON1 regisztert kell birizgálni (megjegyzem ha nem EECON1, 6 és hasonló módon írnád le, hanem a bitet is a nevén neveznéd érthetőbb lenne a program).
Megírnád hogy gondold? Már 2 órája küzdök vele, nem tudok rájönni.
Ha van egy olvasó rutinod ami jól működik, akkor a léptetést azon kívül csináld! Tehát a címnek először beállítasz 0-t végig megy az olvasó rutin az eredmény W-ben, ezt teszed mondjuk a 0x20 helyre. Aztán INCF EERADRH, megint végigmegy az egész olvasás ciklus, eredmény W-ben, lépteted az először beállított címregisztert és oda másolod a W-t.
Ettől egyszerűbben már csak úgy tudom ha megírom neked.... Pontosan melyik PIC-kel dolgozol? A hozzászólás módosítva: Okt 11, 2016
Használd a "Válasz" gombot!
A hozzászólás módosítva: Okt 11, 2016
Sziasztok!
Nem találtam erre ennél megfelelőbb témát, szóval ide vetném fel a kérdésemet. Tudtok olyan PIC-et ajánlani, aminek az alacsony lábszáma mellett van 2 UART-ja (2xRx, 2xTx), valamint 8 bites, és a PicKit 2 is tudja programozni? Valamint előny, ha egyszerűen beszerezhető (HEStore, ChipCad) ![]() Előre is köszönöm a segítséget! Ui.: A Microchip MAPS-jával nemigazán boldogultam ![]()
Tervezik a 14 lábú 16F53xx kontrollereket, nem tudom, van-e már minta belőle.
28 lábú a K22, J50, J11 sorozatban létezik. Ha a időben elkülöníthető a forgalmazás, akkor akár a PIC12F1822 (8 lábbal) soros portja átirányítható másik lábakra is. Ebben az esetben valamilyen protokollt kell megvalósítani, kérdezz, felelek alapon.
És a K22, J50, J11 sorozatból tudsz erre példákat mondani? A két-két Rx-Tx-en kívül 4 IO-ra volna szükségem
![]() |
Bejelentkezés
Hirdetés |