Sida 1 av 1

ICSP programmering av PIC24F?

Postat: 18 september 2009, 22:02:33
av Mr M
Hej

Jag har experimenterat lite med att programmera om en PIC24FJ64GA004 via ICSP (MCLR, PGD, PGD) med en FTDI FT232R (USB till UART). Detta för att slippa en bootloader samt att jag redan har en FTDI-krets på kortet.

Har följt anvisningarna i PIC24FJXXXGA0XX Flash Programming Specification (men man får passa sig för skrivfel) http://ww1.microchip.com/downloads/en/D ... 39768d.pdf.

Men tyvärr blir det fel i steg 8 på sidan 19 då man ska skriva till FLASH minnet. Man ska ligga och polla WR biten i NVMCON och när skrivningen är klar skall WR biten bli 0. Men problemet är att den aldrig blir 0. :doh: Men om man stoppar programmeringen då och läser tillbaks det som skrevs ser man att 64 instruktioner blev korrekt programmerade.

Samma polling teknik används vid FLASH radering i steg 5 på sidan 17, och då funkar det att WR blir nollad när raderingen är klar.

Så för att lösa problemet kollade jag i motsvarande dokument för dsPIC. Där pollar de inte WR-biten utan bara väntar 2ms och sedan nollar biten manuellt. Jag har kört den metoden och det funkar.

Förlängde väntetiden för programmeringen (P13) till 10ms dock, tyvärr finns ingen maxtid angiven för programmeringen, endast en min tid. Om man tittar på sidan 49, tiden P13 anges en min tid på 2ms och ingen maxtid, eller ska man tolka att maxtiden är samma som mintiden?

Någon här som har knölat med samma problem?

Sen har jag även sett i dsPIC dokumentet att de använder följande för att möjliggöra radering och programmering:

Kod: Markera allt

MOV #0x55, W8
MOV W8, NVMKEY
MOV #0xAA, W9
MOV W9, NVMKEY
Men i dokumentet för PIC24an finns inget sådant med. Det verkar som radering och programmering är "enablat" så fort man är i ICSP mode (men tyvärr står det inget om det).

Alltså nu funkar det att radera FLASH minnet, programmera om det, läsa tillbaks. Jag kan verifiera att innehållet blir samma som via ICD2 med MPLAB samt att programmet funkar som det skall. Men jag skulle vilja veta mer om varför WR-biten inte funkar vid programmeringen. :humm:

Re: ICSP programmering av PIC24F?

Postat: 18 september 2009, 23:23:25
av sodjan
Ja, det här är ju betydligt "djupare" än vad de flesta (som kör färdiga programmerare
som sköter all low-level funktioner). Kanske att du skulle kunna kolla om det finns
ett lämpligt Microchip support forum istället ?

Om et saknas en max tid för något så tolkar jag det som att det inte finns någon max tid.

Re: ICSP programmering av PIC24F?

Postat: 18 september 2009, 23:38:00
av Mr M
sodjan skrev:Ja, det här är ju betydligt "djupare" än vad de flesta (som kör färdiga programmerare
som sköter all low-level funktioner). Kanske att du skulle kunna kolla om det finns
ett lämpligt Microchip support forum istället ?

Om et saknas en max tid för något så tolkar jag det som att det inte finns någon max tid.
Sökte mer info om skrivtiden i databladet, där står det Self-Timed Write Cycle Time 3ms Typ (vid 25 grader 3.3V). Men även där finns ingen maxtid.

Jag har kontaktat microchip om WR-biten, men de är sega på att svara. Har även postat (och sökt svar) på deras forum.

Re: ICSP programmering av PIC24F?

Postat: 19 september 2009, 10:35:35
av sodjan
Vad är anledningen till att du anser att du måste kopiera hela min text en gång till ?
Tycker du inte att det ser lite dumt ut ? Jo det gör det, och det är därför som detta forum har
en "regel" mot just det. Inte för att *jag* anser att det ska behövas en regel, alla ser ju att det
ser lite märkligt ut, eller hur ?

Re: ICSP programmering av PIC24F?

Postat: 19 september 2009, 10:43:23
av Mr M
sodjan skrev:Vad är anledningen till att du anser att du måste kopiera hela min text en gång till ?
Tycker du inte att det ser lite dumt ut ? Jo det gör det, och det är därför som detta forum har
en "regel" mot just det. Inte för att *jag* anser att det ska behövas en regel, alla ser ju att det
ser lite märkligt ut, eller hur ?
Jasså. :vissla:

Sodjan skrev följande i ett inlägg om "quote":

"*Jag* kommer alltid att lägga med en eller ett par reder från valfritt inlägg
om det hjälper till med samanhanget (kanske lite övertydligt i just detta fall)..."

Så, ska du klaga eller?

Jag tycker du ska svara om du har något vettigt att säga. Men som vanligt letar du efter angrepsmöjligheter. Tycker personligt att du ofta har nedvärderande ton i dina inlägg.

Re: ICSP programmering av PIC24F?

Postat: 19 september 2009, 11:07:22
av sodjan
Skit samma... Lycka till med programmeraren i alla fall.

Re: ICSP programmering av PIC24F?

Postat: 19 september 2009, 16:52:48
av vfr
Mr M skrev:Så, ska du klaga eller?
Ja, det ska han!

Det är två helt olika saker. Det som står i reglerna är man inte ska citera hela sista inlägget när man gör ett nytt. Däremot är det helt ok att citera en eller flera rader för att förtydliga syftningen med inlägget. Är det så konstigt? Jag håller fullständigt med. Alla dessa meningslösa citeringar av hela inlägg som man ser på vissa forum, är en styggelse. Vad sjutton tillför det? Det blir bara en massa långa sidor med samma sak om igen.

Re: ICSP programmering av PIC24F?

Postat: 19 september 2009, 21:00:54
av Mr M
Dessa regler var svåra att hitta, postade under "Övrigt" (har aldrig tidigare läst där). Letade idag.

Men om den regeln är så viktig så borde den inte stå under övrigt. :humm:

Re: ICSP programmering av PIC24F?

Postat: 19 september 2009, 21:18:37
av E85
Varje gång man postar står detta alldeles ovanför meddelanderutan:
1. Bilderna får inte vara större än 700 pixel i bredd.
2. Citera inte hela föregående inlägg.
Fast att dra upp tråden varje gång nån lyckas med det tycker jag är lite onödigt. PM kanske skulle räcka, eller att rapportera inlägget.

Re: ICSP programmering av PIC24F?

Postat: 19 september 2009, 23:27:20
av sodjan
OK, right...
Vi ska inte dra detta allt för långt, men vill bara notera att anledningen
till att jag kommenterade den fåniga citeringen igentligen inte alls
var p.g.a regeln i sig, utan för att det helt enkelt är onödigt. Förslaget
om PM är dock inte helt fel. Det är noterat.