Picen död?

PIC, AVR, Arduino, Raspberry Pi, Basic Stamp, PLC mm.
OnkelF
Inlägg: 86
Blev medlem: 19 september 2008, 21:11:07
Ort: Stockholm

Picen död?

Inlägg av OnkelF »

Hej.

Har just testat pic för första gången och det var inte det lättaste må jag säga. Tog nån dag innan jag fick en lysdiod att blinka =)

Hur som. Jag har en 16f628 och en MP3.5-programmerare. Har funkat utmärkt att programmera picen hela tiden (det enda som faktiskt funkat), men nu går det inte programmera den längre. Står att det inte är en pic i programmeraren. Får ett annat felmeddelande om jag tar ut den så den känner av att det är nåt där iaf.

Kan man ställa om en pic så den inte går att programmera om? Jag har nämligen testat alla möjliga inställningar på den.
Den håller väl för att programmeras om fler än 100ggr?

Nån som har nån ide vad det kan vara som är problemet. Har bytt strömkälla till programmeraren utan resultat.

Sen har jag en annan fråga. Jag har testat att få igång en lcd men det har inte gått så bra. Läste nånstans att man måste ha en extern kristall för att det ska funka då den interna är för oprecis. Stämmer det?
Kan man testa en lcd på något sätt så man ser att den funkar?

Mycket frågor. Tacksam för svar
//Kim
sodjan
EF Sponsor
Inlägg: 43251
Blev medlem: 10 maj 2005, 16:29:20
Ort: Söderköping

Inlägg av sodjan »

> Tog nån dag innan jag fick en lysdiod att blinka =)

Det var snabbt.

> Jag har en 16f628

628 eller (mer troligt) 628A ?

> Kan man ställa om en pic så den inte går att programmera om?

Delvis beror det på prorammeraren, men med många modeller, ja.
Speciellt "internal-MCLR" kan ställa till det.

> Den håller väl för att programmeras om fler än 100ggr?

Det är en uppgift som står i databladet för varje modell, men > 100 gånger, ja.

> Läste nånstans att man måste ha en extern kristall för att det ska funka då den interna är för oprecis.

Det är fel. (För att driva en LCD).

> Mycket frågor.

Men inte mycket info, så några speciellt bra svar lär du inte få.
Se även : http://elektronikforumet.com/forum/viewtopic.php?t=6057
för lite tips...
Användarvisningsbild
Marta
EF Sponsor
Inlägg: 7487
Blev medlem: 30 mars 2005, 01:19:59
Ort: Landskrona
Kontakt:

Inlägg av Marta »

Har Du skrivit programmen själv, eller laddat dem från nätet?

Antar det senare. Kan Du posta en länk till det sista programmet Du flashade in? Det skall vara kompletta uppgifter så det går att se exakt vad det var för en fil Du använde.

Har Du ändrat på något sätt i konfigurationsbitarna?

Om det nämns något om "internal MCLR" kring den fil Du sist flashade så har Du hittat problemet. PIC går inte att flasha om utan en speciell procedur. Sök efter "Vpp before Vdd" till Din utrustning, om det nu går att åstadkomma med den. Klarar den inte detta måste PIC sättas i en utrustning som klarar det för att "låsas upp".

Edit: Köp en Wisp648 så har Du vad som behövs för att själv kunna "låsa upp" den. Kan vara bra att ha om det skulle hända igen och även om Du vill kunna använda MCLR som ingång t.ex. på 8-pin kretsar där det ibland gäller att ta vara på resurserna.
Senast redigerad av Marta 20 september 2008, 11:28:22, redigerad totalt 1 gång.
OnkelF
Inlägg: 86
Blev medlem: 19 september 2008, 21:11:07
Ort: Stockholm

Inlägg av OnkelF »

Det är en 628 även om det stod 628A i Kjells katalog.

Tror jag kommit på vad jag gjort iaf. Jag har slagit på kodskyddet (Code Protection). Hittade att det skulle försvinna om man gjorde en "bulk erase" vilket jag gjort. Winpic tyckte att det gick utmärkt att göra, inte MultiProg, men kretsen är inte tömd. Hur ska jag få igenom en sådan då?

Jag har gjort programmet i MikroC. Där kan man ställa config-bitarna lite hur som. Där testade jag allt jag kunde välja i olika kombinationer. Jag tog konfigurationer som andra hade och mixade det med mina. Kanske inte allt för smart...
Användarvisningsbild
Marta
EF Sponsor
Inlägg: 7487
Blev medlem: 30 mars 2005, 01:19:59
Ort: Landskrona
Kontakt:

Inlägg av Marta »

Det är bara till att köra bulk erase som vanligt så rensas code protect.

Det är inte code protect som ger problem, det ärMCLR. Rörde Du denna configbit?

Detekterar utrustningen kretsen nu?

Har kretsen ett fungerande program som t.ex. blinkar en LED? Fortsätter denna i så fall att blinkaäven om Du ansluter MCLR-pinnen till Vss/GND ? Äär så fallet så har den intern MCLR och är 100% säkert låst enligt vad jag skrev i mitt föregående inlägg.

Edit: rättat ett "litet" fel...
Senast redigerad av Marta 20 september 2008, 23:15:46, redigerad totalt 1 gång.
OnkelF
Inlägg: 86
Blev medlem: 19 september 2008, 21:11:07
Ort: Stockholm

Inlägg av OnkelF »

Nej den kan inte detekteras.

Det som finns på kresten nu är ett program som ska prata med lcd:n så jag kan inte testa om den kör då min lcd inte funkade så bra på den koden
Användarvisningsbild
Marta
EF Sponsor
Inlägg: 7487
Blev medlem: 30 mars 2005, 01:19:59
Ort: Landskrona
Kontakt:

Inlägg av Marta »

Jjag skulle våga sätta en bra slantpå att det är MCLR.

Det finns ett quick-and-dirty trick som kan fungera i så fall. Kan Du koppla loss MCLR från övrigt när Du skall flasha den? I så fall kan Du prova att ansluta ett riktigt förskt 9V batteri mellan GND och MCLR-pinnen (plus till MCLR) och därefter ge ett kommando för bulk erase. Koppla sedan tillbaka allt som vanligt.

Detta är ett fult trick och tipset lämnas helt utan garantier. Det kan fungera, men det kan även säga tjoff någonstans om det vill sig illa. Speciellt om man gör fel och råkar ansluta 9V till något annat än MCLR.
sodjan
EF Sponsor
Inlägg: 43251
Blev medlem: 10 maj 2005, 16:29:20
Ort: Söderköping

Inlägg av sodjan »

Grundproblemet är igentligen inte MCLR... :-)

Problemet är det här :

> Där testade jag allt
> jag kunde välja i olika kombinationer. Jag tog konfigurationer som
> andra hade och mixade det med mina. Kanske inte allt för smart...

Nej, inte speciellt smart... :-)

Du ska naturligtsvis sätta CONFIG så som du vill ha det i din
speicifika koppling ! Det är inget som man "mixtrar" med...

Dessutom stör detta mig oerhört :

> Det är en 628 även om det stod 628A i Kjells katalog.
OnkelF
Inlägg: 86
Blev medlem: 19 september 2008, 21:11:07
Ort: Stockholm

Inlägg av OnkelF »

Winpic lyckades läsa ut min config.
11 1100 0000 0000

Enligt databladet så är de fyra första (bit 10-13) att jag inte har slagit på kodskydd som jag trodde.
Men bit fem (från höger) är den som ställer MCLR och den är noll. Borde vara 1 om jag förstår det rätt.

0 = RA5/MCLR pin function is digital Input, MCLR internally tied to VDD

Med andra ord så hade ni rätt, kanske inte helt oväntat.
Ska testa och se om jag kan använda min programmerare till att rensa den annars får jag väl göra 9v-tricket.
sodjan
EF Sponsor
Inlägg: 43251
Blev medlem: 10 maj 2005, 16:29:20
Ort: Söderköping

Inlägg av sodjan »

Ja, det ser ut så, om tolkningen (och utläsningen) av CONFIG är korrekt.
Användarvisningsbild
Marta
EF Sponsor
Inlägg: 7487
Blev medlem: 30 mars 2005, 01:19:59
Ort: Landskrona
Kontakt:

Inlägg av Marta »

Men hur kan Du läsa config utan Vpp före Vdd om kretsen är konfigurerad för intern MCLR? Lika väl som den kan ta emot detta läskommando så borde den kunna ta emot kommandot för bulk erase.

Har Du en länk till en hemsida som beskriver "MP 3.5" ? Det är stört omöjligt att googla på denna beteckning, det blir bara femtioelvatusen felträffar...
sodjan
EF Sponsor
Inlägg: 43251
Blev medlem: 10 maj 2005, 16:29:20
Ort: Söderköping

Inlägg av sodjan »

Good point, Marta... :-)
Användarvisningsbild
korp
Inlägg: 1216
Blev medlem: 30 maj 2006, 02:21:18
Ort: Strömstad

Inlägg av korp »

Jag hade liknande problem med tidigare versioner av MultiProg när jag började med PIC-programmering och var nära att dödförklara några 12F629. Lyckades dock köra erase på dem med en enkel seriell JDM-programmerare från Olimex.

Problemet kom sig av att jag körde med intern MCLR, intern oscillator, och använde ICSPDAT/ICSPCLK-pinnarna som outputs, vilket ställer en del krav på programmeraren och kretsen i övrigt.

Efter version 2.01 av Multiprog så verkade de flesta problem med MCLR dock ha löst sig. Och stödet för intern MCLR fixades efter påtryckningar från undertecknad :) Men jag hade MP 3.6 USB.

Vilken version har du? 2.10 ligger ute hos Ad-teknik.

Jag kör numera uteslutande med PicKit2 så jag kan inte kolla MultiProg v2.10.

Edit: Observera att MP 3.5 som är en relativt gammal seriell programmerare, inte stöder omprogrammering med intern MCLR aktiverad. Jag citerar Ad-teknik från epostväxling 2006;
Problemet är att om du använder intern oscillator och stänger av reset-ingången på kretsen så kan inte programmeraren sätta chippet i programmeringsläge eftersom MP 3.5 Seriell alltid ger 5V till chippet så snart programmeraren startar upp. (chippet börjar exekvera)

På MP 3.6 USB så styrs strömförsörjningen till chippet som skall programmeras av programvaran och då försvinner det här problemet.
OnkelF
Inlägg: 86
Blev medlem: 19 september 2008, 21:11:07
Ort: Stockholm

Inlägg av OnkelF »

Marta: Visade sig att jag inte alls lyckats läsa ut CONFIG. Var winpic som slumpade ut det...

Jag trodde att mp 3.5 var en känd programmerare. Var ju den alla köpte som gjorde piratkort :roll:

korp: Jag har kört med multiprog 2.10 och det var ju en trevlig programvara. Jo upptäckte att den inte stödde omprogrammering med intern MCLR aktiverad. Så jag tyckte jag var smart och kopplade de fem trådarna till min labbräda men satte 12v istället för mclr-tråden och lät den vara påslagen före jag startade programmeraren men det funkade inte heller. Eller får man inte ha den påslagen för lång tid innan man försöker göra en bulk erase?
Skriv svar