Jump to content
ELFORUM - Forumul electronistilor

Nu pot scrie un PIC16F628


Recommended Posts

Salut baieti, V-as ruga sa ma ajutati intr-o problema legata de programarea unui microcontroler 16F628.Detin un programator construit din revista ConexClub, ca in imaginea de mai jos, pe care l-au construit si altii si merge.Al meu are in plus o dioda, fata de cea existenta, in terminalul de reglaj al lui 7812 pentru a scoate tensiunea de programare de 13,4V .Am programat cu acest programator PIC-uri : 16F84, 16F84A, 12F629, si toate le-am programat cu succes, iar montajele merg fara probleme.Acum construiesc un montaj cu 16F628, si nu reusesc nicicum sa-l programez.Folosesc ICPROG 1.06B.Iata ce se inampla:Dau comanda stergere, si dupa verificarea stergerii se confirma ca memoria este stearsa: toate adresele sunt 3FFF. Incarc softul de program si dau comanda de scriere, dupa care primesc mesajul ca verificarea a esuat la adresa 0x000h! Mentionez ca am selectat corect device-ul.Dau comanda de citire a continutului memoriei si vad ca memoria este goala fara sa fie scrisa ; adica adresele contin toate 3FFF.Ciudat! Atunci scot un controler 16F84, il introduc in soclu, incarc un soft de proba pentru el si-l ard; la final primesc mesajul : verificare incheiata cu succes. Citesc continutul memoriei si este OK.Nu mai intelg nimic! De ce nu pot scrie si 16F628? Unde gresesc. Microcontrolerul l-am cumparat de nou impreuna cu cel 16F84.Daca cineva ma poate lamuri, ii raman indatorat. Multumesc.

Link to comment
  • Replies 123
  • Created
  • Last Reply

Top Posters In This Topic

Buna,

 

Verifica conexiunile de la programator catre pinii de programare ai lui 16F628. Verifica sa ai Vpp=13V si cand scrii sa palpaie LED-ul de Clk. In rest in softul ICprog trebuie sa ai bifat optiunea API ptr. winXp si Delay minim 4. Uite schema si tabelul cu pinii in link-ul urmator: http://www.geocities.com/danolteanu/programator.GIF

 

 

Succes ,

Daniel

 

Later edit

Sorry: Intradevar ptr. 16F84 si 16F628 pinii de programare sunt aceeasi.

Link to comment

Verifica conexiunile de la programator catre pinii de programare ai lui 16F628, care sunt diferiti de cei ptr 16F84 .

Am verificat in datasheet-ul microcontrolerelor si ambele au aceiasi pini de conectare la programator. Nu inteleg atunci unde este diferenta?!4..........MCLR5..........Vss12........CLK13.........DA14.........VddVpp in timpul scrierii este de 13,4V. Am bifata si optiunea API si driverul WinXP instalat corespunzator. Delay=10.Ovidiu.
Link to comment

Probabil ca stii, dar o mai spun si eu o data. Daca poti programa alte procesoare cu programatorul, eu as suspecta 2 zone. Fie conexiunea corecta la pini, dar asta ai verificat. A doua este ca procesoarele cu/fara A in coada au algoritmi de programare diferiti. Deci este important sa selectezi driverul de programare corect.Eu asa am patit cu un programator care mergea bine pe alte procesoare, dar se incapatana cu un anume. Un update a rezolvat problema.Cirip

Link to comment

Probabil ca stii, dar o mai spun si eu o data. Daca poti programa alte procesoare cu programatorul, eu as suspecta 2 zone. Fie conexiunea corecta la pini, dar asta ai verificat. A doua este ca procesoarele cu/fara A in coada au algoritmi de programare diferiti. Deci este important sa selectezi driverul de programare corect.Eu asa am patit cu un programator care mergea bine pe alte procesoare, dar se incapatana cu un anume. Un update a rezolvat problema.Cirip

Cirip ai dreptate , insa eu cu un anume programator facut din conexclub nu reusisem sa programez de nici o culoare pic16f628A , crezusem ca picul este defect , altii mi-au zis sa incerc si cu winpic800.Ce am observat eu ca winpic800 are o comanda sa detecteze ce memorie este introdusa.Am pus un pic16f84A in acel programator care stiu ca mergea si cu icprog si la scriere si citire , in winpic800 mi-l vedea ca fiind pic16F84A, dupa care am introdus un pic16f628A care nu-l detecta il vedea ca o componenta necunoscuta.Asa ca am facut acest programator de aici si sincer sa fiu merge bine programez cu suuces pic16f628A cu ICPROG insa latenta trebuie sa fie la 40ms in cazul meu la configuratia care o dispun.Winpic800 detecteaza acea componenta care nu mi-l vedea cu programatorul din conexclub.Schema este aici http://feng3.cool.ne.jp/en/pg5v2.html
Link to comment

Am urmat sfaturile voastre, baieti, si am rezolvat problema. Trebuie sa schimb titlul postului: "POT scrie un PIC16F628" ! Cum am facut? Am construit alt programator. Este cel indicat de YO4YOU, schema de mai jos, pe care am modificat-o ca sa n u folosesc ZIPShocket, ca nu am. In schimb am proiectat un alt cablaj pentru a folosi soclu normal cu 18 terminale.Ca si program folosesc tot ICProg si de data aceasta am activat setarea : "interface Direct I/O, cu latenta 10".Rezultat: merge de "rupe".Deja programarea dureaza mult mai putin, fara erori si verificarea se face cu succes. Am probat doua tipuri de controlere : 16F628A si 16F84, si la ambele scrierea s-a facut cu succes, verificarea, deasemenea. Trebuie sa fac o precizare: La programarea lui 16F628A am pus jumperul JP1 pe ON, iar la 16F84 l-am scos, adica OFF, conform cu specificatia din documentatia originala.Daca cineva doreste sa faca programatorul in varianta redusa la soclu cu 18 terminale, am pus si cablajul, vedere de jos, partea cu lipituri.Multumesc la toti care m-au sfatuit si doresc succes si la altii.Ovidiu.

Link to comment

Buna, De curiozitate , am introdus in soclul de la programatorul Adelaida ADPICV01 ,care e identic cu schema din Connex Club, un PIC16F877A si cu ICprog06B care are driver si ptr 16F877A si ptr. 16F628A , am programat de mai multe ori fara nici o eroare. Nu dispun si de 16F628A ca as fi facut proba si cu el dar 99,99% iesea corect. Nu sunt de principiul ca trebuie sa construiesti N variante de programator jdm ptr. uC din familia 16XXXX, cum spunea si cirip totul este de modul de programare intre cele cu A sicele fara.Succes,Daniel

Link to comment

@craciun

 

Da prietene, cred ca ti-a iesit programarea cu 16F877 folosind programatorul din ConexClub, deoarece acel PIC are conditii similare de programare cu PIC16F84. Daca vei vedea schema pe care am construit-o la recomandarea unor colegi de forum, cea de mai sus, acea schema mai are un jumper in plus care pune o conditie la programare tocmai pentru anumite PIC-uri, printre care si 16F628. Acea conditie insa, nu o poate face programatorul din ConexClub, cel facut de mine inainte. Acel jumper numit de mine JP1, era trecut in schema originala ,daca te uiti, ca SW2, si era comutat exact pentru anumite PIC-uri. Pentru conformitate vezi pagina atasata. Ai sa vezi ca setarile lui SW2 care trebuie facute pentru PIC16F84 si 16F877 sunt identice, iar cele pentru 16F628 difera. Deci de aici trag concluzia ca acel programator din ConexClub este bun, dar nu pentru toate PIC-urile, deoarece nu indeplineste anumite conditii de setare, necesare programarii.

http://feng3.cool.ne.jp/pdf/positions.pdf

Link to comment

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now



×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.Terms of Use si Guidelines