Trubbel med OSCCAL värdet och Vellemans K8048
Postat: 28 augusti 2005, 11:58:19
Halloj!
Jag höll på att pula med en 16F676 och flashade med Vellemans K8048 då jag fick ett felmeddelande att osccal värdet inte kunde skrivas (0x3ff). Jag testade då att radera först och sedan flasha igen. Det gick bra, men nu är OSCCAL värdet väck på den PIC:en.
Sedan höll jag på med en 12F675. Där var jag förutseende nog att läsa av OSCCAL-värdet först så jag har det sparat och uppskrivet. Däremot så fick jag samma problem/felmeddelande med den. När jag raderat var OSCCAL värdet borta.
Nu hade jag det iaf uppskrivet så jag chansade att lägga in org 0x3ff och retlw 0x84 i slutet av koden, där 0x84 är det värde jag läste av tidigare.
När jag nu testar att flasha, så får jag ibland samma meddelande som först (ERROR när den skriver på 3ff) eller inget fel alls. Får jag inget felmeddelande under flash och senare läser av 0x3ff så är ju värdet där helt galet, antingen är det 0 eller står 0x84 där men inte koden för själva retlw-kommandot.
Är det någon som vet vad detta beror på? Det verkar ju som att programmeraren iaf läser av OSCCAL värdet först och försöker lägga tillbaka det under flash, men misslyckas av nån anledning.
All övrig kod som flashas är OK, och PIC:en funkar som den skall när jag använder den om jag struntar i att hämta kalibreringsordet i början.
Edit: Felmeddelandet från programmeraren är: "Write error at: 03FF, Wrote 3484, Read 0084", ibland står det "Read 0000" också. Verkar vara slumpartat.
mvh Mats
Jag höll på att pula med en 16F676 och flashade med Vellemans K8048 då jag fick ett felmeddelande att osccal värdet inte kunde skrivas (0x3ff). Jag testade då att radera först och sedan flasha igen. Det gick bra, men nu är OSCCAL värdet väck på den PIC:en.
Sedan höll jag på med en 12F675. Där var jag förutseende nog att läsa av OSCCAL-värdet först så jag har det sparat och uppskrivet. Däremot så fick jag samma problem/felmeddelande med den. När jag raderat var OSCCAL värdet borta.
Nu hade jag det iaf uppskrivet så jag chansade att lägga in org 0x3ff och retlw 0x84 i slutet av koden, där 0x84 är det värde jag läste av tidigare.
När jag nu testar att flasha, så får jag ibland samma meddelande som först (ERROR när den skriver på 3ff) eller inget fel alls. Får jag inget felmeddelande under flash och senare läser av 0x3ff så är ju värdet där helt galet, antingen är det 0 eller står 0x84 där men inte koden för själva retlw-kommandot.
Är det någon som vet vad detta beror på? Det verkar ju som att programmeraren iaf läser av OSCCAL värdet först och försöker lägga tillbaka det under flash, men misslyckas av nån anledning.
All övrig kod som flashas är OK, och PIC:en funkar som den skall när jag använder den om jag struntar i att hämta kalibreringsordet i början.
Edit: Felmeddelandet från programmeraren är: "Write error at: 03FF, Wrote 3484, Read 0084", ibland står det "Read 0000" också. Verkar vara slumpartat.
mvh Mats