PIC16F877A problem

PIC, AVR, Arduino, Raspberry Pi, Basic Stamp, PLC mm.
Seven11
Inlägg: 547
Blev medlem: 13 maj 2004, 23:43:33

PIC16F877A problem

Inlägg av Seven11 »

Har gjort en liten prototyp nu på ett veroboard kort där jag lödit fast en PIC16F877A med kringkomponenter (2x 22pF kondensatorer till 20MHz klocka, 2x 22uF och 2x 100nF för avkoppling mellan jord och +5V, en ICSP kontakt samt ett 33 kohm motstånd mellan VCC och /MCLR på PIC:en) som är kopplat som blink-a-led på Wisp628 sidan (med undantag att jag har annan avkoppling).

Men när jag kopplar in Wisp628:an enligt ICSP anslutningen på jescab.se så får jag bara att PIC:en kan identifieras (ID=0E27h vilket stämmet) men den kan inte programmeras, får bara upp att Wbus inte kunde sända eller liknande :?

Någon som vet vad det kan vara för fel?
sodjan
EF Sponsor
Inlägg: 43251
Blev medlem: 10 maj 2005, 16:29:20
Ort: Söderköping

Inlägg av sodjan »

När man kommer *så* långt, så brukar det vara problem med
5V matningen. Att den inte är stabil nog, eller att den ligger lite
för lågt. Var kommer den från ?

> där jag lödit fast en PIC16F877A

Jag hoppas verkligen att du menar med en *hållare* ?
Inte att du har lött in en 40-pins 877A direkt på veroboardet ?

När det gäller det övriga, så *kompletta kommandon/resultat* tack !
Jag tänker inte gissa vad du har skrivit...

Och det ska vara cut-n-paste, inga avskrifter...
Användarvisningsbild
oJsan
EF Sponsor
Inlägg: 1541
Blev medlem: 11 november 2005, 21:36:51
Ort: Umeå
Kontakt:

Inlägg av oJsan »

Det råkar inte vara så att LED:en delar pinne med någon av signalerna från ICSP:n? Sånna problem vet jag kan uppstå på Atmega-microkontrollers... En annan erfarenhet jag har är att långa signalledningar (särskilt på kopplingsdäck) i kombination med snabba kristaller kan ställa till med problem. Avkopplingar och kristall sitter "nära" va?
Seven11
Inlägg: 547
Blev medlem: 13 maj 2004, 23:43:33

Inlägg av Seven11 »

Spänningen kommer från en varierbar spänningskälla från Kjell & Co, men eftersom det funkar att använda den med breadboard så känns det lite konstigt om det inte skulle funka med samma koppling på veroboard.

Nej jag har en IC sockel som jag satte ner PIC16F877A i det sista jag gjorde.

Här är vad xwisp2w säger:
XWisp2 version 1.6.01 (Aug 14 2005, Open Watcom C 1.30)
File PC_SECTION_CONTROLLER.HEX loaded and is Intel Hex format conforming
Programmer Wisp628, firmware version 1.09
Detected target: 16F877A revision 07 (ID=0E27)
Target erased
Transferring image to 16F877A via Wisp628
Transferring program memory...000000 : 0183Wbus command failure
Write-Verify failed after 0.09 seconds, rc 21!
XWisp2 failed after 1.06 seconds, rc 21!
Kommandot jag ger är vanliga "xwisp2w X.hex" från cmd i Win XP

...

Nej alltså jag har ingen lysdiod utan det är bara det dom komponenterna som jag skrev ner som är kopplade som blink-a-led från wisp628 sidan.
sodjan
EF Sponsor
Inlägg: 43251
Blev medlem: 10 maj 2005, 16:29:20
Ort: Söderköping

Inlägg av sodjan »

OK.
Om jag inte har fel så går det fel i steget där XWisp2 och Wisp628
går från 9600 till 115k baud. Hur skilljer sig kopplingen mellan
XWisp2w och Wisp628 i denna koppling från när du körde breadboard ?
Seven11
Inlägg: 547
Blev medlem: 13 maj 2004, 23:43:33

Inlägg av Seven11 »

den är exakt samma med undantag att vissa ledningar är längre (alla utom GND och VCC som förmodligen är kortare på veroboardet)
sodjan
EF Sponsor
Inlägg: 43251
Blev medlem: 10 maj 2005, 16:29:20
Ort: Söderköping

Inlägg av sodjan »

OK.
En bild på det hela skulle kanske kunna ge fler ledtrådar.
Du kan även prova att "låsa" hastigheten vid 9600 med "baud" kommondot.

Kanske något helt enkelt är felkopplat...

En annan sak, som jag inte är säker på att det hjälper, men som i allal fall
bör vara punkt 1A vid all felsökning, är att ladda ner senaste XWisp2. Du
ligger ganska många versioner "efter"...

http://www.robh.nl/zip/xwisp2190.zip
http://www.robh.nl/
Seven11
Inlägg: 547
Blev medlem: 13 maj 2004, 23:43:33

Inlägg av Seven11 »

att ge BAUD kommando ("xwisp2w baud 9600 go X.hex") och låsa vid 9600 ger samma resultat. Men kan det vara att ledarna är lite långa... men då borde väl inte wisp628:an kunna få reda på vilket ID kretsen är då det även kräver att PIC:en skickar och tar emot data eller?
sodjan
EF Sponsor
Inlägg: 43251
Blev medlem: 10 maj 2005, 16:29:20
Ort: Söderköping

Inlägg av sodjan »

Alltså, rent elektriskt är det lite skillnad på att "bara" läsa ID och att
senare starta programmeringen. Speiellt när det gäller krav på att
5V är stabil och inte "dippar" när flashningen startar. Att läsa ID
är lite enklare och drar inte lika mycket ström.

Nej, jag trodde inte riktigt på baud parametern heller, den styr ju trafiken
mellan PCn och Wisp628 och inte mellan Wisp628 och målmiljön.

I CFG filen för XWisp2w finns det en delay parameter som du kan "skruva upp"
lite. Det kan påverka om kablarna är lite långa. Det finns dokumenterat
i en av CFG filerna...
Seven11
Inlägg: 547
Blev medlem: 13 maj 2004, 23:43:33

Inlägg av Seven11 »

"Delay" verkar inte fungera heller trots att jag satte värdet till max (=255)... får prova att byta ut PGM/PGC kablarna mot kortare så får vi se... återkommer om det.
sodjan
EF Sponsor
Inlägg: 43251
Blev medlem: 10 maj 2005, 16:29:20
Ort: Söderköping

Inlägg av sodjan »

OK, fortsätt bara att ge bra info om vad du gör och vad som händer
(en bild skulle fortfarande hjälpa *mycket*), så får vi se...
Seven11
Inlägg: 547
Blev medlem: 13 maj 2004, 23:43:33

Inlägg av Seven11 »

nu har jag testat att byta ut alla kablar... nu är ingen över 2 cm. Använde samma kommando som förut men får samma resultat.

Har tyvärr ingen möjlighet att ta kort än för min kamera är utlånad men jag ska se om jag kan få tillbaka den ganska snart.

Om någon har något annat förslag så vore det jääätte bra om ni kunde uttala er :D
Skriv svar