Konsten att flasha en PIC....
Postat: 29 juni 2007, 01:05:33
Ibland händer det märkliga saker när det är snabba pulser och lite för långa trådar inblandade.
Jag skall flasha en 16F876A, något som jag inte gjort tidigare. Efter att ha modifierat flashningsprogrammet så var det dags att testa. Vid återläsningen kom det bara lite blaj i de första två bytes, resten lästes FF 3F FF 3F o.s.v.
Givetvis utgick jag från att ha satten bit på tvären i flasprogrammet och har letat efter denna hela kvällen utan att hitta något fel. Till slut började jag misstänka hårdvaruproblem och provade att sätta 1k i serie med PGD och då fungerade allt som det skulle.
Antagligen driver PIC'en utdata med så snabba flanker att den får falska klockpulser och kommer i otakt. Sedan tolkas kommandona hur som helst och tydligtn något som blev bulk erase, för all data försvann ur kretsen när det hände.
Trådarna kan väl ha varit 3 decimeter enkel sträcka och det var tydligen för mycket. Brukar man ha någon sorts flankdämpare och filter för snabba pulser på programpinnarna?
Edit: Vanligtvis så har jag alltid haft annan användning av programpinnarna också, de komponenterna har tydligen gjort tjänst som dämpare eftersom detalltid har fungerat innan. Det här bygget som nu skall programmeras har inget annat på dessa pinnar.
Jag skall flasha en 16F876A, något som jag inte gjort tidigare. Efter att ha modifierat flashningsprogrammet så var det dags att testa. Vid återläsningen kom det bara lite blaj i de första två bytes, resten lästes FF 3F FF 3F o.s.v.
Givetvis utgick jag från att ha satten bit på tvären i flasprogrammet och har letat efter denna hela kvällen utan att hitta något fel. Till slut började jag misstänka hårdvaruproblem och provade att sätta 1k i serie med PGD och då fungerade allt som det skulle.
Antagligen driver PIC'en utdata med så snabba flanker att den får falska klockpulser och kommer i otakt. Sedan tolkas kommandona hur som helst och tydligtn något som blev bulk erase, för all data försvann ur kretsen när det hände.
Trådarna kan väl ha varit 3 decimeter enkel sträcka och det var tydligen för mycket. Brukar man ha någon sorts flankdämpare och filter för snabba pulser på programpinnarna?
Edit: Vanligtvis så har jag alltid haft annan användning av programpinnarna också, de komponenterna har tydligen gjort tjänst som dämpare eftersom detalltid har fungerat innan. Det här bygget som nu skall programmeras har inget annat på dessa pinnar.