Fórum témák
» Több friss téma |
Fórum » PIC - Miértek, hogyanok haladóknak
Idézet: „a 100nF kondenzátort se felejtsük el.” De, azt nagyon gyorsan felejtsük el. Az ICSP nem működik vele...
Ez igaz, de 10n-val még működik és talán a léleknek is jó. De én se szoktam túlvariálni, simán 10k és kész.
Akkor sajnos a kikapcsolás és a testre kötés marad, ahogy sok gyári kapcsolásban is látom .
A beégetés idejére két nyák felület nincs összeforrasztva (MCLR és a test)majd végeztek a beégetéssel utána ezt összekötik. Az ICSP csatlakozóra meg egy soros ellenálláson van kivezetve , hogy aki nem ismeri a trükköt, ne fizesse ezt meg egy égetővel. A hozzászólás módosítva: Aug 18, 2013
Idézet: „ahogy sok gyári kapcsolásban is látom” Azért mutass már nekem egyetlen egy Microchip kapcsolást, amiben ez így van megcsinálva. Mintha a Microchip "hogyan NE csináljuk" c. ajánlásából válogattad volna össze a legvadabb ötleteket... "Mindenki a saját szerencsétlenségének pogácsa."
A műgyantával beöntött gyújtás elektronikákról beszélek amiben PIC van. Nem sok ilyen van,
gondolom okkal.
Helló!
Támadt egy kis problémám a FATfs-sel. A gond a következő: ha olyan megszakításban olvasok egy fájlt, amit más megszakítások megszakíthatnak, akkor az olvasás miatt lefagy a program. Ha olvasás előtt letiltom a megszakításokat utána pedig engedélyezem, akkor működik. Volt már valakinek hasonló problémája? Esetleg valami tipp? (Egyébként PIC32MX695F512H-val csinálom a dolgot, bár szerintem ennek most nem igazán van jelentősége.)
Nagy nehezen megoldódott a probléma. Nem a FATfs-sel volt a gond, hanem valami teljesen másik dolog keverte össze a lelkivilágát.
Mindenesetre köszönöm mindenkinek, aki valamennyit is gondolkodott ezen
A HLVD modulhoz tartozó HLVDCON regiszter VDIRMAG, BGVST és IRVST bitjei mire valóak? A VDIRMAG ha jól értem azt állítja be hogy a HLVD modul a tápfesz leesését vagy megnövekedését figyelje-e? A BGVST csak annyi hogy a HLVD modul belső 1024mV-os referenciája stabil legyen-e vagy sem? Minek lehet választani? Hát persze hogy legyen stabil! Ki az a bolond aki inkább nem stabilra állítja? És az IRVST bit?
(PIC18F25K80-ról van szó.)
Nem sikerül működésre bírnom a HLVD modult.
Az a baj hogy ezt nem lehet normálisan debuggolni mert a folyamat lejátszásához a tápfeszültségnek meg kell szűnnie. Ez a PICKit3-nak az áramkör ICSP csatijáról való lehúzásával történik, de ez esetben ugye a szimulációnak is lőttek és így nem tudom merre bóklászott a PIC. Ezért próbaképp 1-be állítottam manuálisan a HLVDIF flagbitet, de nem lép be a megszakításba a mikrovezérlő! GIE, PEIE, HLVDIE, HLVDIP, HLVDIF és HLVDEN bitek 1-en vannak. (Globális megszakítás, periféria-megszakítás, HLVD megszakítás, HLVD megszakítás-prioritás, HLVD flagbit, HLVD modul engedélyezés.)
A BGVST, és IRVST státuszbit, csak olvasható. Pontosabban azt jelenti, hogy a feszültség már stabil-e, vagy még nem. A VDIRMAG azt engedi kiválasztani, hogy a megszakítás akkor legyen, amikor a feszültség a határ fölé emelkedett, vagy alája csökkent.
Ja, akkor azért nem tudtam írni manuálisan sem! Na mindegy, így sem lép be a megszakításba.
Ez nagyon jó ötlet, köszi! Na majd kipróbálom. De egyenlőre amíg manuális flagbit 1-re állítással sem lép be a megszakításba addig normálisan se fog.
Ez az inicializálás nekem működött 2 éve egy PIC18F27FJ13-ban.
A végén az IRVST vizsgálata azért került bele, mert olvastam valahol, valamikor. Már elfelejtettem, hol, és miért volt szükség rá, egyáltalán kell-e. A hozzászólás módosítva: Aug 22, 2013
Hát ezt már egyáltalán nem értem! Bármit csinálok, a HLVD miatt nem ugrik megszakítás-vektorra. Akkor sem ha a HLVD modul flagbitjét manuálisan, a Watch ablakban 1-re állítom. Mondom jó oké, akkor lépjen valami más miatt megszakításba! Próbaképp a Watch ablakban 1-re állítottam az INTCON regiszter TMR0IE és TMR0IF bitjeit majd tovább léptettem egyel a PIC-et. De a két manuálisan 1-re állított bit azonnal visszaugrik 0-ra! Ez hogy lehet?
Idézet: „Az a baj hogy ezt nem lehet normálisan debuggolni mert a folyamat lejátszásához a tápfeszültségnek meg kell szűnnie.” Szerintem nem kell megszűnnie. Van labortápod (még jóhogy ), feltekered X V-ra, majd letekered Y V-ra, annyi a lényeg, hogy a komparálási szint a kettő között legyen. Szkóppal figyeled a tápot, meg mondjuk valami lábat, amin visszajelzést adsz, hogy hol tart a futásban a program. Ha megcsinálod a PIC-kel vezérelt verziót a labortápodból, akkor még ennél izgalmasabb dolgokat is lehet csinálni, pl. PC-ről vezérelve tesztelni a működést
Na, végre sikerült! A PIC mindvégig azt csinált amit akartam, csak a Watch ablak bolond. Hiába írok át benne bármit manuálisan, a valóságban (a PIC-ben) nem állítódnak át a bitek, regiszterek. Ez vagy a PICkit3, vagy az MPLAB, vagy a PIC18F25K80 hibája. A lényeg hogy működik. Most 4,5V-nál már belép a megszakításvektorba a HLVD modul miatt. Próbaképp írtam pár sort ami teleírja az EEPROM-ot folyamatosan, kíváncsi voltam hogy meddig tudja írni míg el nem fogy teljesen a tápfesz. Nos, 256 bájtot írt tele. Ez bőven elég lesz.
A hozzászólás módosítva: Aug 22, 2013
Gratula!
Nekem a PIC-es debug lehetőségekről eléggé lesújtó véleményem van, gyakorlatilag szinte mindenre inkább valami "jelezzünk egy lábon", "rakjuk ki lcd-re", "küldjük ki soros porton", vagy valami hasonlót használok.
Én az utóbbi időben Blackfin DSP-vel dolgozok, VisualDSP++ fejlesztőkörnyezet (meg lett véve, nem volt olcsó), gyári JTAG debugger (pontosan nem tudom, de 300€ rémlik az árára, szóval ez sem épp olcsó), de ez az egész egy bűzölgő sz@rkupac egy MPLABv8+Pickit2/3/ICD2/3 összeállításhoz képest. Eleve 300€-ba nem fért bele nekik egy műanyag doboz, mintha egy Pickit3 lenne borítás nélkül. Locals ablakban összevissza jelennek meg a változók (doksi szerint local változók+függvény paraméterek jelennek meg ott, na én függvény paramétert még nem láttam sosem, local változókból meg amihez kedve van, az jelenik meg), debuggolásnál minden optimalizálás kikapcsolva, erre összevissza megáll a futása akkor is, ha nemis fut olyan helyre, ahol breakpoint van. Ha egy sorral feljebb vagy lejjebb teszek breakpointot, akkor jó, ha az adott sorra, akkor megáll folyamatosan. Na meg hol működik, hol nem a step over, step into, van, hogy többször kell megnyomni, hogy egy sorral arrébb menjen. Ha nem működik valami, aminek kellene, akkor bezárás, megnyitás, és megy, stb.
A hozzászólás módosítva: Aug 23, 2013
Nem értem ezt a HLVD modult. PICkit3-ról ha kap tápot akkor kerek 4,00V van a PIC táplábain és nem detektál a HLVD modul tápfesz csökkenést. Ha külső tápfeszt kapcsolok az áramkörre akkor viszont azonnal megszakításra fut a HLVD miatt, pedig a tápfesz ekkor 4,67V tehát még több is!
Ha külső tápként 4V-ot adsz akkor is megszakításba lép? Nem lehet, hogy ha alacsonyabb tápfeszről indul, mint az megszakításba lépés küszöbe, akkor nem lép megszakításba?
Jobban nem tudtam megfogalmazni. A hozzászólás módosítva: Aug 24, 2013
Azt hiszem rájöttem... Amikor külső tápfeszt kap akkor az úgy történik hogy AC-t kapcsolok a panelra ahol utána puffer, 7805, puffer, PIC van. Szerintem a tápfesz 'felállása' okozhatja ezt a hibát mert most a start vektorra azaz minden, még a PIC inicializálása előttre beírtam hogy várjon 10 másodpercet és így csak 10s múlva indul el az egész program. Így megy külső (AC) tápfeszről is.
Sziasztok!
Tud valaki ajánlani a HM-TR sorozathoz (868 vagy 433) hasonló soros RF modult? Ez elég drága, közel 7000 Ft egy pár és ha konfigurálni kell, a hajam kitépem, mire sikerül.
Jelenleg így adom meg hogy a programozáskor mi legyen az EEPROM-ban:
De most már 24 bájtot kellene megadnom, hülyén nézne ki ha mindez egy sorban lenne. Hogyan lehet beírni úgy hogy egymás alatt legyenek? Akkor jobban átlátható is lenne, meg lehetne kommentezni is. Más; letöltöttem ezt az MPLAB X-et mert azt olvastam hogy az MPLAB IDE-t már nem támogatják a továbbiakban. A kérdésem: hogyan lehet ebben egy MPLAB IDE v8-as projektet importálni? Van ilyen varázsló a fájl menüben azt megtaláltam, elvileg meg is csinálta de az elkészült új projektnél a régi (importált) asm és inc fájlokra mutat. Hát ez nem éppen importálás szerintem...
Próbáld már ki, nem vagyok MPLAB közelben !
A programmemóriában, a táblánál is lehet így megadni ( egy sorban akár több byte is lehet, nem fontos egyesével! ) ! A hozzászólás módosítva: Aug 26, 2013
2.4 GHz-es NRF24L01 nem jó?
A hozzászólás módosítva: Aug 26, 2013
Mit gondoltok, lehetne bármilyen PIC-cel mp3 vagy aac kódolót csinálni? Olyan kellene, ami 1x-es sebességgel, azaz valós időben tud konvertálni egy mintavételezett jelet.
Az sem baj a ha asm-ben kell írni pl. 70MHz-s dsPIC-re. Összességében arra lennék, kíváncsi, hogy vajon elég ehhez egy PIC. Kösz előre is.
MP3 dekódoláshoz a Microchip mondása szerint egy 80MHz-es PIC32MX elegendő, még marad is egy kis erőforrása.
Anno 96 körül volt egy haverom, aki ilyenekkel szórakozott PC-n. Neki assemblyben sikerült egy 75MHz-es AMD 5x86-ra real-time MP3 dekódolót írnia, és erre elég büszke is volt, de azt is mondta, hogy nem volt túl sok tartalék a történetben. Ahogy emlékszem, a kódolás viszont sokkal erőforrásigényesebb, sokkal több CPU kell hozzá, mondjuk valamennyit lehet játszani az igényekkel (jobb minőséghez több CPU kell).
A dekódolót én is láttam már a Microchip-nél, de kódolót még sehol nem láttam. Ahogy olvastam a dekódolóhoz kb 50%proci idő kell. A kódolás komolyabb ügy szerintem is.
|
Bejelentkezés
Hirdetés |