Fabrication industrielle
Internet des objets industriel | Matériaux industriels | Entretien et réparation d'équipement | Programmation industrielle |
home  MfgRobots >> Fabrication industrielle >  >> Manufacturing Technology >> Processus de fabrication

Programmer le microcontrôleur ATmega8 avec l'IDE Arduino – Guide complet

Composants et fournitures

Composant Quantité
Arduino UNO 1
Microchip ATmega8A-PU 1
Convertisseur USB vers TTL CH340G 1
Quartz 16 MHz 1
Condensateur 22 pF 2
Résistance 10 kΩ 1
Bouton poussoir 12 mm 1
Plaque d'essai (breadboard) 1
Fils de connexion (jumper wires) 12
Fils de connexion Male/Femelle 4

À propos de ce projet

« J'ai écrit mon code pour la carte Arduino UNO. Est-il possible de téléverser mon sketch sur un microcontrôleur AVR autre que l'ATmega328 ? Je pense que c'est la question la plus courante des amateurs d'Arduino. Cela peut avoir différentes raisons :

Dans ce tutoriel, vous apprendrez comment programmer un ATmega8 en utilisant l'IDE Arduino. Ce n'est pas limité à l'ATmega8 uniquement et peut être généralisé à d'autres cœurs disponibles sur le GitHub de MCUDude. Le tutoriel se compose de deux parties. La première partie décrit l'installation du bootloader Arduino sur l'ATmega8. La deuxième partie montre comment programmer un ATmega8 en utilisant l'IDE Arduino et un convertisseur USB vers TTL.

Partie 1 : Installation du bootloader Arduino

Dans cette partie, nous ajoutons la prise en charge de l'ATmega8 à l'IDE Arduino. Ensuite, nous configurons la plaque d'essai et connectons l'ATmega8 à la carte Arduino UNO.

Étape 1 : Ajouter la prise en charge de l'ATmega8 à l'IDE Arduino via le Gestionnaire de cartes

Il existe différents types de cœurs disponibles sur le dépôt GitHub de MCUDude. MiniCore est utilisé pour le microcontrôleur ATmega8. Les microcontrôleurs pris en charge dans ce cœur sont :

Suivez les étapes ci-dessous pour installer MiniCore dans votre IDE Arduino :

  1. Dans le menu Fichier, cliquez sur Préférences.
  2. Dans URL supplémentaires pour le gestionnaire de cartes, saisissez l'URL suivante :
    https://mcudude.github.io/MiniCore/package_MCUdude_MiniCore_index.json
  3. Allez dans le menu Outils puis sélectionnez Carte > Gestionnaire de cartes
  4. Dans la fenêtre du Gestionnaire de cartes, recherchez MiniCore et installez la dernière version.

Les étapes ci-dessus sont illustrées graphiquement ici :

Programmer le microcontrôleur ATmega8 avec l IDE Arduino – Guide complet
Programmer le microcontrôleur ATmega8 avec l IDE Arduino – Guide complet
Programmer le microcontrôleur ATmega8 avec l IDE Arduino – Guide complet
Programmer le microcontrôleur ATmega8 avec l IDE Arduino – Guide complet

Le brochage de l'ATmega8 est illustré dans la figure suivante.

Programmer le microcontrôleur ATmega8 avec l IDE Arduino – Guide complet

Étape 2 : Programmer l'Arduino en tant qu'ISP (Programmation en système)

Pour graver le bootloader Arduino, nous devons transformer notre Arduino UNO en programmateur ISP. Il existe un sketch nommé ArduinoISP dans les exemples intégrés de l'IDE Arduino. Suivez ces étapes pour programmer votre Arduino UNO en tant qu'ISP :

  1. Ouvrez Fichier > Exemples > 11.ArduinoISP > ArduinoISP
  2. Téléversez ce sketch sur votre Arduino UNO.

Étape 3 : Graver le bootloader

Connectez l'Arduino à l'ATmega8 comme indiqué ci-dessous.

Arduino ---------- ATmega8

Programmer le microcontrôleur ATmega8 avec l IDE Arduino – Guide complet
Programmer le microcontrôleur ATmega8 avec l IDE Arduino – Guide complet
  1. Allez dans Outils > Carte et sélectionnez ATmega8. Vous pouvez également sélectionner votre type d'horloge et sa fréquence dans le menu Outils.
  2. Sélectionnez le type de programmateur dans Outils > Programmateur : comme « Arduino as ISP ».
  3. Maintenant dans le menu Outils, cliquez sur Graver le bootloader.
Programmer le microcontrôleur ATmega8 avec l IDE Arduino – Guide complet

Si l'opération a réussi, le message « Done burning bootloader » s'affiche. Félicitations ! Vous l'avez fait.

Partie 2 : Programmer l'ATmega8 avec l'IDE Arduino et un convertisseur USB vers TTL

Nous avons maintenant un ATmega8 avec le bootloader Arduino. Comme vous le savez, il y a un convertisseur USB vers TTL sur toutes les cartes Arduino. Il fait office de pont entre le microcontrôleur et l'IDE Arduino. Nous utilisons le module convertisseur CH340 USB vers TTL pour téléverser le sketch sur l'ATmega8.

Étape 4 : Configurer les connexions

Connectez les composants comme indiqué ci-dessous.

CH340 ---------- ATmega8

Programmer le microcontrôleur ATmega8 avec l IDE Arduino – Guide complet
Programmer le microcontrôleur ATmega8 avec l IDE Arduino – Guide complet

Étape 5 : Téléverser le sketch sur l'ATmega8

Appuyez sur le bouton de réinitialisation et maintenez-le enfoncé. Cliquez maintenant sur « Téléverser » dans l'IDE. Maintenez le bouton enfoncé jusqu'à ce qu'il soit indiqué « Téléversement... » sur la barre d'état de l'IDE. Relâchez le bouton dès que le processus de téléversement commence. C'est parce que le microcontrôleur doit être dans l'état RESET au début du processus de téléversement.

Note : Si le processus échoue, placez un condensateur de 100 nF entre Vcc et GND du microcontrôleur, le plus près possible.

Note : Certains modules convertisseurs USB vers TTL ont une broche nommée DTR. Si le vôtre en a une, vous pouvez la connecter à la broche RESET de l'ATmega8 et il n'y a plus besoin d'utiliser le bouton poussoir pour réinitialiser manuellement le microcontrôleur.

Schémas

Programmer le microcontrôleur ATmega8 avec l IDE Arduino – Guide complet
Programmer le microcontrôleur ATmega8 avec l IDE Arduino – Guide complet

Processus de fabrication

  1. Transfert de données température/humidité entre deux Arduinos via Firebase
  2. Dé numérique Arduino sur écran LCD 16x2 – Générateur aléatoire à bouton poussoir
  3. Système de Capteur de Température Multi-Position pour Intégration Domotique
  4. Manette de jeu USB Arduino DIY – Construisez votre propre gamepad haute performance
  5. MotionSense : Détection d'intrusion intelligente avec Arduino et ESP8266
  6. Prévention incendie imprimante 3D : Système de sécurité à capteur intelligent
  7. Mesure de distance en temps réel par sonar Arduino et visualisation Processing
  8. Pixel Chaser : Jeu LED interactif à une touche avec Arduino Nano
  9. Construire une Boussole Numérique Temps Réel avec Arduino et Processing