Fórum témák

» Több friss téma
Fórum » PIC kezdőknek
 
Témaindító: Placi84, idő: Okt 3, 2005
Témakörök:
- A PIC ÖSSZES Vdd és Vss (AVdd és AVss) (tápfeszültség) lábát be kell kötni!
- A táplábak mellé a lehető legközelebb 100nF-os KERÁMIA kondenzátorokat kell elhelyezni.
- Az MCLR lábat, 10kohm-mal fel kell húzni a Vdd tápfeszültségre.
- Külső kvarc használatakor 4MHz-ig XT, a fölött pedig HS konfigurációt kell beállítani.
- Stabilizált tápegységet kell használni, a kapcsoló üzemű "telefon töltő" adapterek okozhatnak hibákat.
- Programozáshoz, használj lehetőleg PICKIT2 vagy 3 programozót. Kerülendő a JDM (soros porti) programozó.
- A PIC adatlapja (PDF), tartalmazza a lábak kiosztását és a PIC minden paraméterét. Az adatlap ingyen letölthető!
- Egyes PIC típusoknál az RA4 nyitott nyelőelektródás (Csak lefelé húz L szintre, H szintet nem ad ki!)
- Ha a PGM lábat digitális ki-/bemenetnek használod, az alacsony feszültségű programozási lehetőséget le kell tiltani.
Lapozás: OK   254 / 1216
(#) Hp41C válasza ferkoo hozzászólására (») Máj 10, 2012 /
 
Szia!

A kontrollert az egyik PNP tarnzisztort bekapcsolva, a +13V -ot a Vpp lábra kapcsolva viszi az áramkör programozási módba. A Vpp lábat illik valahova húzni egy ellenállással, hogy a felhalmozódott töltés valamerre távozni tudjon. Ha az programozó nem képes a nyomkövetésre, akkor célszerűbb a Vss -re kötni az ellenállást. Erre a feladatra be van épíítve a kapcsolásba a kapcsolt Vpp jelekre két piros led.
(#) ferkoo válasza Hp41C hozzászólására (») Máj 10, 2012 /
 
Én ugy emlékszem "olvastam valahol"mielőtt a VPP-t megkapná be kell lépnie programozási módba a pic-nek, elképzelhető hogy rosszul emlékszem, vagy félre értelmeztem?
(#) Zsora válasza ferkoo hozzászólására (») Máj 10, 2012 /
 
A Vpp-vel lép be nagyfeszültségű programozási módba.
(#) Zsora válasza Hp41C hozzászólására (») Máj 10, 2012 /
 
Üdv!
Nem értem hogy mit nem értesz.
A példádban egy 32b/16b=32b osztást hoztál fel, ami - mint írtam előzőleg - bővítéssel megvalósítható a DIV utasítás használatával is. Ott nem használható a DIV, ahol az osztó is 32 (vagy több) bites: pl. 32b/32b=32b.
Mégegyszer:
A DIV utasítást 16-bites (egész) számokkal való osztásra tervezték, mivel a PIC24 (dsPIC) is 16-bites. Erre a célra pedig tökéletesen használható, és sokkal gyorsabb, mint egy saját készítésű eljárás. Használjuk hát egészséggel!
(Remélem azért nincs harag amiatt, hogy a nézeteink nem teljesen egyeznek!)
(#) Zsora válasza Hp41C hozzászólására (») Máj 10, 2012 /
 
Tehát a 32b/16b=32b formájú osztáshoz nem kell saját iterációs (ismétlődős) eljárás, mert egyszerűen bővíthető a DIV utasítás. (A korábbi példádnál maradva: Nem akad a PIC24 torkán a falat.)
(#) ferkoo válasza Zsora hozzászólására (») Máj 10, 2012 /
 
Köszönöm.
(#) Hp41C válasza Zsora hozzászólására (») Máj 10, 2012 /
 
Szia!
Teljes a félreértés...
Egy általános, minden esetben működő osztó rutint keresett promax. Felhívtam a figyelmét, hogy a 24F -en levő div utasítás nem mindenható hányadost fele olyan hosszan kezelik, mint az osztót. Rengeteg példa van, amit egy div utasítással nem lehet végrehajtani. A példa azt szemléltette volna, hogy ha betartom a művelet kiinduló számábrázolási előírásait, attól még a hányados lehet hosszabb, mint az osztandó fele. Köszönöm, megy a matematika, még 8 bitesen is...
A te példád egy konkrét számítás elvégzése, kihasználva, hogy az osztó csak 8 bites. Erre valóban jó a speciális műveletsorozatod. A fordító programok mégsem a div utasítással készítenek kódot. Pontosan azért, mert előre nem tudják, hogy az osztó nem lesz kicsi. Még a (long) a / (int)b sem használ div utasítást...
Azt írtam, hogy a sokszor idézett oldalon található iteráló, léptetős osztás alapján elő lehet állítani a 16 bitesre is az általánosan használható osztó rutint. Pont ezt csinálják a fordítók is. Vége...
(#) Zsora válasza Hp41C hozzászólására (») Máj 10, 2012 /
 
A példámról annyit hogy:
Nem használja ki hogy az osztó csak 8-bites, mert ez egy teljesen általános rutin. Nem speciális. Bármekkora 16-bites szám lehet az osztó, ill. bármekkora 32-bites szám lehet az osztandó. Az eredmény pedig 32-bites lesz, és sosem okoz túlcsordulást. Jelenlegi formájában csak előjel nélküli osztásra jó, de semmiből sem telik kibővíten előjeles számokhoz.
(#) Hp41C válasza speed008 hozzászólására (») Máj 11, 2012 /
 
Szia!

Programozd be ezt, kivettem belőle az OSCCAL kezelését (a call 0x3FF // movwf OSCCAL -t). Így még az sem probléma, ha hibás az az adat...
(#) speed008 válasza Hp41C hozzászólására (») Máj 11, 2012 /
 
Üdv!
Oh köszönöm, ha lesz időm megpróbálom.

A programozóba rakjak 10k ohm os ellenállást az MCLR-Vdd lábak közé?
(#) Hp41C válasza speed008 hozzászólására (») Máj 11, 2012 /
 
Ha nem debuggolsz, akkor inkább a Vpp és Vss közé tegyél, de ott a kapcsolási rajz szernit van egy LED előtétellenállással...
(#) speed008 válasza Hp41C hozzászólására (») Máj 11, 2012 /
 
Akkor nem teszek, mert ott a led megteszi a hatást.

Köszönöm még egyszer a segítségedet.

Már tervbe van egy PICkit2 utánépítés. Azzal legalább talán nem lesz sok baj és megy usb ről is.
(#) Johnny0004 válasza speed008 hozzászólására (») Máj 11, 2012 /
 
Sziasztok!
Lenne egy olyan problémám, hogy felprogiztam egy pic-et a forrasztó állomás kettőbe, de bennt a panelban, párhuzamos portról, előtte sokszor átprogiztam foglalatban. Most a panelban progiztam ICSP-n, többször jó lett, majd egyszer csak nem ment. Azóta az a jelenség, hogy felprogizom a panelban, majd a 12 volt levétele után ugye újraindul és megy szépen, amég az 5 voltot le nem veszem, ezután többet nem megy, az lcd-n kockák vannak. A progi kiolvasható belőle, ha megint felprogizom ugyanígy megint megy, amíg le nem veszem az 5 voltot, utána vége. Valaki hallott már ilyenről???
(#) Johnny0004 válasza Johnny0004 hozzászólására (») Máj 12, 2012 /
 
Tovább kísérleteztem, tehát, hogy érthető legyen:
Ha a forrasztó paneljában felprogizom, majd ráadom a forrasztó tápját és utána leveszem a programozót, vagyis nem szakad meg az 5 volt, akkor rádugom a pákát és működik tökéletesen az állomás. Ahogy azonban egyszer kikapcsolom vége, nem megy.
A PIC-et kiolvasva ugyanúgy benne van a progi.
(#) Hp41C válasza Johnny0004 hozzászólására (») Máj 12, 2012 /
 
Szia!

Tegyél egy - egy 100nF -os, SMD1206 méretű, kerámia kondenzátort a 16F88 és az LCD táp és föld lába közé.
(#) szitko hozzászólása Máj 12, 2012 /
 
Sziasztok.
Problémám akadt az MPLAB 8.83-al. Egy PIC24-et szerettem volna szimulálni, de folyton ezt a hibát dobja ki.
Idézet:
„C:\Program Files (x86)\Microchip\MPLAB ASM30 Suite\bin\bin/pic30-coff-ld.exe: cannot open linker script file p24HJ128GP502.gld: No such file or directory
Link step failed.”

A keresett file elérési útját, én nem változtattam meg, az ott van ahova a telepítő rakta: C:\Program Files (x86)\Microchip\MPLAB ASM30 Suite\Support\Pic24h\gld\p24hj128gp502.gld
Valamit nem veszek észre, vagy be kellene állítanom valahol az MPLAB-ban az elérési utat?
(#) icserny válasza szitko hozzászólására (») Máj 12, 2012 /
 
Van a projektben linker állomány? Ha van, akkor vedd ki, mert az csak az MSU bootloaderhez való!

Ha normálisan volt telepítve a C30, akkor a saját linker scriptjeit meg szokta találni. Ha végképp nem megy, akkor a Project/Set Language Tool Locations menüpontban meg lehet adni a keresési útvoalat egyszer, s mindenkorra. A már meglevő projektekben azonban nem fogja automatikusan figyelembe venni!

Ha a támogatói programkönyvtárad használod, akkor definiálni kell a SIM makrót (azaz fordításkor a -DSIM opció jelenjen meg a parancssorokban). Legegyszerűbben a Project/Options/Project menüben: a C30 lapon Add gombra kattintás, és SIM=1 opció megadása.
(#) Zsora válasza szitko hozzászólására (») Máj 12, 2012 /
 
Na, én is pont ezzel szívtam korábban.
Megoldások:
1.) Még az új project létrehozása előtt beállítod az útvonalakat.
2.) Project > Build Options... > Project > Directories > Suite Defaults gomb használata (icserny #1226627 hozzászólása a PIC - Miértek, hogyanok haladóknak témában)
3.) Az MPLAB X-et használod inkább. (Én jobbnak találom.)
(#) szitko válasza icserny hozzászólására (») Máj 12, 2012 /
 
Köszönöm, mindkettőtöknek. Hosszas mérgelődés, és állítgatás után sikerült.
Icserny: Nincsen linker állomány, és normálisan lett telepítve. ( letöltöttem, és telepítettem, úgy, hogy a régebbi verziót uninstalláltam.)
Viszont ezt a "SIM mekrót" nem értem.De majd talán később.
Úgy sikerült lefordítani, hogy a Project/B options.../project menüben, az ASM30/C30 Suite fülön, a Target Type -nél a "Build library target (invoke LIB30)" lett kiválasztva.
De sajnos erre ráment a fél napom. Nadelesz ez még így se.
Zsora: Az MPLAB X-et már felraktam, és belenéztem, de még csak az ismerkedés szintjén tartunk. A randi még várat magára. Amúgy tetszik a felülete.
(#) szitko válasza szitko hozzászólására (») Máj 12, 2012 /
 
Az örömöm nem tartott sokáig.
A PIC-kwik tananyagban szereplő PIC24HJ128GP502-t, MPLAB-ban nem lehet szimulálni? Mert nálam a "Select Device"-ban sárga pötty van az MPLAB SIM előtt.
(#) icserny válasza szitko hozzászólására (») Máj 12, 2012 /
 
Idézet:
„a Project/B options.../project menüben, az ASM30/C30 Suite fülön, a Target Type -nél a "Build library target (invoke LIB30)" lett kiválasztva.”
Ezzen nem mégy semmire, mivel így nem lesz belőle futtaható program (nem csatolja hozzá sem PIC24 library-t sem a startup kódot (ami az adatterület inicializálása után meghívná a main függvényedet). Tehát a "Build normal target (invoke LINK30)" beállításhoz kell ragaszkodni!

A "normális" telepítésen azt értettem, hogy az MPLAB felrakása után lett telepítve a C30 fordító, és minden megajánlott opció rá lett hagyva.
(#) icserny válasza szitko hozzászólására (») Máj 12, 2012 /
 
Idézet:
„A PIC-kwik tananyagban szereplő PIC24HJ128GP502-t, MPLAB-ban nem lehet szimulálni?”
Lehet szimulálni, csak okozhat meglepetéseket. A sárga vagy zöld pötty a gyári tesztelés mértékét jelenti. S a zöld pötty sem jelenti azt, hogy tökéletes...
(#) Johnny0004 válasza Hp41C hozzászólására (») Máj 12, 2012 /
 
Van amúgy a tápon kondi, de foglalatba progizva sem megy, valószínű megsérült egy része sajna, többet csak lcd-t lehúzva progizok.
(#) szitko válasza icserny hozzászólására (») Máj 12, 2012 /
 
Menet közben rájöttem, hogy hülyeséget csináltam. Visszaállítottam mindent, és megcsináltam az amit írtatok, de a hiba ugyan az maradt. Vagy rosszul csináltam, vagy nem értettem meg, amit írtatok.
Idézet:
„A "normális" telepítésen azt értettem, hogy az MPLAB felrakása után lett telepítve a C30 fordító”

Az igazat megvalva, már nem emlékszem, hogy hogyan telepítettem, de álltalában mindent ráhagyok a telepítőre. Csinálja úgy ahogy akarja.
Közben kipróbáltam az MPLAB X-en is, és ugyanaz a hiba ott is.

Pedig csak a legelső ASM progit szerettem volna szimulálni PIC-kwik tananyagból. Lehet, hogy először inkább a fejleszökörnyezetet kéne tanulgatnom, nem pedig a programozás. A PIC16-os szériával nemvolt soha bajom.
(#) icserny válasza szitko hozzászólására (») Máj 12, 2012 /
 
Idézet:
„Pedig csak a legelső ASM progit szerettem volna szimulálni PIC-kwik tananyagból.”
Jó, akkor a C30 telepítéséről és a SIM makróról írtak egyelőre tárgytalanok (én azt hittem, hogy valamelyik C programmal szenvedsz).

A megoldás az, hogy a Project/Build Options/Project menüpontban a Directories lapon a Library Search Path megjelenítését válaszd ki. A megjelenő lista bejegyzéseit töröld ki a Delet gombbal (ezeket a projekt hozza magával, de ezek az én gépemhez való beállítások, másoknál nem biztos, hogy jók).

Ezután kattints a Suite Defaults gombra, és nézd meg, hogy mi jön be. Nálam most ez a nyerő:
  1. C:\Program Files\Microchip\MPLAB ASM30 Suite\Support\PIC24H\gld
Ha nem Support/PIC24H/gld-ra végződik (vagy nincs közöttük ilyen végű), akkor nincs rendben a korábban már említett Set Language Tool Locations beállítás!

Ha többféle típuscsaládot is használunk, akkor több könyvtárat is meg kell adni, pontosvesszővel elválasztva, mivel a Support mappában külön található a PIC24F, PIC24H, dsPIC30 és dsPIC33 támogatása.
Most neked elég ezek közül a PIC24H...
(#) szitko válasza icserny hozzászólására (») Máj 12, 2012 /
 
Idézet:
„én azt hittem, hogy valamelyik C programmal szenvedsz”

Jó lenne, ha már ott tartanék. De így....
Idézet:
„Ezután kattints a Suite Defaults gombra, és nézd meg, hogy mi jön be”

Semmi.
A "Set Language Tool Locations > Microchip ASM30 toolsuite > Default s..... -nál is mind üres.

Mindegy, kipróbálom amit írtál, háha jó lesz.

Úgyis szolgálatban vagyok, ígyhát ráérek egész éjszaka. És még fizetnek is érte...

Szerk. Műlődik !! Köszönöm szépen.
Ezekszerint ha már eljutok a C-ig, ott is lesz szenvedés? Mert akkor felkészülök rá.
(#) dkarcsi73 hozzászólása Máj 13, 2012 /
 
Sziasztok !
A PIC fordítom a következő üzenetet írja ki :
Crossing page boundary -- ensure page bits are set.
Ez mire utalhat?
Köszi: Karcsi
(#) kissi válasza dkarcsi73 hozzászólására (») Máj 13, 2012 /
 
Gondolom 16-os sorozat ?!

Túlmentél a laphatáron ( 2k ) és figyeltél-e a lapváltásra ( erre hívná fel a figyelmedet ) ?!

Volt erről már többször is szó, keress rá HP41C kolléga írásaiban !

Steve
(#) mate_x hozzászólása Máj 13, 2012 /
 
Sziasztok!

Most vettem észre egy érdekes dolgot egy PIC programozása közben, amit eddig nem vettem észre
Oshonnal égettem egy pic-et és helyes verify-zés után gondoltam ki is olvasom a tartalmát, és ezt a kiolvasott tartalmat elmenettem a Save Buffer As segítségével. Ezt a fájlt jegyzettömbbel megnyitva és az eredeti fájlt jegyzettömbbel megnyitva nem volt egy forma az utolsó pár sor! Gondoltam mi a fene, ez érdekes Végül rájöttem, hogy ezt az oshon csinálja, mert ha betöltöm a bufferba az eredeti fájlt és rögtön el is mentem, akkor is megváltoztatja az utolsó pár sort. Az lenne a kérdésem, hogy mi okozza ezt? Én arra gondolok, hogy azért lehet, mert az oshon nem tudja kezeli a PIC user ID-jét, és talán ez a különbség oka(mert a program, amúgy tökéletesen működik). Még azt is szeretném meg tudni, hogy a jegyzettömbös fájlnak hogyan épül fel a szerkezete? Tehát ott hol található a flash, eeprom, user id és config world(ha jól tudom ezeken kívül nincs más csak a PIC ID, de az csak olvasható és alapból benne van a PIC-ben).
A választ előre is köszönöm, nagyon kíváncsi vagyok mi lehet ez

Üdv, mate_x
(#) Hp41C válasza mate_x hozzászólására (») Máj 13, 2012 /
 
Szia!

Az Intel hex állomány leírása.
Következő: »»   254 / 1216
Bejelentkezés

Belépés

Hirdetés
XDT.hu
Az oldalon sütiket használunk a helyes működéshez. Bővebb információt az adatvédelmi szabályzatban olvashatsz. Megértettem