Table des matières:

5 Transistor PIC Programmer *Schéma ajouté à l'étape 9 ! : 9 étapes
5 Transistor PIC Programmer *Schéma ajouté à l'étape 9 ! : 9 étapes

Vidéo: 5 Transistor PIC Programmer *Schéma ajouté à l'étape 9 ! : 9 étapes

Vidéo: 5 Transistor PIC Programmer *Schéma ajouté à l'étape 9 ! : 9 étapes
Vidéo: Using BTS7960 BTN8982TA PWM H Bridge motor controller module with Arduino library 2024, Juin
Anonim
5 Transistor PIC Programmer *Schéma ajouté à l'étape 9 !
5 Transistor PIC Programmer *Schéma ajouté à l'étape 9 !
5 Transistor PIC Programmer *Schéma ajouté à l'étape 9 !
5 Transistor PIC Programmer *Schéma ajouté à l'étape 9 !
5 Transistor PIC Programmer *Schéma ajouté à l'étape 9 !
5 Transistor PIC Programmer *Schéma ajouté à l'étape 9 !

Créez votre propre programmeur PIC pour le port parallèle de votre ordinateur. Il s'agit d'une variante du design classique de David Tait. Il est très fiable et il existe un bon logiciel de programmation disponible gratuitement. J'aime les programmeurs IC-Prog et PICpgm. Mieux encore, il n'utilise que deux régulateurs de tension et 5 transistors ! *** J'ai ajouté une photo du résultat final, et des photos de mon nouveau mini-programmeur avec un haut transparent. Cliquez sur les petites images ci-dessous !** Il s'agit d'une nouvelle variante et elle n'a pas fonctionné correctement à 100 % du premier coup. Je suppose que j'ai pris de l'avance sur moi-même. J'ai construit plusieurs variantes et je pensais que j'étais au top.:) Il y a quelques changements, mais tout a fonctionné à la fin. J'ai dû ajouter un transistor npn supplémentaire et modifier quelques valeurs de résistance. Ces changements sont déjà reflétés dans cette liste, mais ne sont pas mis à jour dans toutes les photos. Voir l'étape 7 pour des photos du logiciel que j'utilise et comment configurer le programmeur. Vous avez besoin de:Un socket DB25 mâle4x transistors NPN, tels que le transistor 2n39041x PNP, tel que le régulateur de tension 2n39061x 78051x régulateur de tension LM317 (et les résistances appropriées pour faire 12,5V) 1x réseau de résistances SIP 10k 4x résistances 10k1x résistance 22k* mise à jour pour l'étape 31x résistance 5k1x résistance 1k* mise à jour pour l'étape 31x socket à puce usinéefer à souder, protoboard, fil d'emballage, outil d'emballage, pistolet à colle.

Étape 1: Carte d'index

Fiche
Fiche
Fiche
Fiche

Si vous avez du ruban de cuivre, posez une bande comme plan de masse. Sinon, placez une rangée d'agrafes dans le papier le long d'un bord et soudez-les ensemble.

Ensuite, pliez les pattes du réseau de résistances SIP et collez comme indiqué.

Étape 2: Port ICSP

Port ICSP
Port ICSP
Port ICSP
Port ICSP

Créez un port ICSP avec une partie d'un socket de puce, comme celui-ci. Pliez soigneusement les broches à angle droit.

Maintenant, collez le port vers le bas. C'est aussi le bon moment pour coller vos transistors. Vous pouvez également souder l'émetteur de vos transistors npn au plan de masse, maintenant. J'ai étiqueté chaque objectif de transistors ici. Les trois transistors npn seront câblés en onduleurs. Ils vont essentiellement "prendre le pouvoir" de leur résistance de rappel respective lorsqu'un courant est placé sur leur broche de base. Le transistor PNP (à l'envers) contrôlera la tension de programmation. Il va également inverser son signal. ** EDIT: je viens de réaliser une omission dans cette conception. Il devrait y avoir un transistor npn supplémentaire qui est utilisé pour piloter le transistor PNP. Cela mettra en mémoire tampon le port de votre ordinateur contre les tensions à la base du pnp. Ma faute. Cela désinversera également le signal. Voir l'étape 8.

Étape 3: Résistances de base

Résistances de base
Résistances de base
Résistances de base
Résistances de base

J'ai utilisé des résistances de base de 10k. Soudure où encerclé. J'ai foiré le transistor pnp sur cette photo. Ne tenez pas compte de la zone blanchie.

** EDIT: la résistance de base pour la transmission "data in" doit être de 22k. De plus, la transmission de données ne doit pas être extraite avec le réseau de résistances 10k. Au lieu de cela, tirez-le avec une résistance de 1k. Je viens de réaliser que ces deux résistances formeront un diviseur de tension, et si chacune a une hauteur de 10k, les données seront de 2,5V… pas bon. (Alternativement, vous pouvez simplement laisser les choses telles qu'elles sont, mais connecter le collecteur du transistor Data Out à tous les 5 tirages 10k restants. Cela fait du diviseur 2/10, ce qui devrait encore suffire. Sur mon circuit particulier, c'est ce que j'ai fait, et il enregistre 4,24 V comme élevé, ce qui devrait être suffisant.) Image 2: Le transistor pnp reçoit deux résistances de base câblées en diviseur. Soudez la résistance de 10k entre l'émetteur et la base. Soudez une extrémité de votre 5k (en fait, j'ai utilisé 3,3k car je l'avais traîné) à la base. Vous pouvez connecter le collecteur à la broche Vpp, maintenant, car il est proche. Finalement, vous connecterez l'émetteur à une source de 12,5 V. La résistance de 10k maintient la base élevée - ainsi la tension de programmation est désactivée. Lorsque la broche 5 de votre port parallèle devient faible, elle tire la base vers le bas, via la résistance 5k. Le schéma que j'ai utilisé montrait également une résistance de 10k entre le collecteur et la terre. Je ne sais pas à quoi ça sert. Je pense que c'est pour s'assurer que la broche MCLR du PIC ne flotte pas. Mais ce serait idiot, car MCLR va généralement être connecté à un pullup externe, de toute façon. De plus, la broche MCLR est un puits actif de quelques microampères. Il ne flotte pas. En tout cas, j'ai imprudemment omis cette résistance. Des points bonus pour tous ceux qui peuvent me dire pourquoi c'est une mauvaise idée.

Étape 4: Port DB25

Port DB25
Port DB25
Port DB25
Port DB25

DB25 est la désignation d'un port parallèle. Autant que je sache, ils sont synonymes. Vous voulez la partie mâle, car votre ordinateur a une prise femelle.

Vous pouvez le coller sur le bord de la carte, pour l'instant. Non attends! Tu l'as collé trop tôt ! Faites d'abord des broches 18-25 communes, car ce seront des broches de masse communes. Oh… c'est bon, car la carte peut se plier. En fait, une meilleure façon de faire cette partie est de plier chaque broche sur son voisin, puis de les souder. J'essaie juste d'illustrer comment les connexions devraient aller.

Étape 5: Connexions DB 25

Connexions DB 25
Connexions DB 25
Connexions DB 25
Connexions DB 25

D'accord. La broche 2 du port DB25 est la broche de sortie de données. Connectez-le à la résistance de base "data out". Le résultat final: lorsque cette broche passe au niveau haut, la broche RB7/data de la photo recevra un signal faible. (à quoi bon inverser les choses ? Un effet secondaire de l'inversion d'un signal est que vous le tamponnez également. Tamponner les signaux ici, en utilisant une source d'alimentation externe, est tout l'intérêt des transistors npn.)

La broche 3 est la broche de sortie d'horloge. Connectez-le à la résistance de base "clock out". Image 2: la broche 10 est la broche de données IN. Connectez-le à la résistance de rappel du transistor "data in", comme indiqué dans les cercles bleus. La broche 5 est la broche de tension de programmation, ou broche Vpp. Voir l'étape 8. Vous devrez ajouter un quatrième transistor npn et connecter cette ligne à sa résistance de base. Le collecteur du transistor se connectera à la résistance de base 5k du transistor pnp. L'émetteur se connectera au plan de masse.

Étape 6: côté port ICSP

Côté port ICSP
Côté port ICSP

Dans ma configuration, j'ai choisi de faire le bas de l'horloge, le haut des données et le sol, Vdd et Vpp entre les deux. C'est complètement arbitraire.

La broche de données ICSP se connectera À LA FOIS à la résistance de pullup pour la transmission "data out" ET à la résistance de base de la transmission "data in". Cercles BLEUS ** EDIT: extrayez les données avec une résistance de 1k ou avec les 5 pullups de 10k restants sur le réseau de résistances. L'utilisation d'une seule résistance de 10k entraînera la division du signal de données haut à 2,5 V. Cela ne sera pas aussi élevé, car les pièces CMOS fonctionnant à 5 V ont besoin d'environ 3,5 V pour s'enregistrer haut. La broche Vpp se connectera au collecteur du transistor PNP. La broche Vdd se connectera à la broche 1 de votre résistance réseau. Cercles ORANGE Si vous voulez un interrupteur marche/arrêt sur le programmateur, insérez-le entre ces points. La broche de terre se connectera quelque part sur la bande de terre. La broche d'horloge se connectera à la résistance de rappel du transistor "clock out". cercles JAUNES

Étape 7: Nouvelles images… Terminées et testées

Nouvelles images… Terminées et testées
Nouvelles images… Terminées et testées
Nouvelles images… Terminées et testées
Nouvelles images… Terminées et testées
Nouvelles images… Terminées et testées
Nouvelles images… Terminées et testées
Nouvelles images… Terminées et testées
Nouvelles images… Terminées et testées

Voici le programmeur terminé. Vous ne pouvez pas le dire sur la photo, mais j'ai coupé un morceau de presse-papiers à la bonne taille et j'ai utilisé Elmer's pour coller la carte sur le tableau.

J'ai sorti mon écran LCD pour un test rapide. Il lit, écrit, efface. Que peut-on demander de plus? Vérifiez les photos pour une capture d'écran de la configuration des logiciels de programmation ICProg ou PICPgm. Vérifiez également l'étape 8 pour le détail de quelques mesures correctives qui sont présentées ici. J'ai ajouté deux lm317 pour le 5V et la tension de programmation.

Étape 8: Corriger !

Correction!!!
Correction!!!
Correction!!!
Correction!!!

Voici la rectification. Oups… mise à jour. Voir photo suivante.

Vous devriez avoir un autre transistor npn pour protéger le port des tensions potentiellement dangereuses à la base du pnp. Ceci est représenté en haut à gauche. Le collecteur ne s'attache pas à une résistance pullup. La base pnp est déjà remontée à Vpp. L'émetteur est mis à la terre. Le collecteur se connecte à la résistance de base 5k du transistor pnp. Je montre également la résistance pull down de 10k que j'ai omis plus tôt. Par contre, je ne sais toujours pas à quoi ça sert.:) Parce que vous mettez en mémoire tampon avec l'utilisation d'onduleurs, lorsque vous utilisez un logiciel de programmation compatible TAIT, vous devrez entrer dans les paramètres du programmeur et inverser l'horloge, les données et les données. Parce que vous inversez la ligne Vpp, vous le laisserez tranquille. Pour info, le TAIT d'origine utilise la broche DB25 4 pour contrôler Vdd. Je n'aime pas ça, car alors vous ne pouvez pas exécuter votre photo à partir de la source d'alimentation du programmeur. J'ai ajouté un commutateur manuel dans certains de mes autres programmeurs, mais il ne s'habitue jamais. Pourquoi iriez-vous derrière votre ordinateur pour allumer/éteindre votre circuit ? Je viens d'ajouter un interrupteur à ma maquette/circuit pour contrôler Vdd. Vous devez cependant déconnecter l'alimentation ou le câble icsp lorsque vous ne l'utilisez pas, afin d'éviter de court-circuiter l'alimentation et la terre.

Étape 9: Schemmy, à l'aide d'une pile 9V ! et une photo gratuite de Kitty:)

Schemmy, à l'aide d'une pile 9V ! et une photo gratuite de Kitty:)
Schemmy, à l'aide d'une pile 9V ! et une photo gratuite de Kitty:)
Schemmy, à l'aide d'une pile 9V ! et une photo gratuite de Kitty:)
Schemmy, à l'aide d'une pile 9V ! et une photo gratuite de Kitty:)

Image 1: Ajoutez simplement un interrupteur marche/arrêt à la batterie, et ce programmeur est prêt à partir. Si votre circuit consomme plus d'énergie que la batterie wimpy ne peut en supporter, ajoutez une alimentation différente entre 9 et 12,5 V (vérifiez si avec un multimètre ! 12 V non régulé signifie généralement 18 à 20 V sous faible consommation - et tuera votre photo). Si votre verrue murale la plus proche donne plus de 12,5 V, vous devrez alors ajouter un autre régulateur de tension.

OU vous pouvez laisser la pile 9V connectée au transistor pnp, mais la déconnecter du 7805. Ensuite, insérez votre source d'alimentation externe, moins de 35V, au 7805. Eh bien, maintenant que vous comprenez comment fonctionne le programmeur (oui, c'est ça ?), vous pouvez le modifier comme vous le souhaitez à partir d'ici. L'ajout de LED indicatrices pourrait être sympa ? Photo 2: Schtroumpf. Chut, elle dort.

Conseillé: