weebl Skrevet 19. april 2007 Del Skrevet 19. april 2007 hei jeg har lagd meg en PIC programmer slik som Denne jeg skal programmere en 16F628(a) men hver gang jeg prøver å overføre programmet får jeg opp "Verify failed at adress 0000h". kretsen jeg skal bruke Denne ICen i er en RGB LED mood lamp og programmet som er funnet på samme siden ser slik ut: HEX Klikk for å se/fjerne innholdet nedenfor :020000040000FA:020000000428D2 :08000800FF30A200FF30A3004D :1000100024140130A700FF30A8000130A9000130EE :10002000AA00A01076232D087F397B235C232210A1 :100030006F232217692322156D23A2116C2322122C :100040006B23A2126A23A2146E23A2176823231023 :100050006723A310662323116523A31164232312AE :100060006323A312622323136123A313602322308B :100070004A22051D4A283C22AB00AC0100306E200C :10008000AB013C22AC0000306E20AB01AC013C2245 :100090006E206C28FF30A8000130A9000130AA00B2 :1000A000AB01FF30AC0000306E200130AB00AC0182 :1000B00000306E20AB01AC01FF306E20AB0101308F :1000C000AC0000306E20FF30AB00AC0100306E2081 :1000D000AB01AC0101306E2039286D28AD00AE01B6 :1000E000AB080319AB282B08280203187B28280823 :1000F0002B02AE00822828082B02031882282B0826 :100100002802AE002E08AF00AF08031D8828AB28D8 :1001100034222808B4002908B5002A08B6002708A8 :1001200062222B08280203189728A80A9A2801306F :100130002802A800851C9D282221051BA028A9288B :100140002808B4002908B5002A08B600270862224A :100150009D28AF038428AC080319E6282C0829023F :100160000318B62829082C02AE00BD2829082C0245 :100170000318BD282C082902AE002E08AF00AF08D6 :10018000031DC328E62834222808B4002908B50036 :100190002A08B600270862222C0829020318D22850 :1001A000A90AD52801302902A900851CD8282221B6 :1001B000051BDB28E4282808B4002908B5002A0814 :1001C000B60027086222D828AF03BF28AD0803195C :1001D00021292D082A020318F1282A082D02AE0031 :1001E000F8282A082D020318F8282D082A02AE0044 :1001F0002E08AF00AF08031DFE282129342228084D :10020000B4002908B5002A08B600270862222D0884 :100210002A0203180D29AA0A102901302A02AA006D :10022000851C13292221051B16291F292808B40023 :100230002908B5002A08B600270862221329AF034F :10024000FA280800051D2B293C22B0003C22B100F1 :100250003C22B2003129FF30B0000130B100013042 :10026000B200FE30B300342285183729332A300813 :10027000B4003108B5003208B60027086222B30B7B :100280003329051B44294D293008B4003108B50035 :100290003208B600270862224129051D56293C2252 :1002A000B0003C22B1003C22B2005C29FF30B0001B :1002B000FF30B1000130B200FE30B30034228518A7 :1002C0006229332A3008B4003108B5003208B6007C :1002D00027086222B30B5E29051B6F297829300895 :1002E000B4003108B5003208B600270862226C2934 :1002F000051D81293C22B0003C22B1003C22B20005 :1003000087290130B000FF30B1000130B200FE306B :10031000B300342285188D29332A3008B4003108FF :10032000B5003208B60027086222B30B8929051BE5 :100330009A29A3293008B4003108B5003208B60064 :10034000270862229729051DAC293C22B0003C22D7 :10035000B1003C22B200B2290130B000FF30B10040 :10036000FF30B200FE30B30034228518B829332A9A :100370003008B4003108B5003208B6002708622200 :10038000B30BB429051BC529CE293008B4003108A8 :10039000B5003208B60027086222C229051DD729F8 :1003A0003C22B0003C22B1003C22B200DD290130E9 :1003B000B0000130B100FF30B200FE30B300342293 :1003C0008518E329332A3008B4003108B500320813 :1003D000B60027086222B30BDF29051BF029F92993 :1003E0003008B4003108B5003208B6002708622290 :1003F000ED29051D022A3C22B0003C22B1003C221E :10040000B200082AFF30B0000130B100FF30B20066 :10041000FE30B300342285180E2A332A3008B40087 :100420003108B5003208B60027086222B30B0A2A49 :10043000051B1B2A242A3008B4003108B5003208F5 :10044000B60027086222182A051D2D2A3C22B0007A :100450003C22B1003C22B200332AFF30B000013010 :10046000B1000130B2000800851F392A3230A700E0 :100470003B2A0530A70008000830B3005622B30B12 :100480003E2AA408031D472A0130492A492A240884 :10049000492A0800AB002B08A4000130A500A601E2 :1004A0001830AC005622AC0B522A08000030A618B7 :1004B000FF3A261BFF3AA61BFF3A013EA40DA50DED :1004C000A60D0800B7002011A0112012A0122013C1 :1004D000A01334083502031D862A34083602031D92 :1004E000862A3608023C03187C2A02303602B600FF :1004F00001303502B500852A3608023C031C852AE6 :100500003608013EB5000230B407BB2A3408350274 :10051000031D982A3408023C0318922A0130350240 :10052000B500972A3408023C031C972AB40ABB2A58 :1005300034083602031DAA2A3408023C0318A42AF0 :1005400001303602B600A92A3408023C031CA92A4D :10055000B40ABB2A36083502031DBB2A3608023C02 :100560000318B62A01303502B500BB2A3608023C12 :10057000031CBB2AB50A340835020318EE2A3508D5 :1005800036020318CC2A3608B8003508B9003408FA :10059000BA0020162017ED2A360835020318DD2A86 :1005A000360834020318DD2A3508B8003408B900CB :1005B0003608BA00A015A016ED2A36083502031831 :1005C000ED2A340836020318ED2A3508B80036083B :1005D000B9003408BA00A015A017202B3508340242 :1005E0000318202B360835020318FF2A3408B800F8 :1005F0003508B9003608BA0020152017202B350819 :1006000036020318102B360834020318102B340856 :10061000B8003608B9003508BA002015A017202BFD :10062000350836020318202B340836020318202B15 :100630003608B8003408B9003508BA002016A016EC :100640003A08BB0039083A02BA0038083902B90042 :1006500083168330620083123808FF3CBC003908DF :10066000FF3CBD003A08FF3CBE000B113C08810076 :10067000861406158615572320198610A019061111 :10068000201A86113D0881005723A01A8610201BCE :100690000611A01B86113E08810057238610061103 :1006A00086113B0881005723B70B352B5B2B0B1DA5 :1006B000572B0B11080008007F2307309F0008000C :1006C000702B702B702B702B702B702B702B702B52 :1006D000732B732B732B732B732B732B732B732B2A :1006E0002308660008002208650008000108AE0023 :1006F0002E08AD000800AB002B0862000800831232 :0407000003130800D7 :02400E00623F0F :00000001FF OG .JAL Klikk for å se/fjerne innholdet nedenfor -- file : ikea_mood_lamp.jal -- author : Toon Beerten -- date : 21 August 2006 -- purpose : mood lamp program -- contact : [email protected] -- website : http://tobe.nimio.info -- -- Copyright © 2006 Toon Beerten -- Free for non-commercial use -- This software must be purchased if it is to be used in commercial endeavors, -- but may be used free-of-charge for other purposes. include 16f628_4 include jpic include jlib include jpwm3 -- custom pwm library include jdelay include jrtl -- jrtl = operators include random3 -- random library -- i use IntRC I/O, PWRT ON, BODEN ON, rest off -- tick MCLR off when programming!! var byte time = 1 var byte R = 255 var byte G = 1 var byte B = 1 var bit pause = false option = option & 0x7f disable_a_d_functions -- disable_ad_inputs pin_a0_direction = output pin_a6_direction = input -- controls pause pin_a2_direction = input -- random function pin_a3_direction = output pin_a4_direction = output pin_a5_direction = output pin_a1_direction = input -- controls transition pin_a7_direction = input -- controls speed pin_b0_direction = output pin_b1_direction = output pin_b2_direction = output pin_b3_direction = output pin_b4_direction = output pin_b5_direction = output pin_b6_direction = output pin_b7_direction = output -- randomize randomize(34) -- procedures procedure speed is -- controls speed if pin_a7 == high then time = 50 else time = 5 end if end procedure procedure flash is -- program to abruptly switch to another color var byte RR var byte GG var byte BB if pin_a2 == high then RR = random_byte GG = random_byte BB = random_byte else RR = 255 GG = 1 BB = 1 end if For 254 loop speed if pin_a1 == low then return end if PWM_OUT(RR,GG,BB, time) end loop while pin_a6 == high loop PWM_OUT(RR,GG,BB, time) end loop if pin_a2 == high then RR = random_byte GG = random_byte BB = random_byte else RR = 255 GG = 255 BB = 1 end if For 254 loop speed if pin_a1 == low then return end if PWM_OUT(RR,GG,BB, time) end loop while pin_a6 == high loop PWM_OUT(RR,GG,BB, time) end loop if pin_a2 == high then RR = random_byte GG = random_byte BB = random_byte else RR = 1 GG = 255 BB = 1 end if For 254 loop speed if pin_a1 == low then return end if PWM_OUT(RR,GG,BB, time) end loop while pin_a6 == high loop PWM_OUT(RR,GG,BB, time) end loop if pin_a2 == high then RR = random_byte GG = random_byte BB = random_byte else RR = 1 GG = 255 BB = 255 end if For 254 loop speed if pin_a1 == low then return end if PWM_OUT(RR,GG,BB, time) end loop while pin_a6 == high loop PWM_OUT(RR,GG,BB, time) end loop if pin_a2 == high then RR = random_byte GG = random_byte BB = random_byte else RR = 1 GG = 1 BB = 255 end if For 254 loop speed if pin_a1 == low then return end if PWM_OUT(RR,GG,BB, time) end loop while pin_a6 == high loop PWM_OUT(RR,GG,BB, time) end loop if pin_a2 == high then RR = random_byte GG = random_byte BB = random_byte else RR = 255 GG = 1 BB = 255 end if For 254 loop speed if pin_a1 == low then return end if PWM_OUT(RR,GG,BB, time) end loop while pin_a6 == high loop PWM_OUT(RR,GG,BB, time) end loop if pin_a2 == high then RR = random_byte GG = random_byte BB = random_byte else RR = 255 GG = 1 BB = 1 end if end procedure procedure fade(byte in Rnew, byte in Gnew, byte in Bnew) is -- fade from 1 colour to another -- passing 0 means stay the same var byte counter = 0 if Rnew != 0 then if Rnew > R then counter = Rnew - R elsif Rnew < R then counter = R - Rnew end if For counter loop -- (R,G,B) speed PWM_OUT(R,G,B, time) if Rnew > R then R = R + 1 else R = R - 1 end if if pin_a1 == high then -- other mode flash end if while pin_a6 == high loop -- pause PWM_OUT(R,G,B, time) end loop end loop -- (Rnew,Gnew,Bnew) end if if Gnew != 0 then if Gnew > G then counter = Gnew - G elsif Gnew < G then counter = G - Gnew end if For counter loop -- (R,G,B) speed PWM_OUT(R,G,B, time) if Gnew > G then G = G + 1 else G = G - 1 end if if pin_a1 == high then -- other mode flash end if while pin_a6 == high loop -- pause PWM_OUT(R,G,B, time) end loop end loop -- (Rnew,Gnew,Bnew) end if if Bnew != 0 then if Bnew > B then counter = Bnew - B elsif Bnew < B then counter = B - Bnew end if For counter loop -- (R,G,B) speed PWM_OUT(R,G,B, time) if Bnew > B then B = B + 1 else B = B - 1 end if if pin_a1 == high then -- other mode flash end if while pin_a6 == high loop -- pause PWM_OUT(R,G,B, time) end loop end loop -- (Rnew,Gnew,Bnew) end if end procedure -- main loop forever loop -- we start at R = 255, G = 1, B = 1 if pin_a2 == high then fade(random_byte,0,0) fade(0,random_byte,0) fade(0,0,random_byte) else R = 255 G = 1 B = 1 fade(0,255,0) fade(1,0,0) fade(0,0,255) fade(0,1,0) fade(255,0,0) fade(0,0,1) end if end loop Takker for all hjelp. og BTW jeg er grønn på programmering av IC kretser, bare så det er sagt Lenke til kommentar
Furyfax Skrevet 19. april 2007 Del Skrevet 19. april 2007 (endret) Hvilket program programmerer du IC'en med? Har du valgt rett device på dette programmet du bruker? Edit: Kan det være du har satt IC'en feil vei, lurer på om det er den feilmeldingen som pleier å komme. Endret 19. april 2007 av Furyfax Lenke til kommentar
weebl Skrevet 19. april 2007 Forfatter Del Skrevet 19. april 2007 Hvilket program programmerer du IC'en med? Har du valgt rett device på dette programmet du bruker? 8425012[/snapback] Jeg bruker IC prog. innstillingene jeg bruker ser slik ut. Klikk for å se/fjerne innholdet nedenfor og jeg har lastet ned xp driveren til icprog og installert den. Lenke til kommentar
St Thicket Skrevet 20. april 2007 Del Skrevet 20. april 2007 Den vanligste feilen er at brenneren ikke får brennespenning (skal være 13,5 volt om jeg ikke husker feil). Jeg tipper at det er en maskinvarefeil... Hvis du ser på oversikten, bør du sjekke tilkoblingene på PIC DIP18. Se at du har 13,5 volt på VPP, 5 volt på VDD, og sjekk om du har jord. Lenke til kommentar
weebl Skrevet 20. april 2007 Forfatter Del Skrevet 20. april 2007 Den vanligste feilen er at brenneren ikke får brennespenning (skal være 13,5 volt om jeg ikke husker feil). Jeg tipper at det er en maskinvarefeil... Klikk for å se/fjerne innholdet nedenfor Hvis du ser på oversikten, bør du sjekke tilkoblingene på PIC DIP18. Se at du har 13,5 volt på VPP, 5 volt på VDD, og sjekk om du har jord. 8429273[/snapback] jeg har 5v når jeg måler fra vdd til jord men på vpp har jeg ikke 13v Lenke til kommentar
St Thicket Skrevet 21. april 2007 Del Skrevet 21. april 2007 jeg har 5v når jeg måler fra vdd til jord men på vpp har jeg ikke 13v 8430162[/snapback] Now there's your problem... Brennespenningen skal være 13 volt når man enten leser eller brenner PICen. Ellers er den null... Lenke til kommentar
weebl Skrevet 21. april 2007 Forfatter Del Skrevet 21. april 2007 jeg har 5v når jeg måler fra vdd til jord men på vpp har jeg ikke 13v 8430162[/snapback] Now there's your problem... Brennespenningen skal være 13 volt når man enten leser eller brenner PICen. Ellers er den null... 8434977[/snapback] Når jeg måler brennespenningen må jeg få IC prog til å lese eller skrive til ICen? eller kan jeg måle når den står idle? Lenke til kommentar
uzzors2k Skrevet 21. april 2007 Del Skrevet 21. april 2007 Gå på Settings -> Hardware Check -> Klikk på "Enable MCLR" Hvis du krysser av "Enable Data out" skal "Data in" krysses av hvis programmeren er på. Det krysses ut hvis "Enable Data out" krysses ut igjen. Det er vanlig at sånne JDM programmere ikke tilfører nok spenning, og det kan være lurt å bruke en ekstern strømkilde. En 7812 + to dioder mellon jord på spenningsregulatoren og jord vil gi 13.2 volt. Lenke til kommentar
weebl Skrevet 21. april 2007 Forfatter Del Skrevet 21. april 2007 Gå på Settings -> Hardware Check -> Klikk på "Enable MCLR" Hvis du krysser av "Enable Data out" skal "Data in" krysses av hvis programmeren er på. Det krysses ut hvis "Enable Data out" krysses ut igjen. Det er vanlig at sånne JDM programmere ikke tilfører nok spenning, og det kan være lurt å bruke en ekstern strømkilde. En 7812 + to dioder mellon jord på spenningsregulatoren og jord vil gi 13.2 volt. 8437056[/snapback] Kan du tegne opp et skjema for hvordan dette blir? ut i fra skjemaet som jeg linker til lengre opp. Lenke til kommentar
uzzors2k Skrevet 21. april 2007 Del Skrevet 21. april 2007 (endret) Sånn. Du må sette MCLR på inverted i Hardware menuen. Jeg bruker en modda joule theif for å få 17V fra 12V linjen på PCen. Du kan også bruke en extern strømforsyning, bare den deler jordingen med PCen. Endret 21. april 2007 av uzzors2k Lenke til kommentar
weebl Skrevet 22. april 2007 Forfatter Del Skrevet 22. april 2007 Sånn. Du må sette MCLR på inverted i Hardware menuen. Jeg bruker en modda joule theif for å få 17V fra 12V linjen på PCen. Du kan også bruke en extern strømforsyning, bare den deler jordingen med PCen. 8438749[/snapback] da kan jeg bare ta en hobbystrømforsyning og koble på da så lenge den er på samme forgreineren som pcen? Lenke til kommentar
geir_a Skrevet 22. april 2007 Del Skrevet 22. april 2007 Det kan hende jeg tar feil, men jeg tror jord på en JDM-programmerer ligger på -5v. Hvis du da får 13v inn på MCLR fra en ekstern strømforsyning, får du vel 18v på MCLR i forhold til jord. Eller er jeg helt på jordet nå? Geir A. Lenke til kommentar
uzzors2k Skrevet 22. april 2007 Del Skrevet 22. april 2007 Jeg tror du har rett geir_a, det glemte jeg. Bare kjør en 7808 (8V) uten diodene, fra 12V strømforsyning på PCen. Søk på 73-262-91 hos Elfa. Lenke til kommentar
weebl Skrevet 22. april 2007 Forfatter Del Skrevet 22. april 2007 så da kan jeg bare ta ut 12v fra pcen og koble på en 7808 på samme måte som du har tegnet uten diodene? for da skal jeg fikse meg med en 7808 på skolen og så er det bare å lodde i vei. Lenke til kommentar
uzzors2k Skrevet 23. april 2007 Del Skrevet 23. april 2007 Jepp. Har du sjekket om programmeren funker ennå? Det kan godt hende at den fungerer som den skal uten en ekstern 13V kilde. Sjekk at du får riktig signaler fra programmeren med "hardware check" i ICprog. Hvis ikke må programmeren fikses, eller at ICprog må konfigures riktig først. Lenke til kommentar
Mikkel194 Skrevet 24. april 2007 Del Skrevet 24. april 2007 Har du prøvd WinPic800? Jeg har opplevd at enkle programmerere ofte kan fungere bedre med det enn IC-prog. Lenke til kommentar
weebl Skrevet 24. april 2007 Forfatter Del Skrevet 24. april 2007 Har du prøvd WinPic800? Jeg har opplevd at enkle programmerere ofte kan fungere bedre med det enn IC-prog. 8457159[/snapback] ja har prøvd winpic også. har kommet fram til at det er noe med pic programmeren. Lenke til kommentar
uzzors2k Skrevet 24. april 2007 Del Skrevet 24. april 2007 Prøv en av disse. "Classic" programmeren funker garantert hvis du bygger den riktig. http://www.ic-prog.com/jdmprog.gif http://www.ic-prog.com/cpp.gif Lenke til kommentar
weebl Skrevet 3. mai 2007 Forfatter Del Skrevet 3. mai 2007 Noen her som kan lage en PCB layout til denne JDM programmeren Uzzors2k linker til eller? jeg klarer bare å lage Layouts til enklere kretser. har ikke mye erfaring etter å bare snart være ferdig med førsteåret på elfag. Klikk for å se/fjerne innholdet nedenfor Lenke til kommentar
Anbefalte innlegg
Opprett en konto eller logg inn for å kommentere
Du må være et medlem for å kunne skrive en kommentar
Opprett konto
Det er enkelt å melde seg inn for å starte en ny konto!
Start en kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå