Innholdsfortegnelse:

5 Transistor PIC Programmer *Skjematisk lagt til trinn 9 !: 9 trinn
5 Transistor PIC Programmer *Skjematisk lagt til trinn 9 !: 9 trinn

Video: 5 Transistor PIC Programmer *Skjematisk lagt til trinn 9 !: 9 trinn

Video: 5 Transistor PIC Programmer *Skjematisk lagt til trinn 9 !: 9 trinn
Video: Control Position and Speed of Stepper motor with L298N module using Arduino 2024, November
Anonim
5 Transistor PIC Programmer *Skjematisk lagt til trinn 9!
5 Transistor PIC Programmer *Skjematisk lagt til trinn 9!
5 Transistor PIC Programmer *Skjematisk lagt til trinn 9!
5 Transistor PIC Programmer *Skjematisk lagt til trinn 9!
5 Transistor PIC Programmer *Skjematisk lagt til trinn 9!
5 Transistor PIC Programmer *Skjematisk lagt til trinn 9!

Lag din egen PIC -programmerer for datamaskinens parallellport. Dette er en variant av David Taits klassiske design. Det er veldig pålitelig og det er god programmeringsprogramvare tilgjengelig gratis. Jeg liker IC-Prog og PICpgm programmerer. Best av alt, den bruker bare to spenningsregulatorer og 5 transistorer! *** Jeg la til et bilde av det endelige resultatet, og bilder av min nye miniprogrammerer med en klar topp. Klikk på de mindre bildene nedenfor! ** Dette er en ny variant, og den fungerte ikke 100% riktig ved første forsøk. Jeg antar at jeg kom foran meg selv.. Jeg har bygget flere varianter, og jeg trodde jeg var på toppen av ting.:) Det er et par endringer, men alt ordnet seg til slutt. Jeg måtte legge til en ekstra npn -transistor og endre et par motstandsverdier. Disse endringene gjenspeiles allerede i denne listen, men oppdateres ikke på alle bildene. Se trinn 7 for bilder av programvaren jeg bruker og hvordan du konfigurerer programmereren. Du trenger: En mannlig DB25 socket4x NPN -transistorer, for eksempel 2n39041x PNP -transistoren, for eksempel 2n39061x 7805 spenningsregulator1x LM317 spenningsregulator (og passende motstander til lage 12,5V) 1x 10k SIP-motstandsnettverk 4x 10k motstander 1x 22k motstand* oppdatering for trinn 31x 5k motstand1x 1k motstand* oppdatering for trinn 31x maskinbundet stikkontaktloddejern, protoboard, viklingstråd, innpakningsverktøy, limpistol.

Trinn 1: Indekseringskort

Indeks -kort
Indeks -kort
Indeks -kort
Indeks -kort

Hvis du har kobberbånd, legger du en stripe ned som et jordplan. Hvis ikke, legg en rad stifter inn i papiret langs den ene kanten og lodd dem sammen.

Bøy deretter beina på SIP -motstandsnettverket, og lim som vist.

Trinn 2: ICSP -port

ICSP -port
ICSP -port
ICSP -port
ICSP -port

Lag en ICSP -port med en del av en brikkekontakt, som denne. Bøy pinnene forsiktig i en rett vinkel.

Lim nå porten ned. Nå er det også en god tid å lime transistorene dine på. Du kan også lodde emitteren til dine npn -transistorer til bakkeplanet nå. Jeg har merket hver transistors formål her. De tre npn -transistorene blir koblet til omformere. De vil i hovedsak "ta strøm bort" fra sin respektive pullup -motstand når en strøm plasseres på basestiften. PNP -transistoren (opp ned) vil kontrollere programmeringsspenningen. Det kommer også til å snu signalet. ** EDIT: Jeg innså akkurat en utelatelse i dette designet. Det bør være en ekstra npn -transistor som brukes til å drive PNP -transistoren. Dette vil buffer datamaskinporten din fra spenningene på pnp -basen. Min feil. Dette vil også fjerne signalet. Se trinn 8.

Trinn 3: Basemotstander

Base motstander
Base motstander
Base motstander
Base motstander

Jeg brukte 10k basismotstander. Loddetinn der det er sirklet. Jeg rotet til pnp -transistoren i dette bildet. Se bort fra det hvite området.

** EDIT: basismotstanden for «data in» -transformasjonen skal være 22k. Dataoverføring bør heller ikke trekkes opp med 10k motstandsnettverk. I stedet trekker du den opp med en 1k motstand. Jeg innså nettopp at disse to motstandene vil danne en spenningsdeler, og hvis hver er 10k data høy vil den være 2,5V … ikke bra. (Alternativt kan du bare la ting være slik de er, men koble Data Out -transistors kollektor til alle gjenværende 5 10k pullups. Dette gjør skillet 2/10, som fortsatt burde være tilstrekkelig. På min spesielle krets var det det jeg gjorde, og den registrerer 4,24V som høy, noe som burde være nok.) Bilde 2: PNP -transistoren får to basismotstander tilkoblet som en divider. Lodd 10k motstanden mellom emitter og base. Lodd den ene enden av din 5k (faktisk brukte jeg 3.3k cuz jeg hadde den liggende) til basen. Du kan koble samleren til Vpp -pinnen nå, siden den er nær. Til slutt vil du koble senderen til en 12,5V kilde. 10k -motstanden holder basen høy - dermed programmeres spenningen av. Når pin 5 på parallellporten går lavt, trekker den basen lavt, via 5k -motstanden. Schemien jeg brukte viste også en 10k motstand mellom oppsamler og jord. Jeg er ikke sikker på hva det er til. Jeg tror det er for å sikre at PICs MCLR -pin ikke flyter. Men det ville være dumt, siden MCLR vanligvis vil bli koblet til en ekstern pullup. I tillegg er MCLR -pinnen en aktiv vask av noen få mikroampere. Det flyter ikke. I alle fall har jeg hensynsløst utelatt denne motstanden. Bonuspoeng for alle som kan fortelle meg hvorfor dette er en dårlig idé.

Trinn 4: DB25 -port

DB25 -port
DB25 -port
DB25 -port
DB25 -port

DB25 er betegnelsen på en parallellport. Så vidt jeg vet er de synonyme. Du vil ha den mannlige delen, siden din komp har en hunnkontakt.

Du kan lime den på kanten av kortet, foreløpig. Nei vent! Du limte den for tidlig! Lag først pinner 18-25 felles, da de vil være vanlige pinner. Det er ok, for kortet kan bøyes. Egentlig er en bedre måte å gjøre denne delen å bøye hver pinne over på naboen, og deretter lodde dem ned. Jeg prøver bare å illustrere hvordan forbindelsene skal gå.

Trinn 5: DB 25 -tilkoblinger

DB 25 -tilkoblinger
DB 25 -tilkoblinger
DB 25 -tilkoblinger
DB 25 -tilkoblinger

Ok. Pin 2 på DB25 -porten er data out -pinnen. Koble den til "data out" -motstanden. Det endelige resultatet: når denne pinnen går høyt, vil bildeets RB7/datapinne motta et lavt signal. (hva er poenget med å snu ting? En bivirkning av å invertere et signal er at du også bufrer det. Buffering av signalene her, ved hjelp av en ekstern strømkilde, er hele poenget med npn -transistorer.)

Pin 3 er klokken ut pin. Koble den til basismotstanden "klokke ut". Bilde 2: pin 10 er data IN pin. Koble dette til pullup -motstanden til "data in" -transistoren, sett i blå sirkler. Pin 5 er programmeringsspenningspinnen, eller Vpp -pin. Se trinn 8. Du må legge til en fjerde npn -transistor, og koble denne linjen til basismotstanden. Transistorens kollektor vil koble til 5k basismotstanden til pnp -transistoren. Emitteren vil koble seg til bakken.

Trinn 6: ICSP babord side

ICSP babord side
ICSP babord side

I mitt oppsett valgte jeg å lage klokkebunn, datatopp og bakke, Vdd og Vpp imellom. Dette er helt vilkårlig.

ICSP -datapinnen vil koble til BÅDE pullup -motstanden for "data out" -transjen OG til basismotstanden til "data in" -tranny. BLÅ sirkler ** EDIT: trekk opp data -ut med enten en 1k -motstand, eller med alle 5 gjenværende 10k -pullups på motstandsnettverket. Ved å bruke bare en 10k motstand vil datahøye signaler bli delt ned til 2,5V.. Det vil ikke registrere seg så høyt, ettersom CMOS -deler som kjører på 5V trenger omtrent 3,5V for å registrere høyt. Vpp -pinnen kobles til PNP -transistorens kollektor. Vdd -pinnen kobles til nettverksmotstandspinnen 1. ORANGE sirkler Hvis du vil ha en av/på -bryter på programmereren, setter du den inn mellom disse punktene. Jordpinnen vil koble til et sted på jordlisten. Klokkestiften vil koble til pullup -motstanden til "klokke ut" -transistoren. GULE sirkler

Trinn 7: Nye bilder … Ferdig og testet

Nye bilder … Ferdig og testet
Nye bilder … Ferdig og testet
Nye bilder … Ferdig og testet
Nye bilder … Ferdig og testet
Nye bilder … Ferdig og testet
Nye bilder … Ferdig og testet
Nye bilder … Ferdig og testet
Nye bilder … Ferdig og testet

Her er den ferdige programmereren. Du kan ikke se på bildet, men jeg klippet et stykke utklippstavle til riktig størrelse og brukte Elmer til å lime kortet til brettet.

Jeg dro frem LCD -skjermen for en rask test. Den leser, skriver, sletter. Hva mer kan du spørre om? Sjekk bildene for et skjermbilde av hvordan du konfigurerer ICProg eller PICPgm programmeringsprogrammer. Se også trinn 8 for detaljer om et par korrigerende tiltak som er omtalt her. Jeg la til to lm317 for 5V og programmeringsspenning.

Trinn 8: Retting !

Korreksjon!!!
Korreksjon!!!
Korreksjon!!!
Korreksjon!!!

Her er korreksjonen. Beklager … oppdatering. Se neste bilde.

Du bør ha en annen npn -transistor for å buffer porten fra de potensielt farlige spenningene ved pnp -basen. Dette er avbildet øverst til venstre. Samleren festes ikke til en pullup -motstand. PNP -basen er allerede trukket opp til Vpp. Emitter er jordet. Samleren kobles til 5k basismotstanden til pnp -transistoren. Jeg viser også 10k nedtrekksmotstand som jeg utelot tidligere. Jeg vet fortsatt ikke hva det er til.:) Fordi du buffrer med bruk av omformere, når du bruker en TAIT -kompatibel programmeringsprogramvare, må du gå inn i programmeringsinnstillingene og invertere klokken, data ut og data inn. Fordi du dobbelt inverterer Vpp -linjen, du lar det være i fred. FYI, den originale TAIT bruker DB25 pin 4 for å kontrollere Vdd. Jeg liker ikke dette, for da kan du ikke kjøre bildet ditt fra programmørens strømkilde. Jeg har lagt til en manuell bryter i noen av mine andre progammere, men den blir aldri brukt. Hvorfor ville du gå bak datamaskinen din for å slå kretsen på/av? Jeg legger bare til en bryter på brødbrettet/kretsen min for å kontrollere Vdd. Du må imidlertid koble fra strømmen eller icsp -kabelen når du ikke bruker den, for å unngå kortslutning av strøm og jord.

Trinn 9: Schemmy, bruker et 9V batteri! og et Gratuitous Kitty -bilde:)

Schemmy, bruker et 9V batteri! og et Gratuitous Kitty -bilde:)
Schemmy, bruker et 9V batteri! og et Gratuitous Kitty -bilde:)
Schemmy, bruker et 9V batteri! og et Gratuitous Kitty -bilde:)
Schemmy, bruker et 9V batteri! og et Gratuitous Kitty -bilde:)

Bilde 1: Bare legg til en av/på -bryter på batteriet, og denne programmereren er god å gå. Hvis kretsen din drar mer strøm enn det wimpy batteriet kan håndtere, må du legge til en annen strømforsyning mellom 9 og 12,5V (sjekk om det er et multimeter! 12V uregulert betyr vanligvis 18-20V under lavt trekk - og vil drepe ditt bilde). Hvis din nærmeste veggvorte gir mer enn 12,5V, må du legge til en annen spenningsregulator.

ELLER du kan la 9V -batteriet være koblet til pnp -transistoren, men koble det fra 7805. Sett deretter inn den eksterne strømkilden, mindre enn 35V, til 7805. Vel, nå som du forstår hvordan programmereren fungerer (du gjør, ikke sant) ?), kan du endre det slik du vil herfra. Å legge til noen indikator -LED -er kan være fint? Bilde 2: Smurfy. Shhhh, hun sover.

Anbefalt: