Fórum témák
» Több friss téma |
Fórum » PIC - Miértek, hogyanok haladóknak
Idézet: „Rengeteget olvastam, de nem láttam sehol, hogy a GIE-t ne bántsam.” És azt láttad valahol, hogy piszkálni kell? Idézet: „Megnéztem megint a kódot, hol van ebben komment?” Sehol. Épp ezért írtam, mert anélkül szerintem senki nem fog nekiállni a kódot böngészni. Az újraindulás után 1-2 másodpercre írasd ki vagy rakd ki ledekre a POR, BOR, TO és PD bitek állapotát, hogy tudd, mi miatt indul újra. Adatlap 12-4-es táblázatból találod meg a kombinációhoz tartozó okot.
Sziasztok!
Szeretnék építeni egy 12x, 16x, 18x-el kompatibilis programozóadaptert. Egyetlen egy, 40-es ZIP foglalattal szeretném megoldani de nem tudom, hogy mennyire tenne jót a különböző PIC-eknek az, hogy más jelet is kapnak azok a lábak amelyek nem vesznek részt a programozásban. Tudnátok ebben nekem segíteni, hogy hogyan is oldjam meg? Előre is köszönöm a segítségeteket!
Elvileg nem zavarja, ha másik lábon történik valami.
"És azt láttad valahol, hogy piszkálni kell?"
Sehol nem láttam, csak gondoltam letiltom amig a megszakításban dolgozom, mivel nem biztos, hogy, amig a timer0 megszakításban dolgozom, jólesik ha egy int megszakítás beesik. Tudom, tudom, ezért kellene elmenteni a W és a STATUS regisztert, de én nem szeretném ha megszakítás közben megszakítás indulna. „Sehol. Épp ezért írtam, mert anélkül szerintem senki nem fog nekiállni a kódot böngészni. ” Jabocs. Azt hittem, szó szerint értetted. Köszi hogy foglalkozol a kérdéssel, megnézem az említett biteket. Üdv!
Rendben! Nagyon szépen köszönöm!
Azonban ha valakinek van ezzel a megoldással kapcsolatban rossz tapasztalata kérem ossza meg. Idézet: „Sehol nem láttam, csak gondoltam letiltom amig a megszakításban dolgozom, mivel nem biztos, hogy, amig a timer0 megszakításban dolgozom, jólesik ha egy int megszakítás beesik.” Azt is nézd meg az adatlapban, hogy mi történik, ha egy megszakítás beesik. Adatlap 12.10 fejezet.
Megnéztem.
Ő is tiltja, meg én is. Nincs itt vita. Gondolom annak viszont nem örül, hogy a retfie előtt be akarom állítania GIE-t. Éjszakázom még rajta egy kicsit. Üdv!
Az MCLR-en 12-13V jelenik meg, annak nem illene mas labra ra mennie! Ami megoldasokat gyakran talalni a neten, hogy vagy valami jumperrel lehet a jeleket ki-be kapcsolgatni / iranyitani hova menjen, vagy egy vezetekes patchelos modszerrel...
Magam reszerol csinalnek egy programozot egy elore meghatarozott csatlakozoval (pl ICD2 vagy PICkit2 fele ICSP labkiosztasu tuskesor) es ahhoz gyartanek programozo headereket. Az ICD2 azert jo, mert az egy 6 pines RJ11-rol konnyeden levalaszthato ill csatlakoztathato a headerekhez (tobb ki-be huzkodast atel mint egy sima 0.1" header sor...)
GIE-t nem piszkáljuk megszakításban, mert azt a PIC magának állítja (összes megszakításra engedélyezése). Amikor beesik a megszakítás, letiltja, amikor jön a RETFIE, visszaállítja. Így pont védve van az új megszakítástól, a többi addig vár amíg a GIE újra aktív lesz. Mivel te a RETFIE előtt engedélyezed, előfordulhat, hogy pont beesik egy kérés és megszakítás lesz a megszakításban. A többit el tudod képzelni.
Idézet: „Ő is tiltja, meg én is. Nincs itt vita. Gondolom annak viszont nem örül, hogy a retfie előtt be akarom állítania GIE-t.” Ha Te allitgatod ISR-en belul a GIE-t, akkor elveszhetnek esemenyek. Azonkivul ahogy mondod, ha a GIE-t engedelyezed meg mielott a RETFIE megtortenne akkor ujbol beerkezhet egy megszakitas amibol eleg karos hatas lehet, pl a stack megtelhet es reset is eloallhat...
Szia!
Köszönöm! Erre vezetett rá potyo is, csak több hozzászólásba került a dolog. Üdv!
Arrol sajna nincs kapcsolásom, de elmondom. 1 darab Fet ami az egyenirányított 230 V-ot pwm el vezérli. Meg egy mikrokapcsoló amit ki szeretnék váltani 230Vos vetzérléssel. Plussz van még egy quarz meg 2 kondi. Tehát annyi kellene, hogy az RA.0 ra tudjak ki- be kapcsoló jelet adni 230 V-rol, ami azért kell mert máshonnan is szeretném vezérelni. Tehát egy fényerőszabályzó lenne amit tudok 2 helyröl vezérelni.
Szerinted a pic tápellátásának, és vezérlésének semmi köze a pic-hez?
Idézet: „Szerinted a pic tápellátásának, és vezérlésének semmi köze a pic-hez?” Hat nem sok -- kiveve ha PIC-kel vezerelt tapod van... Itt a PIC Miertekben olyan problemakat szoktunk megbeszelni amiket PIC-kel oldunk meg. Ennyi erovel barmi bele ferne ebbe a temaba ha az aramkorben valahol talalhato egy LED villogtatast vezerlo PIC is. Nekem mindegy amugy csak szerintem ez erosen off-topic, azonkivul valoszinuleg sokkal tobben olvasnak a tapoddal kapcsolatos otleteidet olyan temakorben ahol analog aramkorokkel foglalkozo emberek vannak elsosorban (beleertve PIC-eseket is, AVR-eseket is, es kifejezetten nem-mikrokontrollereseket is)...
Azért gondoltam erre a topikra, mert minden pic-nek kell táp és hátha van itt valaki aki hasonló dolgot csinált és elmondaná ő hogy oldotta meg. Igazad van ledes topikban találtam ilyet, de abban nem vagyok biztos, hogy a pic nek jó e vagy sem.
Szia!
Időnként érdemes konzultálni a Microchip honlapjával is. Application Notes- AN954 Tech Brief- TB008 Üdv.
Köszönöm szépen!
Helló! Kérdésem az lenne hogy valaki nem javítaná ki nekem ezt a programot hogy működjön ?
Komolyan mondom, az eszem megáll. 15 másodperc alatt láttam olyan hibákat, amiket 15 hozzászólással ezelőtt beszéltünk meg...
Bocs csak azért kértem segítséget mert biztosos nem tudom ki javítani, és azt hitem itt van aki jobban ért hozzá mint én kösz.
Ez itt egy hobbi fórum, nem bérmunka rendelés. Sokan összekeverik a dolgot. Itt egymás problémáját oldjuk meg, ha elakadt, nem mások helyett dolgozunk...
Van valami oka annak, hogy foglalatban akarsz programozni? Tudod mi az az ICSP?
Idézet: „CBLOCK 0x20 ;A Minden BANK-ból látható GPR kezdőcím” Ez szerintem nem igaz! A 70-es címtől látszódik minden bankban a RAM terület. de csak 16 bájt(7F-ig). A másik, hogy megszakításban nem szoktunk lassú perifériákat kiszolgálni. Arra ott a főciklus, amely folyamatot bármikor meg lehet szakítani, mivel nem időkritikus. Mire lekezeled az LCD-t simán jöhet egy, akár több újabb megszakítás, ami mindent boríthat! Szervezd át a programot, mert véleményem szerint ez így nem lesz jó sose, még akkor se, ha netán összetákolod és működni látszik! A korábbi javaslatok szerint járj el a GIE ügyében, és ha átteszed a fő ciklusba az LCD lekezelését és a többi számolást(csak a kritikus számítások legyenek az INT-ben), akkor a megszakításban mentsd el amit el kell(adatlap részletesen leírja a hogyant, példával!) Az oszci mindenképpen HS.
Egyedül a Vpp miatt látom kicsit nyűgösnek a dolgot, mert annak nem szabad rossz helyre kerülnie. Esetleg jumperekkel vagy "kóddugóval" meg lehetne oldani biztonságosan.
Valahol láttam olyan megoldást, aminél a 40 lábú ZIF foglalat különböző részeire, különböző irányban kellett betenni a más-más lábszámú PIC-eket, de őszintén szólva nekem az ilyentől borsózik a hátam, szerintem nagyon könnyű valamit félrenézni, aztán PIC mehet is a kukába, rosszabb esetben akár a programozó is.
Szia!
Köszönöm a tanácsodat. Átszervezem a programot, mert tegnap este sem sikerült megoldani a problémát, a tegnapi ötletek figyelembevételével sem. Státusz és work regiszter mentés volt egy korábbi "verzióban" csak kiszedtem, gondoltam felesleges időtöltés, ha csak nop van a főciklusban. Viszont egy furcsa dolgot még tapasztaltam tegnap. A jeladó ami afordulatjelet adja egy infrakapus cucc (kap 5V, testet, és ad egy jelet, szkóppal megnéztem gyönyörü négyszögjel van), nem én építettem, hanem azt hiszem egy szabászgépből lett bontva. Namármost ha a jeladó fém házához hozzáérek, akkor vagy elkezd működni és számolja a fordulatszámot egy két másodpercig, vagy teljesen meg is áll, és nincs semmi a kijelzőn. Erre valakinek ötlete?
A jelenség egyértelműen elektromos zavart sejtet. Nyílván túl kevés az infó a valós ok megállapításához, csak találgatni lehetne. Pl. a jeladó azon része, ami a PIC-el össze van kötve, galvanikusan kapcsolatban áll a jeladó többi részével? Egy rajz nem ártana. A PIC-en van hidegítő kondi(100n kerámia a PIC lábánál!)? Tápegység kellően kondizott, nyák vonalvezetése, táppal való összekötése megfelelő? Szóval rajz...
Igazad van, nem írtam le ezeket.
A táp egy 5 voltos gyári (nem álltalam készített) adapter. Nincs hidegitő kondi a pic lábán, de hamarosan lesz. Elég ha a táphoz teszek, ahol a panelra van kötve, vagy tegyek a pic mindkét Vdd lábához? Próbanyákra van megépítve, és az adatlap alapján kötöttem be. Lábszámok szerint: 11, 32-es láb +5V 12, 31-es láb - 13,14 oscillátor (18,432Mhz) 33-as jel, egy 10k-s felhúzó ellenállással Az oscillátor két lábán van még egy egy 22 nanos kerámiakondi, na meg a kijelzőhöz az ellenállások. PORTC a szegmensek, PORTD 4,5,6,7 a digitválasztó. Ennyi a kapcsolás.
5V-os adapter? Stabilizált és szűrt az az 5V?
"Nincs hidegitő kondi a pic lábán, de hamarosan lesz. Elég ha a táphoz teszek, ahol a panelra van kötve, vagy tegyek a pic mindkét Vdd lábához?" Rakj egy elektrolit kondit közvetlen a panelra ahol becsatlakozik a táp! A PIC táp lábaira, közvetlenül amilyen közel csak tudod, rakj kb. 100nF kerámia kondit. Ez a második nagyon fontos! De még egyszer: Stabilizált az az 5V?
Sajnos nem találok semmit a neten erről az adaterről.
(DVE gyártmány D5A 0151F-D5) De szerintem stabilizált, mert első áramkmör a JOSEPINO féle fordulatszámmérő volt 16F628-cal, és az simán működött ugyanezen táppal, szintén kondik nélkül, ugyanezzel a jeladóval, és nem tapasztaltam ilyen jelenséget.
Ezt nem így kell. Megterhelni különféle árammal és mérni a feszültségét. Ha nagyobb terhelés hatására esik, akkor nem stabilizált. Ha nulla terhelés és a ráírt maximális terhelés között mondjuk 5%-tól kevesebbet változik és közben az 5V-tól is maximum 5%-al tér el, akkor stabilizált.
|
Bejelentkezés
Hirdetés |