OSCCAL försvinner i MPLAB
OSCCAL försvinner i MPLAB
För att sätta mig in i assembler för PIC har jag kört Gooligum Electronics kurs med PICkit 2-som jag tycker är jättebra.
Problemet är att när jag gör ett projekt i MPLAB händer det ofta att OSCCAL-värdet försvinner ur programminnet då jag laddar ner det i målsystemet. Det går att autogenerera eller sätta manuellt med PICkit 2 programmeraren (v2.61) som också laddar ner hexfilen utan att krångla.
Jag har den nyaste versionen av MPLAB v8.66 men det blev på samma sätt med den tidigare versionen. Jag har letat på Microchips diskussionssida efter liknande problem utan någon egentlig framgång.
Det är med processorn PIC 12f629 som problemet uppstår både med PICkit 2:s Low Pin Count Demo Board och med kopplingen på breadboard. På breadbordet har jag försökt att öka avkopplingskondensatorns värde till 200nF.
Kan jag ha fått tag på måndagsexemplar av processorerna eller är det "skit bakom spakarna" som vanligt?
Är det någon här som känner igen problemet?
Problemet är att när jag gör ett projekt i MPLAB händer det ofta att OSCCAL-värdet försvinner ur programminnet då jag laddar ner det i målsystemet. Det går att autogenerera eller sätta manuellt med PICkit 2 programmeraren (v2.61) som också laddar ner hexfilen utan att krångla.
Jag har den nyaste versionen av MPLAB v8.66 men det blev på samma sätt med den tidigare versionen. Jag har letat på Microchips diskussionssida efter liknande problem utan någon egentlig framgång.
Det är med processorn PIC 12f629 som problemet uppstår både med PICkit 2:s Low Pin Count Demo Board och med kopplingen på breadboard. På breadbordet har jag försökt att öka avkopplingskondensatorns värde till 200nF.
Kan jag ha fått tag på måndagsexemplar av processorerna eller är det "skit bakom spakarna" som vanligt?
Är det någon här som känner igen problemet?
Re: OSCCAL försvinner i MPLAB
De flesta normala programmeringsalgoritmer inkluderar att läsa ut kallibreringsvärdet
och sedan skriva tillbaka det tillsammans med applikationen. Men det förutsätter att
man kör en komplett programmering. Man kan strula till det genom att t.ex köra
en separat "erase all" vilket de flesta programmerare stöder. Då tappar man värdet.
När det gäller just ditt fall går det inte att säga så mycket eftersom du
inte talar om vad du har gjort. En beskrivning som "då jag laddar ner det"
duger inte.
och sedan skriva tillbaka det tillsammans med applikationen. Men det förutsätter att
man kör en komplett programmering. Man kan strula till det genom att t.ex köra
en separat "erase all" vilket de flesta programmerare stöder. Då tappar man värdet.
När det gäller just ditt fall går det inte att säga så mycket eftersom du
inte talar om vad du har gjort. En beskrivning som "då jag laddar ner det"
duger inte.
Re: OSCCAL försvinner i MPLAB
Med att ladda ner menar jag förstås att jag i MPLAB väljer pickit2 som programmerare under programmer>select programmer och sedan trycker på knappen program under programmer. Ibland går det bra ibland inte
I Pickit 2 Programmer importerar jag hexfilen File>Import hex och klickar på Write-rutan. Detta har alltid fungerat
Det verkar som att Pickit 2 programmer skriver och verifierar ordentligare för att den håller på längre men det kan förstås vara inbillning.
I Pickit 2 Programmer importerar jag hexfilen File>Import hex och klickar på Write-rutan. Detta har alltid fungerat
Det verkar som att Pickit 2 programmer skriver och verifierar ordentligare för att den håller på längre men det kan förstås vara inbillning.
Re: OSCCAL försvinner i MPLAB
OK, jo det borde fungera.
Hur är det, får man inte upp en logg över vad den har gjort ?
"Programming xxx"
"Verifying xxx"
o.s.v.
Finns kallibreringsvärdet med där ?
Ser du någon skillnad över huvudtaget i loggen mellan
då det fungerar och då det inte fungerar ? Eller hur ser
du skillnaden ?
En annan sak...
> Det är med processorn PIC 12f629 som problemet uppstår både med PICkit 2:s Low Pin Count Demo Board...
Men det kortet har en 16F690. Hur menar du ?
Hur är det, får man inte upp en logg över vad den har gjort ?
"Programming xxx"
"Verifying xxx"
o.s.v.
Finns kallibreringsvärdet med där ?
Ser du någon skillnad över huvudtaget i loggen mellan
då det fungerar och då det inte fungerar ? Eller hur ser
du skillnaden ?
En annan sak...
> Det är med processorn PIC 12f629 som problemet uppstår både med PICkit 2:s Low Pin Count Demo Board...
Men det kortet har en 16F690. Hur menar du ?
Re: OSCCAL försvinner i MPLAB
Jo MPLAB säger att den har verifierat i bland säger den att den hittar fel i minnesområden som inte finns! Ibland att det är OK fast programmet (PICkit 2 programmeraren (v2.61))visar att den har ett raderat kalibreringsvärde. I bland att den hittar fel minne på olika platser, har inte kvar dessa loggar. Jag märker det på att programmet inte går vilket det inte ska heller om den har ett ogiltigt OSSCL värde.
Jag trodde ett tag att det var fel på hårdvaran men jag har två programmerare en hemma och en på jobbet men de ger samma felbild.
Low Pin Count Demo Board går att bestycka med 8p, 14p och 20p PIC. Jag har ju också som jag skrev tidigare i tråden kopplat upp kretsen med lysdioder och brytare på ett breadboard.
Jag följer Gooligums kurs just nu har jag kommit till midrange http://www.gooligum.com.au/tutorials/mi ... id_A_1.pdf kursen har jag har för mig att du har rekommenderat i någon tidigare tråd.
Det kunde vara kul om någon som har följt kursen kunde skriva om sina erfarenheter.
Jag hade tänkt brodera ut kursen lite med att använda PIC12F675 som du rear ut om de finns kvar någon till mig förstås. Tänkte göra en elektronisk duschtermostat för att den är lik PIC 12f629 fast med AD-omvandlare. Brukar den processorn fungera utan mankemang med MPLAB och PICkit 2?
Jag trodde ett tag att det var fel på hårdvaran men jag har två programmerare en hemma och en på jobbet men de ger samma felbild.
Low Pin Count Demo Board går att bestycka med 8p, 14p och 20p PIC. Jag har ju också som jag skrev tidigare i tråden kopplat upp kretsen med lysdioder och brytare på ett breadboard.
Jag följer Gooligums kurs just nu har jag kommit till midrange http://www.gooligum.com.au/tutorials/mi ... id_A_1.pdf kursen har jag har för mig att du har rekommenderat i någon tidigare tråd.
Det kunde vara kul om någon som har följt kursen kunde skriva om sina erfarenheter.
Jag hade tänkt brodera ut kursen lite med att använda PIC12F675 som du rear ut om de finns kvar någon till mig förstås. Tänkte göra en elektronisk duschtermostat för att den är lik PIC 12f629 fast med AD-omvandlare. Brukar den processorn fungera utan mankemang med MPLAB och PICkit 2?
Re: OSCCAL försvinner i MPLAB
> ...går att bestycka med 8p, 14p och 20p PIC.
OK, så är det ja...
> Jo MPLAB säger att den...
Visa istället vad den faktiskt säger, inte din tolkning.
Eller är det problem med cut-n-paste från det aktuella fönstret ?
OK, så är det ja...

> Jo MPLAB säger att den...
Visa istället vad den faktiskt säger, inte din tolkning.
Eller är det problem med cut-n-paste från det aktuella fönstret ?
Re: OSCCAL försvinner i MPLAB
Ok.
MPLAB säger:
Initializing PICkit 2 version 0.0.3.63 Found PICkit 2 - Operating System Version 2.32.0 Target power not detected - Powering from PICkit 2 ( 5.00V) PIC12F629 found (Rev 0xB) PICkit 2 Ready
Programming Target (2011-03-30 17:29:41) PIC12F629 found (Rev 0xB) Erasing Target Programming Program Memory (0x0 - 0xA) Verifying Program Memory (0x0 - 0xA) Programming Configuration Memory Verifying Configuration Memory PICkit 2 Ready Verifying Target PIC12F629 found (Rev 0xB) Verifying Program Memory (0x0 - 0x3FF) Verifying EEPROM Memory (0x0 - 0x7F)
Verifying User ID
Memory Verifying Configuration Memory PICkit 2 Ready
Setting MCLR 3-State
Eller att det är ok men om man går till PICkit 2 programmer så har den satt OSSCAL till 0! Är det ingen här som verkligen har gjort Gooligum Electronics kurs eller programmerat 12F629 i denna miljö?
MPLAB säger:
Initializing PICkit 2 version 0.0.3.63 Found PICkit 2 - Operating System Version 2.32.0 Target power not detected - Powering from PICkit 2 ( 5.00V) PIC12F629 found (Rev 0xB) PICkit 2 Ready
Programming Target (2011-03-30 17:29:41) PIC12F629 found (Rev 0xB) Erasing Target Programming Program Memory (0x0 - 0xA) Verifying Program Memory (0x0 - 0xA) Programming Configuration Memory Verifying Configuration Memory PICkit 2 Ready Verifying Target PIC12F629 found (Rev 0xB) Verifying Program Memory (0x0 - 0x3FF) Verifying EEPROM Memory (0x0 - 0x7F)
Verifying User ID
Memory Verifying Configuration Memory PICkit 2 Ready
Setting MCLR 3-State
Eller att det är ok men om man går till PICkit 2 programmer så har den satt OSSCAL till 0! Är det ingen här som verkligen har gjort Gooligum Electronics kurs eller programmerat 12F629 i denna miljö?
Du har inte behörighet att öppna de filer som bifogats till detta inlägg.
Re: OSCCAL försvinner i MPLAB
Jag skulle kunna hämta en 629'a på kontoret och provköra
lite i min PICkit2 Starter kit så får vi se...
lite i min PICkit2 Starter kit så får vi se...
Re: OSCCAL försvinner i MPLAB
Gör man en googling, verkar det som att du behöver nyare FW-revison eller nått sånt (alltså PicKit2)
Re: OSCCAL försvinner i MPLAB
> ...behöver nyare FW-revison eller nått sånt...
Varför tror du det ? Vad har du sett ? Länk ?
"Operating System Version 2.32.0" är så vitt jag kan se senaste FW till PICkit2.
Nä, detta ska helt enkelt bara fungera. Kallibrerigsvärdet ska inte bara tappas bort.
Varför tror du det ? Vad har du sett ? Länk ?
"Operating System Version 2.32.0" är så vitt jag kan se senaste FW till PICkit2.
Nä, detta ska helt enkelt bara fungera. Kallibrerigsvärdet ska inte bara tappas bort.
Re: OSCCAL försvinner i MPLAB
Läste nog fel nånstans, hursom helst, det är inte så att du lyckats radera OSCCAL värdet, det skall tydligen gå att göra.
I så fall måste ett nytt genereras, och programmeras in.
Lär visst finnas nån funktion för detta i programvaran.
Har även hittat en förmodligen tidig handledning till PICKIT2, där det faktiskt står att PICKIT raderar OSCAL och BG vid en sk "Full Erase".
Mycket olyckligt att det skall kunna hända.
Enklast att verifiera är ju att läsa processorn, och gå in och titta på de adresser där OSCCAL värdet lagras (dvs det fabriksprogrammerade) och BG-bitarna
Är dessa 0 så är de raderade och måste re-genereras
I så fall måste ett nytt genereras, och programmeras in.
Lär visst finnas nån funktion för detta i programvaran.
Har även hittat en förmodligen tidig handledning till PICKIT2, där det faktiskt står att PICKIT raderar OSCAL och BG vid en sk "Full Erase".
Mycket olyckligt att det skall kunna hända.
Enklast att verifiera är ju att läsa processorn, och gå in och titta på de adresser där OSCCAL värdet lagras (dvs det fabriksprogrammerade) och BG-bitarna
Är dessa 0 så är de raderade och måste re-genereras
Re: OSCCAL försvinner i MPLAB
Som sodjan skriver har jag laddat ned det senaste "Pickit 2 operating system" som de kallar det i själva från nätet och laddat det i PICkit 2 enheten. Dessutom har jag mätt spänningarna och kollat flankerna på ~30kHz signalerna med voltmeter och oscilloskopet under Tools>Troubleshooting. Innan jag skrev till forumet
Att ladda ett nytt OSCCAL-värde fungerar bra med PIKkit 2 Programmer Tools>OSCCAL>Set manually eller Auto regenerate. Det har jag gjort ett antal gånger nu.
Jag börjar tro att det är måndagsexemplar med dåligt minne på kretsarna - jag har testat med flera. Ibland fungerar det att ladda ned programmet med MPLAB och i bland inte. För att få fram felet till loggfilerna böt jag program tre gånger och laddade ner det totalt fem gånger.
Kan det hända att MPLAB algoritmen inte väntar ut att flashningen har "bitit" innan de verifierar?
BG bitarna är det BandGap? Vad gör dessa? Verkar vara nått att titta på.
Att ladda ett nytt OSCCAL-värde fungerar bra med PIKkit 2 Programmer Tools>OSCCAL>Set manually eller Auto regenerate. Det har jag gjort ett antal gånger nu.
Jag börjar tro att det är måndagsexemplar med dåligt minne på kretsarna - jag har testat med flera. Ibland fungerar det att ladda ned programmet med MPLAB och i bland inte. För att få fram felet till loggfilerna böt jag program tre gånger och laddade ner det totalt fem gånger.
Kan det hända att MPLAB algoritmen inte väntar ut att flashningen har "bitit" innan de verifierar?
BG bitarna är det BandGap? Vad gör dessa? Verkar vara nått att titta på.
Senast redigerad av Bonzo 30 mars 2011, 22:07:47, redigerad totalt 1 gång.
Re: OSCCAL försvinner i MPLAB
Hmm, inga problem med USB-anslutningar och så, kör du direkt eller via HUB?
Vad får du för några värden om du läser en misslyckad krets?
Vad får du för några värden om du läser en misslyckad krets?
Re: OSCCAL försvinner i MPLAB
Jag kör direkt med USB:n visserligen från en laptop men jag får samma fel från en annan laptop. Jag har också två PICkit enheter som bägge ger samma fel.
När jag läser en misslyckad krets får jag rätt hexvärden men fel OSCCAL värde som i den bifogade bilden i tråden.
När jag läser en misslyckad krets får jag rätt hexvärden men fel OSCCAL värde som i den bifogade bilden i tråden.
Re: OSCCAL försvinner i MPLAB
Om jag uppfattar dig rätt, när du läser tillbaka en misslyckad krets så är värden på 0x3FFF (eller vilken adress det nu skall vara) rätt, och programmeringsverktyget visar fel värden?
Vad händer om du anger rätt värde manuellt?
Hur långt ifrån ligger du normvärdet på spänningarna?
Vad händer om du anger rätt värde manuellt?
Hur långt ifrån ligger du normvärdet på spänningarna?