Fórum témák
» Több friss téma |
Sziasztok Egy kis segítséget kérnék.
Építek egy PIC égetőt, és egy univerzális PIC adaptert. A kérdés ez utóbbival kapcsolatos. Ha mondjuk egy 40 lábú PIC-be írok programot, akkor a 12-es és 31 -es láb van GND-n. Baj ha közben a 8-as láb is GND-n van? Másként fogalmazva: okoz gondot ha nemcsak az a láb kerül testre aminek égetéskor ott kell lennie? Ugyanis szeretném elkerülni a jumperek, és kapcsolók beépítését.
Szerény véleményem szerint, nem adaptert kellene építened, hanem a panelodra rátervezni az ICSP csatit. Hidd el, jobban jársz és a fejlesztés is sokkal könnyebb/gyorsabb!
Okozhat gondot, nem pont ez, de azonos tokkal nagyon sokféle lehet a lábkiosztás, extrém esetben a pic- nek is lehet baja. Pont ezek miatt nem ajánlott ezek használata. Vagy csak kimondottan egyfajta lábkiosztású pic-hez valót csinálni.
Réges-régen, messzi-messzi videéken csak olyan PIC kontrollerek voltak, amiben nem volt belső oszcillátor, így a beprogramozott program NEM indult el az adapteren való programozás alatt. A programozás során többször kell ki- belépni a programozási módba.
A mostani kontrollerek többsége rendelkezik belső oszcillátorral, így el is tud (megfelelő konfigurációs beállítással) a bennük levő program indulni rögtön a programozási módból való kilépéskor. Az általános 40 lábas foglalattal szerelt adapterben több port láb össze van kötve egymással. Ha a program elindul és pont ezeket a lábakat állítja kimenetnek és eltérő szintet ír ki rájuk, máris meg nem engedett nagyságú áramokat indít el a portlábakon. Egyes típusok igénylik a Vcap lábon a kondenzátort, másoknam nem kell. Rengeteg féle lábkiosztás van. A 28 lábú DIP tokban a 16F, 18F még hasznló kiosztású, de a 24F, dsPIC30F, dsPIC33, PIC32 már eltérő - még a táp lábak sem azonos helyen vannak. A foglalat "vonza" a nem neki megfelelő típusú kontrollert.
Köszönöm a segítséget,meggyőztetek.. igaz nem volt túl nehéz..
vicsys, megfontolom a javaslatod. Korábban is felmerült bennem ez a lehetőség, mert csak egy csatlakozóval több, és nincs fejfájás.. A hozzászólás módosítva: Dec 10, 2014
Ahogy mondod. Ha már létező kapcsoláshoz kell progiznom 1db-ot, akkor használom a breadboard-ot, 5 kis vezetékkel.
Igen, én ezt próbanyákon gondoltam kivitelezni.
A hozzászólás módosítva: Dec 11, 2014
hello
Ebbe a programba benne van az osszcilator?
Hello!
Mit jelent az hogy Local assembly programozáson belül? A macroknál találkoztam ilyesmivel és az utasitás mezőben helyezkedik el. Előre is kösz!
Az a valtozo csak az adott rutinban el (proc es endp kozott), helyi valtozoknak erdemes hasznalni, azert local. Ami parametert at akarsz adni mas programreszletnek, azt inkabb globalkent kezeld.
Az alábbi programsort nemigazán értem : incf dig2,f
Azt értem hogy incrementálás viszont az a f a végén megzavar. Én úgy tudtam, hogy oda 0 vagy 1 kerülhet. Az f az a regiszter jelölése ami esetünkben a dig2. Vagy hogy is van ez? Például láttam olyat is, hogy movf arg0, w Ebben az esetben pedig a w zavar meg.
Az összes chip include (*.inc) fájlja ezzel a makróval kezdődik:
A hozzászólás módosítva: Dec 11, 2014
Nem kellene zavarba esni. A 0 vagy az 1 nem annyira kifejező az ember számára, mint a w (azaz az eredmény a WREG -be kerül) és az f (azaz az eredmény a register file -be kerül).
Az a lényege az Assembly proogramozásnak, hogy az ember számára könnyen olvashatóva (esetleg egy típus családon belül hordozhatóvá) tegye a gépi kódot. Végülis az incf dig2,f helyett írhatnánk 0xA6F -et is, ha a dig2 címe 0x06F, 0x0EF, 0x16F esetleg 0x1EF lenne. A TPA gépen a Rim loadert (alap betöltő programot) a kapcsolósoron beállított utasításkódokat a szinkén kapcsolósorral beállított címre kellett beíratni fejből ill. (gyengébbeknek papírrol). A TPA - I -ben már volt akkora ROM, hogy már abban tárolták a programot... A hozzászólás módosítva: Dec 11, 2014
Te programoztál TPA1001-et?
A hozzászólás módosítva: Dec 11, 2014
Ez egy teljesen gépi kód, ezt ember meg nem mondja neked, hogy ebbe mi van vagy mi nincs. Ha tudni, hogy PIC-re íródott akkor vissza lehet forgatni assemblyre, abból talán kiderül valami.
Egy 7 szegmenses kijelző vezérlő programját próbálom értelmezni ami assembly-ben íródott. Szó van itt maszkolásról. Ez mit jelent pontosan? Példaként az 5 binárisan 00000101 és ennek a maszkja állítólag 01101101
Hát ez ezer meg egy dologtól lehet. A hardver biztosan hibátlan?
A maszkolás az bármi lehet
Tegyük fel, hogy egy számból csak az alsó 3 bitet akarod használni. 0101 1011 <-- a szám 0000 0111 <-- a példánál maradva a maszk (alsó 3 bit) 0000 0011 <-- ez pedig az eredmény. Ez ebben az esetben bitenkénti "ÉS" műveletet jelent.
ja en mindent ennk alapjan csinaltam!
Attól még lehet hibás... Egy apró zárlat, szakadás, nem megfelelő alkatrész elég a bajhoz.
Nem! mindent megvizsgaltam nincs egy apro zarlat sem!
A pic-et biztos jó felprogramoztad? Visszaolvastad, összehasonlítottad a kódot?
|
Bejelentkezés
Hirdetés |