Contacts

Téléchargez le programme depuis le fournisseur d'accès USB. Programmeurs de microcontrôleurs AVR. Principales caractéristiques du programmeur USBasp

Découvrons ce qu'est une interface FAI et examinons un programmeur FAI USB peu coûteux et pratique. Examinons les schémas des programmeurs les plus simples pour les microcontrôleurs AVR utilisant les ports COM et LPT sur un ordinateur. Ces informations sont largement suffisantes pour flasher la plupart des modèles de microcontrôleurs AVR non seulement sous Linux, mais également dans d'autres systèmes d'exploitation.

Interface de programmation intégrée au système du FAI

Pour écrire un programme sur le microcontrôleur AVR, vous aurez besoin d'un programmeur.

Programmeur est un petit circuit électronique qui permet de connecter un microcontrôleur à l'un des ports de l'ordinateur (COM, LPT, USB) pour une lecture et une écriture ultérieures du firmware (programmation).

Il existe de nombreuses conceptions différentes de programmeurs pour microcontrôleurs AVR qui se connectent à différents ports d'ordinateur.

L'option la plus fiable et la plus pratique est un programmateur qui se connecte à un port USB, car les ports COM et LPT ne sont plus installés sur les nouveaux ordinateurs de bureau et portables.

Dans les appareils finis, le programmateur est connecté au microcontrôleur via une interface FAI(Dans la programmation système) - interface de programmation intégrée au système. L'interface ISP se compose de plusieurs conducteurs à travers lesquels un signal d'horloge et des données sont reçus pour connecter le programmateur au microcontrôleur.

En règle générale, l'interface ISP est placée sur des cartes sous forme de dix ou six broches, auxquelles le programmateur est connecté via un connecteur approprié via un câble.

Riz. 4. Interface ISP sur la carte.

Objectif des broches dans l'interface FAI :

  1. VCC - alimentation plus, généralement +5V ;
  2. GND - puissance moins, masse (Ground);
  3. MOSI - entrée de données (Master Out Slave In);
  4. MISO - sortie de données (Master In Slave Out);
  5. SCK - signal d'horloge (horloge série);
  6. RST - pour fournir un signal de réinitialisation.

Pour la programmation en circuit du microcontrôleur, seules 4 broches suffisent, puisque le microcontrôleur peut être alimenté depuis le circuit lui-même où il est installé.

Comment connecter le programmateur à la puce du microcontrôleur AVR si elle n'est pas soudée au circuit ? - très simplement, en utilisant les mêmes broches de l'interface ISP, si nécessaire, en alimentant le microcontrôleur depuis la source d'alimentation.

Programmeur ASP USB FAI

Pour travailler avec les puces AVR, j'ai acheté un programmeur USB ISP bon marché pour environ 10 $. Un tel appareil est désormais en vente dans de nombreux magasins en ligne nationaux et étrangers, l'achat ne devrait donc poser aucun problème.

Riz. 5. USB ISP - programmateur avec un câble pour la programmation en circuit des microcontrôleurs AVR d'ATMEL.

Ce programmateur est sûr à utiliser, de petite taille et pris en charge par la plupart des programmes de flashage des microcontrôleurs AVR. USB ISP fonctionne sur les systèmes d'exploitation Linux, Mac OS X et Windows. Pour Linux, vous n'avez pas besoin d'installer de pilotes ; après avoir connecté le programmateur au port USB, l'appareil sera immédiatement détecté et prêt à l'emploi.

Ci-dessous, je donnerai le brochage des connecteurs du programmateur USB ISP - cela nous sera utile plus tard lors de la connexion au microcontrôleur.

Riz. 6. Emplacement des broches sur le connecteur USB ISP (brochage).

Riz. 7. Emplacement des contacts dans les prises du connecteur connectées au programmateur USB ISP.

Que faire si vous ne parvenez pas à acheter un programmateur USB ISP ?- vous pouvez programmer des microcontrôleurs à l'aide de simples programmeurs faits maison qui se connectent à un port COM ou LPT, mais il est préférable de créer vous-même un FAI USB et de programmer une fois la puce du microcontrôleur pour celui-ci avec un simple programmeur maison via un port COM ou LPT.

Riz. 8. Schéma schématique d'un programmeur ISP USB ASP fait maison.

Des informations détaillées sur la fabrication de l'USB ASP, ainsi que des cartes de circuits imprimés, des pilotes et du micrologiciel pour le microcontrôleur, sont disponibles sur le site officiel : http://www.fischl.de/usbasp/

De plus, il existe de nombreuses ressources sur ce programmeur gratuit sur Internet, il existe de nombreuses configurations de circuits imprimés prêtes à l'emploi, y compris dans le programme SprintLayout, nous ne nous attarderons donc pas sur cela en détail dans cet article.

Programmeur utilisant le port COM

Ce programmeur est également appelé « programmeur Gromov », en l'honneur de celui qui a inventé ce schéma, le créateur du programme Algorithm Builder (un environnement graphique pour programmer AVR sous Windows à l'aide d'un langage algorithmique) - G.L. Gromova.

Ce programmateur vous permet de programmer des puces AVR en utilisant le port COM de l'ordinateur - interface RS232. Pour assembler un tel programmateur, vous aurez besoin d'un minimum de pièces - 3 diodes, 7 résistances, un connecteur DB-9 ou DB-25 (selon le connecteur homologue installé sur votre ordinateur) et un connecteur ISP pour la connexion au microcontrôleur (ou juste quelques conducteurs à puce). Toutes les diodes de faible puissance peuvent être utilisées dans le circuit.

Riz. 9. Schéma schématique du programmateur du microcontrôleur AVR via un port COM de l'ordinateur.

Pour être complet, je fournirai ci-dessous le brochage des ports RS-232 pour les options DB-9 et DB-25.

Riz. 10. RS232 - Port COM, disposition des broches DB-9.

Riz. 11. Port COM RS232 DB-25 - emplacement des broches sur les connecteurs.

Programmeur utilisant le port LPT

On le sait, le port LPT d'un ordinateur est conçu pour connecter une imprimante locale (Local Printer Port), mais il est néanmoins souvent utilisé pour connecter divers appareils et produits faits maison. Dans ce cas, nous pouvons l'utiliser pour programmer des microcontrôleurs AVR en assemblant à cet effet un circuit très simple, illustré ci-dessous.

Riz. 12. Schéma schématique d'un programmateur pour microcontrôleurs AVR utilisant le port LPT d'un ordinateur.

Comme vous pouvez le constater, le circuit est encore plus simple que dans la version avec, ici nous n'avons besoin que de 4 résistances faible consommation et d'un connecteur (mâle, avec broches) pour se connecter au port LPT de l'ordinateur.

Riz. 13. Emplacement des broches des connecteurs du port LPT.

Toutes les pièces et connexions peuvent être placées dans le boîtier du connecteur LPT, et pour se connecter au microcontrôleur, un câble avec un connecteur pour l'interface ISP ou simplement les conducteurs nécessaires à la connexion à la puce peut être sorti.

Logiciels et notes

Après avoir connecté le programmateur COM ou LPT au microcontrôleur, n'oubliez pas d'alimenter la puce elle-même. Vous pouvez utiliser des piles ou une alimentation avec stabilisateur comme source d'alimentation pour le microcontrôleur ; ce sera le plus sûr à la fois pour le port de l'ordinateur et pour la puce. Nous avons déjà discuté de la façon de l'utiliser.

Sous Linux, il existe un programme très puissant qui peut fonctionner avec les programmeurs USB ASP, COM et LPT - ce programme AVRDUDE, il sera discuté dans les sections suivantes.

Pour flasher les puces AVR sous Windows à l'aide des données des programmeurs COM et LPT, vous avez besoin du programme UniProf de Nikolaev, qui est un programmeur universel pour AVR (avr.nikolaew.org).

ATTENTION! Soyez extrêmement prudent lors de l'assemblage et de l'utilisation de programmeurs utilisant le port COM ou LPT d'un ordinateur, une simple erreur peut facilement mettre le feu à ces ports. Pour un fonctionnement normal de ces programmeurs, vous devez essayer d'utiliser les conducteurs les plus courts possibles entre le connecteur et le circuit du programmateur et le microcontrôleur. Il est conseillé que le microprocesseur de l'ordinateur ait une fréquence ne dépassant pas 1 à 2 GHz et il est conseillé d'utiliser Win2000 ou WinXP comme système d'exploitation pour programmer les puces.

Il est également important de savoir que les adaptateurs USB-RS232 (port USB-COM) ne fonctionneront probablement pas avec le programmateur de Gromov ; seuls ceux dotés de puces plus récentes fonctionneront, il est donc préférable de rechercher une machine dotée d'un port COM natif.

Conclusion

Les programmeurs abordés dans l'article ne sont que quelques-unes des solutions les plus abordables et les plus simples parmi une large liste de programmeurs AVR : USBTinyISP, AVR-Doper, AVR vusbtiny, AVRISP-MkII, programmeurs FTDI et autres.

Désormais, dans tous les cas, vous pouvez assembler un programmateur à votre disposition et flasher au moins une puce, sur la base de laquelle vous pouvez assembler un autre programmateur plus pratique ou un autre appareil.

Dans le prochain article, nous verrons comment connecter différents modèles de microcontrôleurs AVR au programmateur et découvrirons où obtenir des informations sur le brochage des microcontrôleurs.

Les microcontrôleurs d'ATMEL ont gagné en popularité. Avant utilisation, leur programmation peut se faire directement sur la carte de l'appareil fini via un simple câble ISP connecté au port LPT d'un ordinateur personnel ou un câble un peu plus complexe connecté au port COM. Mais de nos jours, de plus en plus de cartes mères sont produites sans les deux, et dans les ordinateurs portables, le LPT a disparu depuis longtemps, remplacé par une interface USB. Cependant, des programmeurs pour cette interface existent également et sont disponibles.

Pour l'échelle, il y a une LED ordinaire de 5 mm à proximité.
Ce programmateur USBASP prend en charge les microcontrôleurs suivants :

Liste des MK pris en charge

ATtiny11, ATtiny12, ATtiny13, ATtiny15, ATtiny22, ATtiny2313, ATtiny24, ATtiny25, ATtiny26, ATtiny261, ATtiny28, ATtiny44, ATtiny45, ATtiny461, ATtiny84, ATtiny85, ATtiny861
AT90S1200, AT90S2313, AT90S2323, AT90S2343, AT90S4414, T90S4433, AT90S4434, AT90S8515, AT90S8535
ATmega8, ATmega48, ATmega88, ATmega16, ATmega161, ATmega162, ATmega163, ATmega164, ATmega165, ATmega168, ATmega169, ATmega32, ATmega323, ATmega324, ATmega325,
ATmega3250, ATmega329, ATmega64, ATmega640, ATmega644, ATmega645, ATmega6450, ATmega649, ATmega6490, ATmega128, ATmega1280, ATmega1281, ATmega2560, ATmega2561, ATmega103, ATmega406, ATmega851 5, ATmega8535
AT90CAN32, AT90CAN64, AT90CAN128
AT90PWM2, AT90PWM2B, AT90PWM3, AT90PWM3B
AT90USB1286, AT90USB1287, AT90USB162, AT90USB646, AT90USB647
AT89S51, AT89S52
AT86RF401




Un câble de vol à 10 conducteurs avec connecteurs est fourni avec le programmateur.


Le programmateur est alimenté par le port USB de l'ordinateur.


Sur la carte du programmateur, il y a un emplacement pour dessouder un régulateur de tension LDO 3,3 V, mais il n'est pas soudé lui-même.
Le programmeur est pris en charge par le programme AVRDUDE. Le programme lui-même est un programme console, mais il existe un fichier . L'utilitaire avrdude se trouve dans le dossier /hardware/tools/ de la distribution Arduino IDE ou téléchargé depuis Internet.
Avant de commencer à travailler avec le programmeur, vous devrez télécharger le pilote à partir de .
Le programmeur est également pris en charge par l'environnement de développement Arduino.


Il existe un micrologiciel pour le programmeur appelé , qui le rend compatible STK500 et accepté par l'environnement de développement propriétaire ATMEL AVR Studio, mais en raison de la grande variabilité du matériel chinois, vous ne pouvez l'utiliser qu'à vos risques et périls. Je prévois d'acheter +32 Ajouter aux Favoris J'ai aimé la critique +17 +42

Il existe de nombreux circuits de programmation USB pour les microcontrôleurs AVR sur Internet. Tous peuvent être divisés en trois groupes : les programmeurs basés sur des microcontrôleurs AVR, dans lesquels l'interface USB est implémentée dans le logiciel, les programmeurs basés sur des microcontrôleurs AVR avec support matériel USB et les programmeurs basés sur des puces FT232, qui fonctionnent en mode BitBang.

L'un des programmeurs USB AVR les plus faciles à répliquer est USBasp. Il est assemblé sur un microcontrôleur Atmega8 (ou Atmega48), nécessite un minimum de composants externes, dispose de plusieurs options de disposition de PCB et shells de programmation prêts à l'emploi, et peut également fonctionner sous Linux et MacOS.

Il y en a vraiment un MAIS ! Pour relancer ce programmeur, vous devez écrire un micrologiciel sur le microcontrôleur, ce qui signifie que vous devriez déjà disposer d'une sorte de programmeur AVR fonctionnel, ou au moins pouvoir l'obtenir quelque part.

Le schéma du programmeur USBasp est présenté dans la figure ci-dessous. J'ai pris comme base le schéma du site Web de l'auteur http://www.fischl.de/usbasp et je l'ai légèrement modifié. Des diodes VD1 - VD3 ont été ajoutées pour réduire la tension d'alimentation et faire correspondre les niveaux logiques du microcontrôleur et du port USB sans diodes Zener. Les circuits connectés à l'UART ont été jetés car ils n'étaient pas utilisés et le cavalier JP1 a été ajouté.

Je vais vous parler du but des LED et des cavaliers.

HL1 signale que la programmation est en cours. Il s'allume pendant l'écriture du firmware.

HL2 indique que le programmateur est en état de fonctionnement. Il s'allume lorsque l'alimentation est appliquée.

JP1 court-circuite une chaîne de diodes, ce qui permet de modifier la tension sur le connecteur de programmation de 3 à 5 V. Cependant, sans diodes Zener, cela ne fonctionnera pas avec tous les ordinateurs. De nombreux ordinateurs ne reconnaissent pas USBASP s'il possède des niveaux logiques de 5 volts.

JP2 change la fréquence du signal SCK. Avec le cavalier ouvert, la fréquence SCK sera de 375 kHz, avec le cavalier fermé - 8 kHz. Ceci est nécessaire pour programmer des microcontrôleurs avec de faibles vitesses d'horloge (inférieures à 1,5 MHz).

JP3 connecte la broche RESET au connecteur de programmation. Ceci est nécessaire pour programmer le microcontrôleur programmateur lui-même.

JP4 se connecte au connecteur de programmation +5V du port USB. Cette fonction peut être nécessaire pour alimenter la carte programmable à partir du programmateur.

Assemblage USBASP

Pour assembler le programmateur USBASP, vous aurez besoin des composants suivants :

Fabriquer une planche selon la méthode LUT n'est pas particulièrement difficile - la planche est unilatérale, les pistes sont larges. Lors de l'impression, vous n'avez pas besoin de reproduire le design du tableau.


Après avoir assemblé la carte, elle doit être soigneusement vérifiée pour déceler les courts-circuits. Surtout sur les chaînes alimentaires. Si tout est en ordre, vous pouvez écrire le firmware sur le microcontrôleur. On le retrouve à la fin de l'article. Il s'agit de la dernière version aujourd'hui, mais au cas où, consultez le site Web de l'auteur.

Vous pouvez programmer le microcontrôleur directement sur la carte. Pour ce faire, vous devez fermer les cavaliers JP3 et JP4, connecter USBasp à l'ordinateur pour alimenter et connecter le programmateur au connecteur BH-10. Le reste des étapes dépend du programmeur que vous utilisez.

Une fois le microcontrôleur programmé, vous devez régler les bits du fusible pour qu'il soit cadencé par un cristal externe. La signification des bits Fuse est :

atmega8 HFUSE=0xc9 LFUSE=0xef
atmega88 HFUSE=0xdd LFUSE=0xff

J'ai flashé USBASP avec mon programmeur Atmel natif. Dans Atmel Studio, ma fenêtre avec les bits Fuse ressemblait à ceci.

Si vous flashez USBasp avec un programmeur sur FT232, alors dans SinaProg, l'image des bits Fuse ressemblera à ceci.


Il n'y a aucune différence, alors ne posez pas de questions sur les bits Fuse à installer.

Installation des pilotes pour USBasp

Pour travailler avec le programmeur sous Windows, vous devez installer des pilotes. Ils peuvent être téléchargés sur le site de l'auteur. Pour les systèmes d'exploitation Linux et MacOS X, USBasp ne nécessite pas de pilote.

Nous connectons l'USBasp assemblé et programmé à l'ordinateur. Le système d'exploitation nous informera qu'un nouveau matériel a été trouvé et proposera d'installer les pilotes.


Sélectionnez l'option - installer à partir d'un emplacement spécifié


Spécifiez le dossier dans lequel se trouvent les pilotes du programmeur.


Le système refroidira un peu, puis le processus d'installation commencera.


Si tout s'est bien passé, l'assistant matériel terminera le travail.


Et Windows nous avertira lorsqu'un nouveau matériel sera installé


Le programmateur peut maintenant être utilisé.

La procédure décrite peut différer légèrement selon la version du système d'exploitation, mais l'essence est la même : glissez les pilotes du dossier.

Shells pour travailler avec USBasp

Il existe plusieurs programmes pour travailler avec USBasp - avrdude, eXtremeBurner, Khazama et... quelques autres.

À mon avis, le programme USBaspa le plus simple à utiliser est Khazama. Il possède une interface de fenêtre simple et intuitive. Le processus de programmation du microcontrôleur s'effectue en trois étapes.

Le programmeur est basé sur un pilote d'Objective Development et est entièrement compatible dans les commandes avec le programmeur AVR910 original d'ATMEL. Description de l'appareil. Le fusible protège les lignes électriques du port USB contre les courts-circuits accidentels dans les circuits d'alimentation du programmateur. Les diodes VD1, VD2 sont des redresseurs en silicium, elles sont conçues pour réduire l'alimentation du microcontrôleur à 3,6 V. Selon la documentation, le contrôleur peut fonctionner à cette tension d'alimentation jusqu'à une fréquence d'un peu plus de 14 MHz. LED VL1 (" R.D."), VL2 (" WR") signaler les actions en cours du programmeur et indiquer les modes de lecture et d'écriture. LED VL3 (" REP") indique que l'alimentation est fournie au .

Cavalier J1 - ( Modifier) est utilisé pour la programmation initiale du programmateur de contrôle MK. Lorsqu'il est fermé, un programmateur externe est connecté au connecteur ISP et le programme de contrôle est chargé dans le MK. Après avoir programmé le programmateur de contrôle MK, ce cavalier doit être ouvert et le cavalier J2 - NORMal doit être fermé.

Cavalier J3 FAIBLE SCK abaisse la fréquence d'horloge du port SPI du programmeur MK à ~ 20 kHz. Lorsque le cavalier est ouvert, la fréquence SPI est normale, lorsqu'il est fermé, elle est réduite. Vous pouvez changer le cavalier à la volée, puisque le programme de contrôle du programmateur MK vérifie l'état de la ligne PB0 à chaque accès au port SPI. Il n'est pas recommandé de commuter le cavalier pendant l'écriture/lecture d'un microcontrôleur programmable, car cela entraînerait très probablement une distorsion des données en cours d'écriture/lecture. Le cavalier J3 est introduit pour permettre la programmation de microcontrôleurs AVR cadencés à partir d'un oscillateur interne de 128 kHz.

Les résistances R10 - R14 sont conçues pour correspondre aux niveaux de signal du microcontrôleur du programmateur et des circuits externes (microcontrôleur programmable ou autre programmateur). La fréquence d'horloge du port SPI du programmateur MK avec le cavalier J3 ouvert est de 187,5 kHz. Cela permet aux contrôleurs d'être programmés avec des vitesses d'horloge allant d'environ 570 kHz pour l'ATtiny/ATmega, 750 kHz pour le 90S et 7,5 MHz pour le 89S. Les contrôleurs sont programmés de 10 à 30 secondes (à l'aide de l'utilitaire AVRPog v.1.4 du package AVR Studio) avec vérification en fonction de la quantité de mémoire FLASH et de la fréquence d'horloge.

Une onde carrée d'une fréquence de 1 MHz est émise vers la sortie LED du connecteur ISP pour « faire revivre » les MK qui avaient programmé par erreur des bits de fusible responsables de la synchronisation. Le signal est généré en permanence et ne dépend pas du mode de fonctionnement du programmateur. Le programmeur a été testé avec les programmes AVRProg v.1.4 (inclus dans le package AVRStudio), ChipBlasterAVR v.1.07 Evaluation, CodeVisionAVR, AVROSP (ATMEL AVR Open Source Programmer). Pour un fonctionnement normal du contrôleur dans le circuit, il est nécessaire que les bits soient programmés (mis à « 0 ») SPIEN, CKOPT, SUT0 Et BODEN. Généralement des microcontrôleurs provenant de l'usine, par ex. nouveau, j'ai déjà programmé le bit SPIEN. Les bits restants doivent être non programmés (mis à "1").

Instructions d'installation et d'utilisation. Flashez le contrôleur. Connectez le programmateur fraîchement sorti du four à l'ordinateur via USB. Le système d'exploitation trouvera un nouveau périphérique - le programmeur USB AVR910, lorsqu'il sera invité à rechercher automatiquement le pilote, à refuser et à spécifier le chemin d'accès au fichier inf, en fonction du système d'exploitation installé sur votre ordinateur.

Le forum contient tous les fichiers, ainsi que le circuit imprimé de notre programmeur avr. Ici, je vais vous montrer la technologie permettant d'assembler le programmateur USB AVR et de l'emballer dans un étui. Tout d’abord, téléchargez l’archive et créez un circuit imprimé.

Ensuite, nous y soudons tous les détails. Je n'ai pas trouvé de petit quartz, j'en ai donc soudé un grand, mais sur de longues pattes, afin de pouvoir le plier plus tard afin qu'il ne gêne pas l'installation de la carte dans le boîtier. Ensuite, nous sélectionnons un étui approprié, j'en avais un tout fait.

Nous ajustons la carte au boîtier, prenons toutes les mesures, perçons des trous et voilà un appareil fini, avec une carte universelle.

S'il n'y a pas d'équipement de mesure spécial, vous pouvez vérifier à l'aide d'une LED. La LED est connectée avec l'anode à la broche LED et la cathode à n'importe quelle broche GND du connecteur ISP. Lorsque l’alimentation est appliquée, la LED doit briller à pleine intensité. Lorsque vous fermez les pattes de l'oscillateur à quartz avec une pince à épiler, la LED doit soit briller à « pleine chaleur », soit ne pas briller.

Sans erreurs, le programmateur assemblé avec un microcontrôleur correctement programmé n'a pas besoin d'être configuré. Mais si l'entrée RESET d'un MK programmable est connectée à la tension d'alimentation par une résistance, la valeur de la résistance ne doit pas être inférieure à 10 kOhm - cela est dû à la tension d'alimentation réduite du contrôleur de contrôle dans le circuit du programmateur et à l'introduction de résistances de limitation sur le bus du connecteur ISP.

Discutez de l'article PROGRAMMATEUR USB AVR

Avec le développement de la technologie informatique, il y a de moins en moins d'ordinateurs équipés de ports COM et LPT. Ceci, à son tour, entraîne des difficultés, en particulier pour les radioamateurs, liées au couplage des outils de programmation de microcontrôleurs avec un ordinateur personnel.

Cet article décrit un programmateur USB pour microcontrôleurs AVR, que vous pouvez assembler vous-même. Il est construit sur un microcontrôleur Atmega8 et est capable de fonctionner à partir du connecteur USB d’un ordinateur. Ce programmateur est compatible avec STK500 v2.

Description du programmateur USB

Le programmateur USB est construit sur une carte en fibre de verre simple face. Il y a 2 cavaliers sur la carte : l'un est situé sous le connecteur SPI, le deuxième cavalier est situé à proximité du même connecteur.

Une fois toutes les pièces scellées, vous devez flasher le microcontrôleur Atmega8 avec le firmware indiqué à la fin de l'article. Les fusibles qui doivent être réglés lors de la programmation du microcontrôleur Atmega8 devraient ressembler à ceci :

  • SUT1 = 0
  • BOTTESZ1 = 0
  • BOTTESZ0 = 0
  • CKOPT = 0
  • SPIEN = 0

Il convient de rappeler que dans certains programmes, les réglages des fusibles sont réglés dans le sens opposé. Par exemple, dans le programme CodeVisionAVR, vous devez cocher les cases à côté des fusibles mentionnés ci-dessus, et dans le programme PonyProg vice versa.

Programmation d'Atmega8 via le port LPT d'un ordinateur

Le moyen le plus rapide et le moins cher de programmer Atmega8 consiste à utiliser un programmeur LPT pour AVR. Un diagramme similaire est présenté ci-dessous.

Le microcontrôleur est alimenté par un simple régulateur de tension 78L05. Vous pouvez utiliser le programme UniProf comme shell de programmation.

Lorsque vous allumez le programme pour la première fois et lorsque le contrôleur n'est pas connecté, en appuyant sur le bouton « LPTpins », vous devez configurer les broches du port LPT comme suit :

Au démarrage d'UniProf, il détermine automatiquement le type de microcontrôleur. Nous chargeons le firmware Atmega8_USB_prog.hex dans la mémoire UniProf et rejetons la connexion du fichier EEPROM.

Nous réglons les fusibles comme suit (pour le programme UniProF) en appuyant sur le bouton « FUSE » :

Pour mémoriser les paramètres, appuyez sur les trois boutons « Écrire ». Puis en cliquant sur « Effacer » on efface d'abord la mémoire du microcontrôleur en cours de flashage. Après cela, cliquez sur « Prog » et attendez que le firmware soit terminé.

Configuration d'un programmateur USB

Une fois notre microcontrôleur flashé, il doit être installé sur la carte de programmation USB. Ensuite, nous connectons le programmateur au port USB de l'ordinateur, mais ne l'alimentons pas encore.

Paramètre de port :

Configuration du terminal :

Paramètre ASCII :

Maintenant, une fois toutes les procédures terminées, nous alimentons le programmateur USB. La LED HL1 doit clignoter 6 fois puis rester allumée.

Pour vérifier la connexion entre le programmateur USB et l'ordinateur, appuyez 2 fois sur la touche « Entrée » dans le programme HyperTerminal. Si tout va bien, nous devrions voir l’image suivante :

Si ce n'est pas le cas, vérifiez à nouveau l'installation, notamment la ligne TxD.

Ensuite, nous entrons dans la version 2.10 du programmeur, car sans cela, le programmeur ne fonctionnera pas avec les programmes « de haut niveau ». Pour ce faire, saisissez « 2 » et appuyez sur « Entrée », saisissez « a » (anglais) et appuyez sur « Entrée ».

Le programmateur USB est capable de reconnaître la connexion d'un microcontrôleur programmable. Cela se fait sous la forme de surveillance du « pull-up » du signal de réinitialisation vers la source d’alimentation. Ce mode est activé et désactivé comme suit :

  • "0", "Entrée" - le mode est désactivé.
  • "1", "Entrée" - le mode est activé.

Changement de vitesse de programmation (1 MHz) :

  • « 0 », « Enter » – vitesse maximale.
  • « 1 », « Enter » – vitesse réduite.

Ceci termine le travail préparatoire, vous pouvez maintenant essayer de flasher un microcontrôleur.

(téléchargements : 1 203)



Avez-vous aimé l'article? Partagez-le