[ kazanovic @ 07.05.2014. 23:07 ] @
Pozdrav,

Imam sledeci neobjasnjiv problem, isprogramirao sam pic 16F628A nakon toga cip vise ne mogu da reprogramiram. PIC radi sa isprogramiranim kodom ali je problem sto ga pickit2 vise ne prepoznaje. Mislio sam da mi je crkao PIC, medjutim uzeo sam novi pic i isprogramirao na njega isti kod kad ono vise ni taj cip se ne moze reprogramirati. Mislim da je problem u kodu koji sam koristio. Da li postoji kakva mogucnost da resetujem cip ili ponovo reprogramiram. Nailazio sam na nekim forumima da su imali isti problem ali niko nikako rjesenje nije nasao.


PICKIT2 Programer klon
pic16f628a

Koristim MikroC
Podesavanje
INTOSC - 4MHz
MCLR Pin - Disabled
i sve ostalo je Disabled


Evo i kod

Code:

signed long brsek=0;
void interrupt(){
     if(TMR1IF_bit==1){
         //PORTA.RA0 = ~PORTA.RA0;
         TMR1IF_bit=0;
          TMR1H         = 0xFF;
          TMR1L         = 0xFF;
          if(PORTB.RB4==1){
                brsek++;
             PORTA.RA1=1;
             //PORTA.RA0=0;
          }
          else if(PORTB.RB4==0){
                  PORTA.RA1=0;
                  //PORTA.RA0=1;
                  if (brsek>172 && brsek<175){ //52,32usec = 1
                     PORTA.RA0=~PORTA.RA0;
                     }
                  //if (brsek>9 && brsek<21){ //52,32usec = 1
                     //PORTA.RA0=~PORTA.RA0;
                     //}
                       brsek=0;
                  }
                  

          }
}
void main() {
     TRISB = 0b11011111;            // B port kao ulazni
     TRISA = 0b00000000;            // A port kao izlazni
     PORTA = 0x00;                  // logicke nule na port A
     T1CON=0b00001101;
     TMR1IF_bit         = 0;
     TMR1IE_bit         = 1;
     TMR1H         = 0xFF;
     TMR1L         = 0xFF;
     INTCON         = 0xC0;

     while(1){

     }
}

[ bogdan.kecman @ 07.05.2014. 23:18 ] @
pickit2 i mikroc .. to je najveci problem mikroC-a po meni, nekompatibilnost sa microchip alatima koje svi ostali koriste :(

elem, prva stvar koju uradis koja bi trebala da pomogne
startujes pickit2 programmer aplikaciju, mislim da je 2.61 najnovija verzija mada proveri mozda ima i novije
ako ne prepozna sam device odaberes tamo u device pic16f628a
obavezno proveri da tools / use LVP nije stiklirano
kliknes na erase
kada ga obrise proveris blank check

to bi trebalo da ga obrise i onda mozes da pises po njemu


ako to ne pomogne onda probas
1. tools / iskljucis "fast programming
2. tools / ukljucis use VPP progra...
3. probas erase

to bi trebalo da resi problem

najcesca greska je taj LVP, kada je pic nov njemu je enabled LVP ali cim ga ti isprogramiras ti mu ocistis LVP config (osim ako ga nisi explicitno upalio) i onda ne mozes da ga lvp isprogramiras. kada ugasis lvp mozes normalno da ga isprogramiras posle toga

[ kazanovic @ 07.05.2014. 23:59 ] @
Probao i opet nista. Pojavlje se VPP Voltage error. Nije problem sto sam pokvario dva cipa, al je problem ako mi se u buducnosti opet ovo desi.
[ bogdan.kecman @ 08.05.2014. 00:02 ] @
da li si odradio kalibraciju napona na pk2?

da li napajas plocu sa pickit2 ili?

da li koristis dip ili soic/mssop verziju 628a ?

Vpp treba da moze da izgenerise 12V za taj pic ako se dobro secam, ako
imas osciloskop ili neki dmm koji ume da meri max napon u nekom
intervalu okaci ga izmedju Vpp i Vss i izmeri da li se izgenerise 12+
volti na Vpp pinu.
[ bogdan.kecman @ 08.05.2014. 00:07 ] @
takodje, jel to original pk2 ili klon?
[ kazanovic @ 08.05.2014. 00:41 ] @
PIC je dip. Sad sam prikacio na napajanje na ploci i ne pojavljuje se ona poruka. Medjutim opet ne prepoznaje pic. PicKit2 je klon kupio sam ga n kupindu. Osciloskop nemam.
[ bogdan.kecman @ 08.05.2014. 00:50 ] @
pretpostavljam da ti je taj pic u podnozju, izvadi ga sa ploce i spoj
samo icsp pinove direktno na pk2
ako opet zeza, premeri napon na Vpp pinu tokom programiranja (ako imas
analogni voltmetar bolje ces da vidis kako skace kazaljka, ali odradice
i digitalni posao, ocekujes oko 12-13V na tom pinu dakle odaberi voltage
range koji odgovara tome, 20V ili sta vec mozes da odaberes, nemoj da
koristis autorange)
[ kazanovic @ 08.05.2014. 01:08 ] @
Probao sam i na jedan i na drugi nacin. kada pokusam da programiram pojavi se No device detected, a na digitalnom napon skoci tek na 3V mozda malo vise.

Narvno prije programiranja ovog koda iznad programirao sam neki drugi kod tako da sa njim nije bilo problema radio je normalno.
[ bogdan.kecman @ 08.05.2014. 01:19 ] @
ne radi HVP vec LVP cim ne skace Vpp preko 12V, mada sad ne znam kakav
ti je dmm dal ume da izmeri to, ne traje dugo..

ne odgovori na pitanje, da li si uradio kalibraciju pickit2 ?
http://www.auelectronics.com/Q4.htm
[ kazanovic @ 08.05.2014. 01:35 ] @
Sad pokusah da uradim kalibraciju ali pojavljuje se obavjestenje could not fully calibrate the unit. The usb voltage may be to low to completely calibration. Ja izmjerim na instrumentu pokazuje 5.03V ali se pojavljuje ova poruka.
[ bogdan.kecman @ 08.05.2014. 01:41 ] @
nemas neki analogni voltmetar?
evo ja zabodem 628 u pk2 i merim Vpp i na erase on ode na 13V
ako pk2 nije u stanju da posalje 13V na Vpp ne mozes da radis high
voltage programiranje tog pica
normalno to suvise kratko traje da bi dmm mogao da izmeri (osim ako
nemas capture mod koji ce da meri max/min)

elem, za lvp je bitan pin6 sa icsp-a da ide na rb4(pgm) sumnjam da si ti
to spajao tako da nesto nisam siguran da je problem u 12V na Vpp posto
ne bi mogao ni prvi put da programiras...

proveri
1. tools - nista ne terba da bude stiklirano
2. programmer - "manual.." ne treba da bude stiklirano, verify on write
i clear buffer treba
3. tools/check communication
4. tools/target vdd source/force pickit2 (ovo je za samo pic okacen na
pickit2 bez ploce)

ako ne prepozna pic ugasis komp (ne resetujes, fizicki ugasis), iscupas
pickit2 iz kompa, pa upalis komp, vratis pickit2 i probas opet
[ bogdan.kecman @ 08.05.2014. 01:42 ] @
da li ti je pickit zaboden preko nekog hub-a ili direkt u pc?
vrlo moguce da taj klon ima neki problem
[ kazanovic @ 08.05.2014. 01:51 ] @
Imam PIC 12F675 i njega normalno programira sa njim nemam problem. ni sa ovim picom nisam imao problem reprogramirao sam ga 100 puta i nista mu se nije desilo dok nisam ovaj kod upotrebio. Da zlo bude vece ja uzmem drugi nov na njega isprogramiram Da blinka led dioda radi normalno, ajde ponovo uzmem ovaj kod isprogramiram kad ono opet ne prepoznaje pic. vjerovatno sam mu zeznuo sto sam stavio timer1 interrupt svakih 1us MCCLR port disableovao.
Narvno mjerio sam VPP kada brisem cip na dmm i skoci na oko 10-11v vjerovatno ne stigne da izmjeri.
[ bogdan.kecman @ 08.05.2014. 01:57 ] @
a ako selektujes da rucno biras pic, odaberes 16f628a i uradis erase?
[ kazanovic @ 08.05.2014. 02:03 ] @
Nece ni tako. samo No device detected. Direktno u laptop ide usb jedino da laptop na usb daje manji napon ma da ne bi trebalo. Ne postoji nikakav nacin da se cip totalno obrise? Negdje sam procitao da je vjerovatno zbog podesavanja portova a i toga sto sam iskljucio MCCLR ma da mozda nisam dobro ni razumio posto je na engleskom bilo.
A moguce je i to da PicKit klon nije potpuno ispravan. Ma da nije do sad pravio problem
[ bogdan.kecman @ 08.05.2014. 02:09 ] @
ima brdo programatora koji kad je pic zaboden (generalno kad ga izbacis
iz lvp i ugasis mclr) ne mogu da ga isprogramiraju ali pickit2 nije
jedan od njih .. meni se jos nije desilo da sa pk2 ne mogu da obrisem pic.

nisam te skontao za manual, kada odes na programmer i stikliras "manual
device select" on ti da da biras pic iz dropdown-a

ides na device family/mid range/standard
i onda iz drop down-a (gde pise select part) odaberes 16F628A
i onda kliknes na erase
[ kazanovic @ 08.05.2014. 02:21 ] @
Sve to odradim ali nista. Nasao sam mozda 2 teme nainternetu vezane za ovo i pominju da je vjerovatno do podesavanja pica e sad stvarno nije ni meni nista jasno, da mi je znati do cega je da u buduce ne pravim gresku.
[ bogdan.kecman @ 08.05.2014. 02:35 ] @
neki config flag si setovao u project property od mikroc projekta, ne
znam koji ali bi svakako pk2 morao da moze to da resetuje, tome sluzi
hvp jedino ako ne moze da postigne dovoljno visok napon na vpp. pogledaj
taj klon, da li mozes lako da otkacis 5V koje dobija sa usb-a i da mu
das 5V sa nekog externog valjanog izvora

daj linkove na to sto si nasao
[ kazanovic @ 08.05.2014. 02:46 ] @
http://www.edaboard.com/thread196874.html

http://www.edaboard.com/thread256221.html

Nisam siguran da li su oba linka bas ona ne mogu da nadjem u istoriji sta sam sve posjecivao.
Vjerovatno sam ja zabrljao sa podesavanjima.
Uglavnom je sve stavljeno na disable sto se tice osnovnih podesavanja interni oscilator.

Jedino sto se timer 1 interrupt vrti svakih 1us sto je vjerovatno veoma mala vrijesnost. U proteusu sam probao i nije pravilo problem pa rekoh da probam kako radi na pravom hardweru. Cip radi ono sto sam isprogramirao ali ne moze da se isprogramira.
[ kazanovic @ 08.05.2014. 02:54 ] @
Probacu ovo sa STABILIZATOROM NAPONA 7805 on daje 5V 1A. tako da mu je vjerovatno dovoljno.
[ bogdan.kecman @ 08.05.2014. 02:58 ] @
nema tajmer veze sa tim, samo konfiguracija.
vezi PGM pin na gnd, zakaci ostalo na pickit2, napajaj sa pickit2 i
odaberi "Use Vpp program entry" i trebalo bi da mozes da ga obrises. to
pise i na ovim linkovima

moguce ti VPP ne poraste dovoljno brzo pre nego dodje Vdd, obavezno
ugasi na pickit2 napajanje

znaci na glavnom ekreanu ispod VDD PICKIT2 on treba da bude ODSTIKLIRANO
:) a na tools target vdd source treba da bude force pickit2
i mora da bude stiklirano tools / use Vpp...

e sad, ako ni to ne pomogne nadji negde 12V izvor, spoj gnd sa picom i
pickitom, Vpp pin od pickit-a do pic-a stavi kroz neku diodu i onda pre
nego kliknes na erase rucno dovedi 12V direktno na pic i onda klikni
erase i onda skini 12V sa Vpp .. dakle ti rucno obezbedi da Vpp bude pre Vdd
[ kazanovic @ 08.05.2014. 03:41 ] @
Sve sam probao spajao i opet nista. Mozda je ipak do PicKit2 klona tako da mu ja tu ne mogu nista.

U svakom slucaju hvala!!!!
[ bogdan.kecman @ 08.05.2014. 03:48 ] @
vidi da li imas u lokalu nekoga sa pk2 original da proba da ga obrise .. ja nemam 628A ovde imam samo 628 tako da ne mogu da probam a skuplje kosta postarina da ga posaljes nego da kupis nov :(

u svakom slucaju da znas za sledeci put
- nemoj da gasis mclr
- nemoj da palis lvp

[ kazanovic @ 08.05.2014. 03:54 ] @
Nisam i necu vise nikad :D Jos jednom hvala!!