Fórum témák
» Több friss téma |
Fórum » PIC égetési hibák, problémák, kérdések
Tessék itt vannak a képek. Mind a 2 pic-emet felismeri.
Ha megkérlek tudnál adni egy egyszerű LED villogtató progit a 16F628A-ra? Hátha az eddigi netes programokkal van a baj. Meg ezt a típust legalább egy bizonyos memória címig sikerült írni...
Tessék RA.0- és RA.1 a két led 628 a proci
és nem kell kvarc . A két ledet váltva villantja.
Köszi a képeket, így már biztos, hogy jól van beállítva a program, és a kötések is jók.
Esetleg próbáld meg az oshon programjával, az korrektebb(bár nincs PIC felismerő rutinja), csak kevesebb PIC-et kezel! Beállításáról írok a cikkben is.
Köszi a programot!
A pic bekötésével kapcsolatban viszont bizonytalan vagyok. Én azt olvastam, hogy ha a belső (nem külső ellenállással beállítható) oszcillátor van beállítva, akkor az osc1-2 lábakra semmit sem kell kötni. Igaz ez így? Továbbá az MCLR lábat sem kell sehová kötni, mivel az a fajta reset nincs ebebn a progiban bekapcsolva, igaz? Mert ha ezek így vannak, akkor én csak annyit csináltam, hogy ráadtam az 5V-t meg az ellenállás LED párost a megfelelő lábakra kötöttem és nem akart működni...mondjuk ez lehet amiatt is, hogy nem biztos, hogy jól lett felprogramozva az IC.
Hát kipróbáltam az oshon 16F-es progit. Beállítottam a vonalakat, ahogy a cikkben van. Ezek után bekapcsoltam a Vdd- Vpp-t és rámentem a Verífy-ra és hibaüzenetet írt ki, hogy rossz értéket olvasott ki a kezdő memória címről, de ettől függetlenül azért írogatta a picet. Pár darab töröl-ír játszadozás után sikerült ráírnom a kapott LED villogtató programot. A visszaolvasást megcsináltam az Oshonban, meg az ICPRogban többször is és összehasonlítottam az eredeti hexadeces kóddal.Persze nem minden kiolvasás volt sikeres. Csak úgy statisztikailag kijött, hogy egyezik a két kód Ezek után összeraktam az áramkört, de nem akart billegni az RA0 és RA1-es lábon a jelszint.
Ezt az egész felprogramozást egy zsír új pic-kel és egy másik gépen csináltam, szóval valami baj van az égetőmmel, mert nagyon össze vissza működik...Írogat bele valamit,olvasgat is ki belőle valamit, de egyiket sem csinálja rendesen, megbízhatóan... A kapcsolásommal nem lehet vmi baj? Biztos jó a nyákterv? Mondjuk én azt nagyon sokszor átnéztem, de lehet, hogy elsiklottam valami hiba felett...A másik, hogy jók azok a drótok amiket használok? Mármint nem a hosszúkra gondolok, hanem arra, hogy elég régi drótok és esetleg valamilyen módon torzítják a jelsorozatot. Ez lehet, hogy baromság,de másra már nem tudok gondolni, ha nem a kapcsolásban van a hiba. A tápot is szoktam nézegetni írás-olvasás közben és nem mászik el csak 1-2 század V-t.
Szia!
Hány V van az égetőnél a Vdd-GND, PGC-GND, PGD-GND között, ha a Vdd kapcsoló nincs bekapcsolva? Eredetileg a 74ls07 nálam is a Vdd kapcsoló után volt bekötve, így viszont ha a Vdd nem volt bekapcsolva a Vdd, PGC, PGD-n nem 0V-volt, hanem -1V körüli érték! Az egyik PIC-em tönkre is ment, szerintem ettől. Ezért én a 74ls07 Vcc lábát a kapcsoló elé kötöttem, és a PIC-et csak akkor csatlakoztatom az égetőre, ha adtam az égetőnek tápot. A másik dolog amit módosítottam, hogy a Vpp-t a Vdd-től függetlenül tudom kapcsolni, ugyanis: Idézet: . Tehát az adatlap szerint először a Vpp-t kell bekapcsolni, azután a Vdd-t. „Program/Verify is entered by holding CLOCK and DATA pins low while raising MCLR first, then VDD.”
Melyik PIC-re igaz ez!?
Mert ez így ebben a formában, a kérdéses PIC típusának feltüntetése nélkül, nem igaz. Abban igazad lehet, hogy a +5V-ot a 7407-re rá lehet engedni(bár nem szükséges), de hogy neked hogyan lehetet ott -1V azt fel nem fogom! Ott valami nagy turpisság lehetett a PC-d testpontja és az áramköröd testponja között! Nálam nem mérhetőek ilyen feszek, ez bizonyos. Visszatérve a Vpp időpontjára csatoltam két képet, amin jól látható, hogy csak a 16F628A és nem A típusoknál írja az adatlap a Vppt előre, de érdekes módon, nálam simán működik akkor is, ha nem előre kapcsolom be. Ez nem jelenti azt, hogy nem az adatlap szerint kell végezni az égetést, csak az a bajom, hogy nem magyarázza a problémát, hogy az égetés sikerül néha, néha meg nem.
Az biztos, hogy jobb lenne szalagkábelt használni, főleg az LPT vezetékre, de mindkettőre indokolt. Ezt még megteheted. Érdemes lenne venned néhány 74ls07 és sima 7407-et is. Előfordult már, hogy egy-egy példány kehes volt.
Az jó jel, hogy már félig működik! Biztosan a jelek szintjével, meredekségével lesz a gond, csak azt tárolós szkóp nélkül nehéz lenne megmondani, hogy hol. Ha 16F628A-t (vagy a családjába tartozó PIC-et) égetsz, akkor érdemes megpróbálnod mindazt, amit p5efv leírt, mert az nem hülyeség, ez tény. Bajt biztosan nem okoz, és legalább kiderül, hogy ez-e a hiba! Ha igen, akkor módosítom a cikkben leírtakat erre a speciális esetre!
Igaz, ami igaz, a típust elfelejtettem írni, a 16f628A EEPROM Memory Programming Specification-ből másoltam ki az idézetet.
Az is igaz, amit már írtál te is, hogy minden PIC típus esetén meg kell nézni az adatlapját, hogy hogyan kell program/verify módba lépni. Az általam mért -1 voltokat én se értem, lehet, hogy a tápom vacak. Viszont azóta már sikerült vele egy Pickit2-t felprogramozni.
Semmi gond, csak fontosnak éreztem ezt itt megjegyezni, nem miattad!
Atielektro-nak is: Mindenesetre nem hagyott nyugodni a dolog, és a letöltő gépemre feltelepítettem a WINPIC800-at, az oshon 1.3-at, és a WPB_F18_4.25b-t. Megjegyzem, hogy ezzel a géppel korábban nem próbáltam az áramkört(Ez volt a lányom régi gépe. Athlon 1GHz-es, ABIT alaplap). A WLPT_mini_v4-et használtam(kép csatolva ). A WINPIC800 felismerte a PIC-et, de ellenőrzéskor hibát írt ki, minden alkalommal. Az oshon viszont egyetlen egyszer sem tévedett! A WPB_F18-al egy 18F4320-at teszteltem, az is tökéletesen működött. A kivitel indokolná, hogy ha valami nem működik, akkor ennek nem kéne. Ennek ellenére az eredmény kielégítő. A WINPIC800 már régebben is szórakozott, ezért állítom, hogy a programban van a hiba. Az LPT kábel, ahogy a képen is látszik árnyékolt UTP kábelből készült, kb. 60-80cm hosszú. A többi láthatóan szalagkábelből van, de nem nagyon hiszem, hogy ez bármit változtatna, mert eléggé össze vissza van csavarodva és kötözgetve. Nehezen hiszem el, hogy ha valaki normális nyákon elkészíti, akkor ez ne működne, ha minden alkatrész jó. Ezért én a 74LS07 IC-re gyanakszom, vagy a PC LPT portjára. (Nekem 7407 van benne most) .
A 74LS07-s IC-ből direkt kettőt vettem, de mindegyikkel ugyanazt produkálja. Megpróbálom majd 7407-essel.
A lentebb csatolt LED viillogtato progihoz az áramkört úgy kell elkészíteni, ahogy leírtam? Tehát az MCLR és az osc1-2 lábakat nem kell sehová sem kötni? Meg kipróbálom még ma azt, amit írtatok, hogy a Vpp-t kapcsolom rá előbb, aztán a Vdd-t. Van még egy 16F84A-s picem is, de ezt abszolút nem tudom írni, de ez szerintem azért van , mert a Vpp kimenetemen csak 11,92-93 V van és úgy néztem az adatlapban, hogy ennek a típusnak 12V kell minimum. Köszönöm egyébként, hogy ennyit segítesz, meg foglalkozol a problémámmal!
Idézet: „Tehát az MCLR és az osc1-2 lábakat nem kell sehová sem kötni?” Az OSC1-2 nem kell sehová. Az MCLR lábat egy 10k-s ellenállással kösd fel +5V-ra, különben állandóan resetben lesz a PIC. Az az ellenállás égetés alatt is rajta maradhat. Idézet: „Meg kipróbálom még ma azt, amit írtatok, hogy a Vpp-t kapcsolom rá előbb, aztán a Vdd-t.” Szerintem nem kell, az MCLR miatt nem működött a program!
Összeraktam az áramkört, úgy ahogy mondtad,de nem akar működni...csatatoltam róla egy képet, hátha valamit én szúrtam el. Néztem multiméterrel közvetlenül az RA0-1-es lábakat, de semmi változás nem volt rajtuk. Olyan 0, 3V van rajtuk állandóan.
A másik két kép pedig a kiolvasott progit és az eredeti hex kódot mutatja. A programot oshonnal égettem be, de jó párszor el kellett vele játszadozni mire "sikerült". Próbálkoztam azzal is, hogy előbb kapcsoltam be a Vpp-t majd a Vdd-t, de ugyan úgy bizonytalan volt az égetés. Az 1-es bufferben van a pic memóriájából kiolvasott kód.A kiolvasásnál a pic ID-jét nem sikerült kiolvasni a picből, ahogy az a képen látszik is. Nézegettem a biosban az lpt port beállításait és összehasonlítottam azzal, ami a windowsban van beállítva, de nem volt semmi különbség a kettő között. Amúgy mind a 2 gépen, amin próbáltam az égetőt ugyan az az XP van fent, de egyiken sincs nyomtató telepítve.Ezt azért írtam le, mert olvastam itt a fórumon olyat, hogy a windows és a telepített programok bezavarhatnak az LPT portnak.Lehet, hogy megpróbálnom másik windows-zal a dolgot.
A képből nem sok látszik abból, hogy hogyan kötöted a dolgokat. Le tudod rajzolni pontosan?
Holnap, ha lesz időm, összelógatok egy egyszerű kapcsolást, letesztelem és az alapján elindulunk.
Tessék itt van a kapcsolás.
Csak egy ledet kötöttem be, mert nincs másik előtét ellenállásom.
Kondit is kell tenni a táplábra, 100nF-ot, kerámiát. Én is összeraktam és beégettem a hex-et. Működik, tehát neked is működnie kéne...
Betettem a kondit a pic GND és a Vdd lába közé ,de így sem akar működni.
Közben kipróbáltam egy harmadik gépen is, ami azért jóval újabb, mint az előző kettő és ott is ugyan azt csinálta az égető.
Akkor foglaljuk össze. Az oshonnal be tudod égetni a programot, ellenőrzés jót mutat, de mégsem fut a program?
Csatolom azt a hex-et, amit én fordítottam, hátha:
Igen az oshonnal úgy ahogy működik. A teszt (verify ) hibát ír ki, de az égetés x-edikre sikerül, az olvasás szintúgy csak sokadikra sikerül rendesen. Amúgy a winpic és az ICProg is tudja törölni, olvasni a picet, de írni azt nem. Gondolom ezek a programok közvetlenül a bit kiküldése után ellenőrzik azt, az oshon meg nem ellenőriz.
Köszönöm, még ma megpróbálom a te programoddal.
Egy PIC akkor van beégetve, ha az ellenőrzés rendben. Addig minden csak látszat!
Sziasztok.
Problémám akadt a pic égetéssel. reggel 6 óta küzdök de nem jutottam semmire. LPT-s az égetőm winpic-et használok. A hiba üzenet a következő: Verifying... Verifying CODE, 0x000000..0x00135E Verifying 0x000000..0x00135E Verify Error: 000000: read 003FFF, wanted 00118A Verify Error: 000001: read 003FFF, wanted 00120A Verify Error: 000002: read 003FFF, wanted 00298A Verify Error: 000003: read 003FFF, wanted 000000 More Verify Errors, unable to list all (total=4959) No DATA MEMORY in buffer to verify. Verifying CONFIG, 0x002000..0x002007 Verifying 0x002000..0x002007 Verify Error: 002007: read 003FFF, wanted 003F72 ERROR: Verifying FAILED ! mit rontok el? régebben tudtam használni most meg nem. a pic tipusa pic16f876A előre is köszönöm.
Bocs, hogy csak ilyenkor, de kicsit sűrű volt a program, így nem jutott időm megnézni a te programoddal, de sajnos ugyanazt produkálja, mint eddig...
Sajnos kifogytam az ötletekből, ennek mennie kéne. Mindent átvettünk, mindent rendben látszónak találtunk. Esetleg próbáld meg a kábeleket szalagkábelre cserélni(Az LPT csatiban közösítsd a GND-ket, és elég egy szállal elvinni a panelig), és a 74LS07-et sima 7407-re cserélni. Próbálj 100nF-ot felpakolni a Vdd-re, közel az ICSP csatihoz, vagy rá. A 7407-re is tegyél még kondit, hátha.
Az nem létezik, hogy nálam bármelyik PC-t fogom és működik, nálad meg egyiken se megy. Ha én találkoztam volna már olyan PC-vel, amin nem működik, mér rég tudnám az okát, de így elég nehéz egy ilyen rejtet hibát megtalálni, ha egyáltalán a PC- a ludas. Remélem azért rájössz mi a baj, mert ez elvileg működőképes.
Szerintem azt nyugodtan ki lehet mondani, hogy az áramköröm a rossz, mert 3 különböző gép és 2 pic mindenféle párosításban nem lehet hibás...
Megpróbálom az IC-t kicserélni 7407-re ,de összehasonlítottam a 74ls07-es adatlapjával és a kapcsolási jelszintek és idők is ugyan azok, szóval nem fűzök hozzá túl sok reményt, meg kipróbálgatom még azokat a dolgokat, amiket írtál, főleg a GND közösítésére gondolok itt. Februárban talán hozzá tudok jutni egy oszcilloszkóphoz és azzal összehasonlítani az lpt port jelsorozatát az icsp-n mérhetővel és talán akkor majd kiderül, hogy hol kell keresni a hibát. Köszönöm az eddigi segítségedet!
Én is hasonlóan jártam, még haverhoz is elvittem kipróbálni, de ott sem jártam sikerrel. Az már 3 gép...
Azóta is bánt, hogy mi lehetett a gond, pedig azóta van szilva-féle PK2-m, ami mukkanás nélkül teszi a dolgát. Szkópom nekem sincs, ezért watt akkor sem tudott semmit szólni a hibához. Watt! Esetleg a PK2 Logic Analyzerével tudok valami használhatót mérni? Még nem használtam ezt a funkciót, de tudom, hogy jelalakot nem lehet vele nézni, mégis esetleg időzítések vagy valami?
Elég macerás lenne pontosan kihámozni a jelalakból, főleg, ha nem is a valósat látnánk, hanem egy kondícionáltat.
A 7407 és a 74LS07 között vannak kapcsolásbeli különbségek.
Mivel Watt kolléga kifogyott az ötletekből, ezért másra nem tudok gondolni, hogy az LS lesz a ludas. Egyébként mit jelent hogy LS? Low Speed? vagy mi? Én is meg szeretném építeni. PK2 klónhoz kellene majd. Watt esetleg Te nem próbálnád ki egy LS-el, mert akkor kiderülne, hogy az LS jó-e.
Hello!
Az LS nem a low speed-nek a rövidítése, mint ahogy az logikus lenne, hanem a Low power Schottky-nak, azaz csak kevesebbet fogyaszt.
Én 74LS06-al és 74LS07-el is használtam, mindkettővel rendben működött.
|
Bejelentkezés
Hirdetés |