Índice:

5 Transistor PIC Programmer * Schematic Added to Step 9 !: 9 Passos
5 Transistor PIC Programmer * Schematic Added to Step 9 !: 9 Passos

Vídeo: 5 Transistor PIC Programmer * Schematic Added to Step 9 !: 9 Passos

Vídeo: 5 Transistor PIC Programmer * Schematic Added to Step 9 !: 9 Passos
Vídeo: Getting Started with Programming PIC Microcontroller 12F675 With PICkit 3 + PIC Programming Adapter 2024, Junho
Anonim
5 Transistor PIC Programmer * Schematic adicionado ao Step 9!
5 Transistor PIC Programmer * Schematic adicionado ao Step 9!
5 Transistor PIC Programmer * Schematic adicionado ao Step 9!
5 Transistor PIC Programmer * Schematic adicionado ao Step 9!
5 Transistor PIC Programmer * Schematic adicionado ao Step 9!
5 Transistor PIC Programmer * Schematic adicionado ao Step 9!

Faça seu próprio programador PIC para a porta paralela do seu computador. Esta é uma variação do design clássico de David Tait. É muito confiável e há um bom software de programação disponível gratuitamente. Eu gosto do programador IC-Prog e PICpgm. O melhor de tudo é que ele usa apenas dois reguladores de tensão e 5 transistores! *** Adicionei uma foto do resultado final e fotos do meu novo mini-programador com um top transparente. Clique nas imagens menores abaixo! ** Esta é uma nova variação e não funcionou 100% corretamente na primeira tentativa. Acho que me precipitei.. Construí várias variações e pensei que estava no topo das coisas.:) Houve algumas mudanças, mas tudo deu certo no final. Tive que adicionar um transistor npn adicional e alterar alguns valores do resistor. Essas mudanças já estão refletidas nesta lista, mas não são atualizadas em todas as fotos. Veja a etapa 7 para ver fotos do software que uso e como configurar o programador. Você precisa de: Um transistores DB25 socket4x NPN macho, como o transistor 2n39041x PNP, como o regulador de tensão 2n39061x 7805 regulador de tensão 1x LM317 (e resistores apropriados para make 12.5V) 1x 10k resistor SIP network 4x 10k resistors1x 22k resistor * atualização para step 31x 5k resistor1x 1k resistor * update para step 31x chip de pino usinado socketsoldering ferro, protoboard, wraping wire, wrapping tool, cola gun.

Etapa 1: cartão de índice

Cartão de índice
Cartão de índice
Cartão de índice
Cartão de índice

Se você tiver fita de cobre, coloque uma tira como um plano de aterramento. Caso contrário, coloque uma fileira de grampos no papel ao longo de uma das bordas e solde-os.

Em seguida, dobre as pernas da rede de resistores SIP e cole conforme mostrado.

Etapa 2: Porta ICSP

Porta ICSP
Porta ICSP
Porta ICSP
Porta ICSP

Faça uma porta ICSP com parte de um soquete de chip, como este. Dobre cuidadosamente os pinos em um ângulo reto.

Agora cole a porta. Agora também é um bom momento para colar seus transistores. Você também pode soldar o emissor de seus transistores npn ao plano de terra, agora. Eu rotulei a finalidade de cada transistor aqui. Os três transistores npn serão conectados como inversores. Eles irão essencialmente "tirar energia" de seu respectivo resistor pullup quando uma corrente for colocada em seu pino de base. O transistor PNP (de cabeça para baixo) controlará a tensão de programação. Também vai inverter o sinal. ** EDIT: Acabei de perceber uma omissão neste design. Deve haver um transistor npn adicional que é usado para conduzir o transistor PNP. Isso irá proteger a porta do seu computador das tensões na base do PNP. Foi mal. Isso também cancelará a inversão do sinal. Veja a etapa 8.

Etapa 3: resistores de base

Resistores de Base
Resistores de Base
Resistores de Base
Resistores de Base

Usei resistores de base de 10k. Solda onde circulou. Eu baguncei o transistor PNP nesta foto. Desconsidere a área esbranquiçada.

** EDITAR: o resistor de base para os "dados no" tranny deve ser 22k. Além disso, os dados para fora do tranny não devem ser puxados com a rede de resistores de 10k. Em vez disso, puxe-o para cima com um resistor de 1k. Acabei de perceber que esses dois resistores formarão um divisor de tensão e, se cada um tiver 10k de altura, os dados terão 2,5 V … não é bom. (Como alternativa, você pode simplesmente deixar as coisas como estão, mas conecte o coletor do transistor Data Out a todos os 5 pullups restantes de 10k. Isso torna o divisor 2/10, o que ainda deve ser suficiente. No meu circuito específico, foi o que eu fiz, e ele registra 4,24 V como alto, o que deve ser suficiente.) Figura 2: O transistor pnp recebe dois resistores de base conectados como um divisor. Solde o resistor de 10k entre o emissor e a base. Solde uma ponta do seu 5k (na verdade eu usei 3,3k porque eu o tinha espalhado) na base. Você pode conectar o coletor ao pino Vpp, agora, já que ele está próximo. Eventualmente, você conectará o emissor a uma fonte de 12,5V. O resistor de 10k mantém a base alta - programando assim a tensão desligada. Quando o pino 5 de sua porta paralela fica baixo, ele puxa a base para baixo, por meio do resistor de 5k. O esquema que usei também mostrou um resistor de 10k entre o coletor e o terra. Não tenho certeza para que serve. Acho que é para garantir que o pino MCLR do PIC não flutue. Mas isso seria bobo, já que o MCLR geralmente vai ser conectado a um pullup externo, de qualquer maneira. Além disso, o pino MCLR é um coletor ativo de alguns microamperes. Não flutua. De qualquer forma, omiti imprudentemente esse resistor. Pontos de bônus para quem puder me dizer por que isso é uma má ideia.

Etapa 4: Porta DB25

Porta DB25
Porta DB25
Porta DB25
Porta DB25

DB25 é a designação de uma porta paralela. Pelo que eu sei, eles são sinônimos. Você quer a parte masculina, já que seu comp tem um plug fêmea.

Você pode colar na borda do cartão, por enquanto. Não, espere! Você colou muito cedo! Primeiro, torne os pinos 18-25 comuns, pois eles serão pinos de aterramento comuns. Oh.. está tudo bem, porque o cartão pode entortar. Na verdade, a melhor maneira de fazer essa parte é dobrar cada pino sobre seu vizinho e depois soldá-los. Estou apenas tentando ilustrar como as conexões devem ser.

Etapa 5: Conexões DB 25

Conexões DB 25
Conexões DB 25
Conexões DB 25
Conexões DB 25

OK. O pino 2 da porta DB25 é o pino de saída de dados. Conecte-o ao resistor de base "data out". Resultado final: quando este pino fica alto, o pino RB7 / dados da imagem recebe um sinal baixo. (qual é o sentido de inverter as coisas? Um efeito colateral de inverter um sinal é que você também o armazena em buffer. Armazenar os sinais aqui, usando uma fonte de alimentação externa, é o objetivo dos transistores npn.)

O pino 3 é o pino de saída do clock. Conecte-o ao resistor de base "clock out". Figura 2: o pino 10 é o pino de entrada de dados. Conecte-o ao resistor pullup do transistor "data in", como visto nos círculos azuis. O pino 5 é o pino de tensão de programação ou pino Vpp. Veja a etapa 8. Você precisará adicionar um quarto transistor npn e conectar esta linha ao seu resistor de base. O coletor do transistor se conectará ao resistor de base de 5k do transistor PNP. O emissor se conectará ao plano de aterramento.

Etapa 6: Lado da porta ICSP

Lado da porta ICSP
Lado da porta ICSP

Em minha configuração, optei por criar clock bottom, data top e ground, Vdd e Vpp entre eles. Isso é completamente arbitrário.

O pino de dados ICSP se conectará a AMBOS o resistor pullup para o tranny de "saída de dados" E ao resistor de base do tranny de "dados em". Círculos AZUIS ** EDITAR: extraia os dados de saída com um resistor de 1k ou com todos os 5 pullups restantes de 10k na rede de resistores. Usar apenas um resistor de 10k fará com que o sinal de dados altos seja dividido em 2,5 V. Isso não será registrado tão alto, pois as peças CMOS funcionando a 5 V precisam de cerca de 3,5 V para registrar alto. O pino Vpp se conectará ao coletor do transistor PNP. O pino Vdd se conectará ao pino 1 do resistor de rede. Círculos ALARANJADOS Se quiser um botão liga / desliga no programador, insira-o entre esses pontos. O pino de aterramento se conectará em algum lugar na faixa de aterramento. O pino do clock se conectará ao resistor pullup do transistor "clock out". Círculos AMARELOS

Etapa 7: Novas fotos… Concluídas e testadas

Novas fotos… Concluídas e testadas
Novas fotos… Concluídas e testadas
Novas fotos… Concluídas e testadas
Novas fotos… Concluídas e testadas
Novas fotos… Concluídas e testadas
Novas fotos… Concluídas e testadas
Novas fotos… Concluídas e testadas
Novas fotos… Concluídas e testadas

Aqui está o programador concluído. Não dá para perceber na foto, mas cortei um pedaço da prancheta no tamanho certo e usei a de Elmer para colar o cartão no quadro.

Peguei meu LCD para um teste rápido. Ele lê, escreve, apaga. O que mais você pode pedir? Verifique as fotos para uma captura de tela de como configurar os softwares de programação ICProg ou PICPgm. Verifique também a etapa 8 para obter detalhes de algumas medidas corretivas apresentadas aqui. Eu adicionei dois lm317 para 5V e tensão de programação.

Etapa 8: Correção !

Correção!!!
Correção!!!
Correção!!!
Correção!!!

Aqui está a correção. Ops… atualização. Veja a próxima foto.

Você deve ter outro transistor npn para proteger a porta das tensões potencialmente perigosas na base do pnp. Isso é representado no canto superior esquerdo. O coletor não se conecta a um resistor pullup. A base pnp já está instalada no Vpp. O emissor está aterrado. O coletor se conecta ao resistor de base de 5k do transistor pnp. Também mostro o resistor pull down de 10k que omiti anteriormente. Ainda não sei para que serve.:) Como você está armazenando em buffer com o uso de inversores, ao usar um software de programação compatível com TAIT, você precisará ir para as configurações do programador e inverter o relógio, a saída de dados e a entrada de dados. Como você inverte duas vezes a linha Vpp, você vai deixá-lo sozinho. FYI, o TAIT original usa DB25 pino 4 para controlar Vdd. Eu não gosto disso, porque então você não pode executar sua imagem da fonte de alimentação do programador. Eu adicionei um interruptor manual em alguns dos meus outros programadores, mas ele nunca é usado. Por que você iria atrás do computador para ligar / desligar o circuito? Acabei de adicionar um interruptor à minha placa de ensaio / circuito para controlar o Vdd. Você deve desconectar a alimentação ou o cabo icsp quando não estiver em uso, para evitar curto-circuito na alimentação e no aterramento.

Etapa 9: Schemmy, usando uma bateria de 9V! e uma foto gratuita de gatinho:)

Schemmy, usando uma bateria de 9V! e uma foto gratuita de gatinho:)
Schemmy, usando uma bateria de 9V! e uma foto gratuita de gatinho:)
Schemmy, usando uma bateria de 9V! e uma foto gratuita de gatinho:)
Schemmy, usando uma bateria de 9V! e uma foto gratuita de gatinho:)

Foto 1: Basta adicionar um botão liga / desliga à bateria e este programador está pronto para usar. Se o seu circuito consumir mais energia do que a bateria fraca pode suportar, adicione uma fonte de alimentação diferente entre 9 e 12,5 V (verifique se com um multímetro! 12 V desregulado geralmente significa 18-20 V com baixo consumo - e matará sua imagem). Se a verruga da parede mais próxima fornecer mais de 12,5 V, será necessário adicionar outro regulador de voltagem.

OU você pode deixar a bateria de 9 V conectada ao transistor pnp, mas desconecte-a do 7805. Em seguida, insira sua fonte de alimentação externa, menos de 35 V, no 7805. Bem, agora que você entende como o programador funciona (sim, certo ?), você pode modificá-lo da maneira que quiser a partir daqui. Adicionar alguns LEDs indicadores pode ser bom? Foto 2: Smurfy. Shhhh, ela está dormindo.

Recomendado: