Sommario:

Programmatore PIC a 5 transistor *Schema aggiunto al passaggio 9!: 9 passaggi
Programmatore PIC a 5 transistor *Schema aggiunto al passaggio 9!: 9 passaggi

Video: Programmatore PIC a 5 transistor *Schema aggiunto al passaggio 9!: 9 passaggi

Video: Programmatore PIC a 5 transistor *Schema aggiunto al passaggio 9!: 9 passaggi
Video: La mia reazione davanti a uno studente che mi dice “non ho capito“ 2024, Dicembre
Anonim
5 Transistor PIC Programmer *Schema aggiunto al passaggio 9!
5 Transistor PIC Programmer *Schema aggiunto al passaggio 9!
5 Transistor PIC Programmer *Schema aggiunto al passaggio 9!
5 Transistor PIC Programmer *Schema aggiunto al passaggio 9!
5 Transistor PIC Programmer *Schema aggiunto al passaggio 9!
5 Transistor PIC Programmer *Schema aggiunto al passaggio 9!

Crea il tuo programmatore PIC per la porta parallela del tuo computer. Questa è una variazione del design classico di David Tait. È molto affidabile e c'è un buon software di programmazione disponibile gratuitamente. Mi piace il programmatore IC-Prog e PICpgm. La cosa migliore è che utilizza solo due regolatori di tensione e 5 transistor! *** Ho aggiunto una foto del risultato finale e le foto del mio nuovo mini-programmatore con la parte superiore trasparente. Fai clic sulle immagini più piccole qui sotto!** Questa è una nuova variante e non ha funzionato correttamente al 100% al primo tentativo. Immagino di aver superato me stesso.. Ho costruito diverse varianti e pensavo di essere in cima alle cose.:) Ci sono un paio di modifiche, ma alla fine tutto ha funzionato. Ho dovuto aggiungere un transistor npn aggiuntivo e modificare un paio di valori del resistore. Queste modifiche si riflettono già in questo elenco, ma non vengono aggiornate in tutte le foto. Vedere il passaggio 7 per le foto del software che utilizzo e come configurare il programmatore. È necessario: una presa DB25 maschio 4 transistor NPN, come il transistor PNP 2n39041x, come il regolatore di tensione 2n39061x 7805 1 regolatore di tensione LM317 (e resistori appropriati per fare 12,5 V) 1x rete di resistori SIP da 10k 4x resistori da 10k1x resistore da 22k* aggiornamento per step 31x resistore da 5k1x resistore da 1k* aggiornamento per step 31x prese per chip con pin lavoratisaldatore, scheda prototipi, filo di avvolgimento, strumento di avvolgimento, pistola per colla.

Passaggio 1: scheda indice

Scheda indice
Scheda indice
Scheda indice
Scheda indice

Se hai del nastro di rame, stendi una striscia come piano di massa. In caso contrario, inserisci una fila di punti metallici nella carta lungo un bordo e saldali insieme.

Quindi piegare le gambe della rete di resistori SIP e incollare come mostrato.

Passaggio 2: porta ICSP

Porta ICSP
Porta ICSP
Porta ICSP
Porta ICSP

Crea una porta ICSP con parte di un socket per chip, in questo modo. Piegare con cautela i perni ad angolo retto.

Ora incolla la porta verso il basso. Ora è anche un buon momento per incollare i tuoi transistor. Puoi anche saldare l'emettitore dei tuoi transistor npn al piano di massa, ora. Ho etichettato ogni scopo dei transistor qui. I tre transistor npn saranno cablati come inverter. Essenzialmente "toglieranno energia" dal loro rispettivo resistore di pullup quando una corrente viene posizionata sul loro pin di base. Il transistor PNP (capovolto) controllerà la tensione di programmazione. Invertirà anche il segnale. **EDIT: ho appena realizzato un'omissione in questo design. Dovrebbe esserci un transistor npn aggiuntivo che viene utilizzato per pilotare il transistor PNP. Questo bufferizzerà la porta del tuo computer dai voltaggi alla base del pnp. Colpa mia. Questo annullerà anche l'inversione del segnale. Vedi il passaggio 8.

Passaggio 3: resistori di base

Resistenze di base
Resistenze di base
Resistenze di base
Resistenze di base

Ho usato resistori di base da 10k. Saldare dove cerchiato. Ho incasinato il transistor pnp in questa foto. Ignora l'area bianca.

**EDIT: il resistore di base per il tranny "data in" dovrebbe essere 22k. Inoltre, i dati in uscita non dovrebbero essere recuperati con la rete di resistori da 10k. Invece, tiralo su con un resistore da 1k. Mi sono appena reso conto che questi due resistori formeranno un partitore di tensione, e se ognuno è alto 10k i dati saranno 2,5 V … non va bene. (In alternativa, potresti semplicemente lasciare le cose come sono, ma collegare il collettore del transistor Data Out a tutti i restanti 5 pullup da 10k. Questo rende il divisore 2/10, che dovrebbe comunque essere sufficiente. Sul mio circuito particolare, è quello che ho fatto, e registra 4.24V come alto, che dovrebbe essere sufficiente.) Figura 2: Il transistor pnp riceve due resistori di base cablati come divisore. Saldare la resistenza da 10k tra l'emettitore e la base. Salda un'estremità del tuo 5k (in realtà ho usato 3.3k perché ce l'avevo in giro) alla base. Puoi collegare il collettore al pin Vpp, ora, poiché è vicino. Alla fine, collegherai l'emettitore a una sorgente da 12,5 V. Il resistore da 10k mantiene alta la base, programmando così la tensione disattivata. Quando il pin 5 della porta parallela si abbassa, abbassa la base, tramite il resistore da 5k. Lo schema che ho usato mostrava anche un resistore da 10k tra collettore e massa. Non sono sicuro a cosa serva. Penso che sia per garantire che il pin MCLR del PIC non galleggi. Ma sarebbe sciocco, dal momento che MCLR di solito sarà comunque collegato a un pullup esterno. Inoltre, il pin MCLR è un dissipatore attivo di pochi microampere. Non galleggia. In ogni caso, ho incautamente omesso questo resistore. Punti bonus per chiunque sappia dirmi perché questa è una cattiva idea.

Passaggio 4: porta DB25

Porta DB25
Porta DB25
Porta DB25
Porta DB25

DB25 è la designazione di una porta parallela. Per quanto ne so, sono sinonimi. Vuoi la parte maschio, poiché il tuo comp ha una spina femmina.

Puoi incollarlo sul bordo della carta, per ora. Non aspettare! L'hai incollato troppo presto! Innanzitutto rendere comuni i pin 18-25, poiché saranno pin di massa comuni. Oh.. va bene, perché la carta può piegarsi. In realtà, un modo migliore per eseguire questa parte è piegare ciascun perno sul vicino, quindi saldarli. Sto solo cercando di illustrare come dovrebbero andare le connessioni.

Passaggio 5: connessioni DB 25

Connessioni DB 25
Connessioni DB 25
Connessioni DB 25
Connessioni DB 25

Ok. Il pin 2 della porta DB25 è il pin di uscita dati. Collegalo al resistore di base "data out". Il risultato finale: quando questo pin diventa alto, il pin RB7/data della foto riceverà un segnale basso. (qual è il punto di invertire le cose? Un effetto collaterale dell'inversione di un segnale è che lo bufferi anche. Il buffering dei segnali qui, utilizzando una fonte di alimentazione esterna, è l'intero punto dei transistor npn.)

Il pin 3 è il pin di uscita dell'orologio. Collegalo al resistore di base "clock out". Figura 2: il pin 10 è il pin IN dati. Collegalo alla resistenza di pullup del transistor "data in", come mostrato nei cerchi blu. Il pin 5 è il pin della tensione di programmazione, o pin Vpp. Vedere il passaggio 8. Sarà necessario aggiungere un quarto transistor npn e collegare questa linea al suo resistore di base. Il collettore del transistor si collegherà al resistore di base da 5k del transistor pnp. L'emettitore si collegherà al piano di massa.

Passaggio 6: lato porta ICSP

ICSP lato porta
ICSP lato porta

Nella mia configurazione, ho scelto di impostare l'orologio in basso, i dati in alto e il terreno, Vdd e Vpp nel mezzo. Questo è completamente arbitrario.

Il pin dati ICSP si collegherà a ENTRAMBI il resistore di pullup per il "dati in uscita" E al resistore di base del "dati in ingresso". Cerchi BLU **EDIT: richiama Data Out con un resistore da 1k o con tutti e 5 i restanti pullup da 10k sulla rete di resistori. L'utilizzo di un solo resistore da 10k farà sì che il segnale dati high venga diviso fino a 2,5 V. Ciò non si registrerà così in alto, poiché le parti CMOS che funzionano a 5 V richiedono circa 3,5 V per registrarsi in alto. Il pin Vpp si collegherà al collettore del transistor PNP. Il pin Vdd si collegherà al pin 1 del resistore di rete. Cerchi ARANCIONI Se si desidera un interruttore on/off sul programmatore, inserirlo tra questi punti. Il pin di terra si collegherà da qualche parte sulla striscia di terra. Il pin dell'orologio si collegherà con la resistenza di pullup del transistor "clock out". Cerchi GIALLI

Passaggio 7: nuove immagini… Finite e testate

Nuove immagini… Finite e testate
Nuove immagini… Finite e testate
Nuove immagini… Finite e testate
Nuove immagini… Finite e testate
Nuove immagini… Finite e testate
Nuove immagini… Finite e testate
Nuove immagini… Finite e testate
Nuove immagini… Finite e testate

Ecco il programmatore finito. Non puoi dirlo nella foto, ma ho tagliato un pezzo di appunti alla giusta dimensione e ho usato Elmer's per incollare la carta alla lavagna.

Ho tirato fuori il mio LCD per un test veloce. Legge, scrive, cancella. Cosa puoi chiedere di più? Controlla le foto per uno screenshot di come impostare i software di programmazione ICProg o PICPgm. Controlla anche il passaggio 8 per i dettagli di un paio di misure correttive che sono presenti qui. Ho aggiunto due lm317 per 5V e la tensione di programmazione.

Passaggio 8: correzione!

Correzione!!!
Correzione!!!
Correzione!!!
Correzione!!!

Ecco la correzione. Ops… aggiorna. Vedi la prossima foto.

Dovresti avere un altro transistor npn per bufferizzare la porta dalle tensioni potenzialmente pericolose alla base del pnp. Questo è raffigurato in alto a sinistra. Il collettore non si collega a un resistore di pullup. La base pnp è già impostata su Vpp. L'emettitore è collegato a terra. Il collettore si collega al resistore di base da 5k del transistor pnp. Mostro anche il resistore di pull down da 10k che ho omesso in precedenza. Non so ancora a cosa serva, però.:) Poiché si esegue il buffering con l'uso di inverter, quando si utilizza un software di programmazione compatibile con TAIT, sarà necessario accedere alle impostazioni del programmatore e invertire l'orologio, l'uscita dati e l'ingresso dati. Poiché si inverte due volte la linea Vpp, lo lascerai stare. Cordiali saluti, il TAIT originale utilizza il pin 4 DB25 per controllare Vdd. Non mi piace questo, perché non puoi eseguire la tua foto dalla fonte di alimentazione del programmatore. Ho aggiunto un interruttore manuale in alcuni dei miei altri programmatori, ma non viene mai utilizzato. Perché dovresti andare dietro il tuo computer per accendere/spegnere il tuo circuito? Aggiungo solo un interruttore alla mia breadboard/circuito per controllare Vdd. Tuttavia, è necessario scollegare l'alimentazione o il cavo icsp quando non è in uso, in modo da evitare cortocircuiti tra alimentazione e massa.

Passaggio 9: Schemmy, utilizzando una batteria da 9 V! e una foto gratuita di un gattino:)

Schemmy, usando una batteria da 9V! e una foto di gattino gratuito:)
Schemmy, usando una batteria da 9V! e una foto di gattino gratuito:)
Schemmy, usando una batteria da 9V! e una foto di gattino gratuito:)
Schemmy, usando una batteria da 9V! e una foto di gattino gratuito:)

Pic 1: Basta aggiungere un interruttore on/off alla batteria e questo programmatore è a posto. Se il tuo circuito assorbe più energia di quella che può gestire la batteria debole, aggiungi un alimentatore diverso tra 9 e 12,5 V (controlla se con un multimetro! 12 V non regolati di solito significano 18-20 V a basso assorbimento - e ucciderà la tua foto). Se la tua verruca da parete più vicina fornisce più di 12,5 V, dovrai aggiungere un altro regolatore di tensione.

OPPURE potresti lasciare la batteria da 9V collegata al transistor pnp, ma scollegarla dal 7805. Quindi inserisci la tua fonte di alimentazione esterna, inferiore a 35V, al 7805. Bene, ora che hai capito come funziona il programmatore (si, giusto ?), puoi modificarlo come preferisci da qui. L'aggiunta di alcuni LED indicatori potrebbe essere utile? Foto 2: Puffo. Shhhh, sta dormendo.

Consigliato: