Fórum témák
» Több friss téma |
Fórum » PIC - Miértek, hogyanok haladóknak
Idézet: „trudnai : Vss-t akartam írni, igazad van, csak néha keverem a Vcc-vel.” Talan ugy lehet megjegyezni, ha megerted miert az a jeloles: Vcc es Vdd majdnem ugyanaz, Vcc a tranzisztoros kapcsolasoknal es TTL aramkoroknel elterjedt, a Vdd pedig MOSFET-eknel, CMOS-oknal. A V ugye a Volt, feszultseg, a 'cc' a 'Collector'-ra, a 'dd' pedig a 'Drain'-re utan. Vss is MOSFET-es, ahol az 'ss' a 'Source'-ra utal, mig Vee-nel az 'ee' ugye az 'Emitter'. De legtobbszor Gnd-vel talalkotam Vee helyett. (Gnd ugye a Ground azaz foldeles roviditve).
Es nem probaltad meg nagyobb ellenallassal? En pl 20k-ra eskuszom, nekem meg nem volt vele gondom.
Hasonló jelenséget én is tapasztaltam, amikor a PGM (alacsony feszültségű programozó) lábbal egy NPN tranzisztorral relét akartam földre kapcsolni. Pontosan nem tudom, hogy ez miért okozott problémát, de nem ismerte fel sem az ICD2, sem a PK2 a kontrollert. Ha nálad is van ez a láb, nézd meg, hogy mi van rákötve.
Én még csak 10K-s ellenállást raktam rá, de legközelebb kipróbálom egy 20K-sal is!
Csatolom az áramköröm, amiben ezt a hibát tapasztaltam. Ebben már benne van a kondi, és a dióda is. Lehet hogy több áramkörömben is találkoztam volna ezzel a problémával, de ezt megelőztem a kondival, és a diódával.
Az R3 hány Ohmos? Valamint a JP1-re kötve van valami, vagy kiválasztod, hogy a bemenet alapállapota alacsony, vagy magas szintű legyen?
Az R3 és a többi fel/lehúzó ellenállás értéke 10KΩ. Az ellenállásokon lévő hármas csatlakozók csak arra szolgálnak, hogy jumper segítségével betudjam állítani hogy fel, vagy le húzzon az ellenállás.
Értem, akkor az nem lehet probléma. Én az MCLR-t mindig csak 10k-val tápra kötöm, és még nem volt ezzel gondom. Ha nálad is így van, akkor is előjön a hiba?
Ez tényleg furcsa, mert van egy 44pines demo panelom, amit viszont akkor, és most is felismert, írt, és olvasott. Bár azon az MCLR simán ki van vezetve az ICSP-re, semmi felhúzás.
Egy áramkör(jelen esetben a PK2) nem csak úgy lehet hibás, hogy megy-nem megy.
Eddig azért nem mertem összekötni 10k-val, mert féltem, hogy írás/olvasáskor Mclr 12V-ja bekavar a Vdd-nek.
De most kipróbáltam és működik, dióda nélkül is. Azt hiszem mostmár világos, miért ment tönkre az a 18F PIC. Az meg csak mázli, hogy erre csak most került sor. Üdv Idézet: „Egy áramkör(jelen esetben a PK2) nem csak úgy lehet hibás, hogy megy-nem megy.” Ja, nem ezert hivjak digitalis aramkornek?
Sziasztok!
Ismét próbálkozom, jelen esetben egy ciklussal, ami 6x futna le és csökkentené a cím változó értékét. A gond csak az, hogy nem megy. Tesztelve MPLAB szimulátorral végtelenszer fut le, mintha nem töltené fel a cim és a szam változókat. Fordításkor ki is írja az alábbi hibát a cikluson belül szereplő változók sorainál: Message[305] H:\SAJAT\PIC_ALAPOK\PROJECT\LCD_JOBBKIIR_2.ASM 108 : Using default destination of 1 (file).
Sziasztok!
Van egy kis gondom az PIC18F4550/53 USB-s CDC kommunikacioval. Egy meglehetosen lassu (kb 2kbyte/s adatfolyamom van, szepen megy, ha nincs a kornyezetben zavar. De ha pl. ugyanabbol a konektorbol egy pisztolypakat hasznalok vagy pakatrafot dugok, akkor kiakad a kommunikacio, belefagy a PC oldalon a ReadFile rendszerrutinba, onnan mar nem is ter vissza. Az eszkozkezeloben latszik tovabbra is, de az eszkozt mar nem mukodonek nyilvanitja. A PIC oldal ilyenkor latszolag megy tovabb, interruptok mukodnek, a foprogi pedig valtozatos helyeken akad le, de mindig az USB kommunikacioval kapcsolatos rutinoknal. Nem resetel egyaltalan. Egy 2550-essel ugyanez a progi nem csinalja. Valami orajel-zavarra gyanakszom, de ha pl.a pisztolypakat ott csattogtatom mellette, akkor semmi baja - felteve, ha egy masik, tavolabbi konnentorba van dugva. Probaltam mar rovidebb, zavarvedett USB kabelt, erosebb foldelest a cucc es a PC kozott, akkus taplalast, USB-s taplalast, soros ellenallast az USB vonalakba, nem hasznalnak. Egyetlen dolog segit: ha a teljes cuccot alufoliaba burkolom, akkor nagyon kicsi valoszinuseggel akad le (100-bol 1x) Talalkozott-e mar mas is ilyen gonddal a 4550 vs 2550 viszonylataban? Ha igen, mi volt a megoldas? Valaszaitokat elore is koszonom.
Nem találkoztam még ilyennel, de a 4550-nek két Vss és két Vdd lába is van. Mind a négy be van kötve? Mindkét Vss-Vdd pár közé van téve a PIC lábaihoz minél közelebb kerámia hidegítő kondi? Először én ebben az irányban indulnék el.
Mindketto par be van kotve, tantal pufferkondi van a labakhoz legkozelebb, kis hidegito nincs. Kiprobalom, de nem tartom valoszinunek, mert a 2550-esnel is pont ez az elrendezes van.
Mekkora erteket javasolsz hidegitonek?
Megnéztem az adatlapját is, tényleg közös anódos.
Kingbright SA52-11HWA
100nF kerámia a szokásos érték. SMD kondit akár a lábakra közvetlenül is rá lehet forrasztani a fóliaoldalról.
Szia!
Elkészítettem a panelt. 1 hibát találtam: amikor kiolvasom a programot RC oszcillátort ír, és nem tudom hogyan lehet átállítani. Tudnál ebben segíteni? Köszi
Szia!
A pontos 96MHz előállításának követelménye miatt nagyon pontos frekvenciájú kvarcra van szükség a megbízható USB működéshez (Adatlap\Table 28-9\F13: +/- 0.25% ). Egy régebbi, 4MHz megjelölésű kvarccal (1x előosztóval) próbáltam, de nem ment, egy 20.000 MHz meglejölésű kvarccal (5x előosztóval) pedig megy rendesen. A programomon nem változtattam mást... Milyen kondenzátor van a Vcap lábon?
220nF-os.
De ez mindket cuccnal ugyanaz. A kristaly volt low profile, a magasra csere valamit rontott a 2550-esen, a tok foldelese sem segitett.
Sziasztok!
Az alábbi programrészletben a 72h címen tárolt "cim" regiszter tartalmát szeretném beírni W-be, de nem jutok eredményre már 2-3 órája. Próbálkoztam az indirekt címzéssel is (FSR és INDF használatával), de sikertelenül. Változók definiálása: cblock 0x70 W_ment STAT_ment cim ;file register 72h címen tárolódik szam timer1 timer2 timer3 endc a szubrutin: vkiiras bcf PORTE,0 ;parancs mód call delay movlw cim call kiir call verzio call dellat return Kérlek segítsetek, hogyan tudnám a 72h címen található 8 bájtot beírni W-be. Tudom, itt nem nagyon szokás, de ha lehet légyszi konkrétan írjátok le assambly-ben hogyan lehet megcsinálni. Előre is köszönöm!
1000 hálám!!! Sejtettem, hogy a movf lesz a megoldás, de a szintaktikáját nem tudtam...
Bocsánat, de még csak 1 hete "programozok" :hide:
Szívesen! Célszerű kezdéskor alaposan áttanulmányozni az utasításkészletet, valamint mintaprogramokat nézegetni. Rengeteg mintaprogram, illetve oktató jellegű leírás található a neten, ebben a topikban is sok helyen volt már megemlítve az, hogy hogyan érdemes nekiindulni a kontrollerek világának.
A parancsok szintaktikája mindegyik adatlapban benne van, legközelebb...
A parancsok beszédesek: ("l" literal, az az egy szám). A movlw a cim memória címét tette bele a w-be. Van mikor erre van szükség...
Szia,
Sokfelekepp lehet ezt allitgatni. Legszerencsesebb, ha a forrasodban a config-oknal allitod be. Ha valamiert nem megy, akkor ha a programozo szoftvered kepes ra, akkor azzal is beallithatod. Ha azzal nem megy akkor be kell MPLAB alol importalni a HEX-et, a konfig editorral beallitani, majd kiexportalni. Ill. ha mar eleve az alol firkalod a PIC-edet akkor e ket utobbi lehetoseg ugyan azt jelenti ertelem szeruen Magyaran ebben az esetben MPLAB-bol nem kell importalni-exportalni csak kiolvasni a PIC tartalmat, editalni majd vissza irni...
Szia!
Sajnos pickit2 nem támogatja ott nem találtam. MPLAB alól beimportalom a hex-et a config biteknél átállítottam XT-re majd exportáltam. Remélem jól csináltam. De sajnos így sem indul az áramkör |
Bejelentkezés
Hirdetés |