- Composants requis
- Schéma des broches d'Atmega328
- Descriptions des composants
- Partie 1: Construire le circuit Arduino sur Breadboard
- Partie 2: Graver le chargeur de démarrage dans Atmega328 IC
- Partie 3: Comment programmer Arduino Bootloader a téléchargé Atmega 328
- Programmation de la puce Atmega328 à l'aide de la carte Arduino
- Programmation de la puce Arduino Atmega328 à l'aide d'un convertisseur USB vers série
Nous savons tous que Atmega328 IC est utilisé dans la carte Arduino UNO. Ce circuit intégré est le cerveau de la carte Arduino. En fait, les concepteurs d'Arduino voulaient créer une carte de prototypage pratique pour les débutants.Ils ont donc organisé tous les composants de manière à ce que tout le monde puisse accéder à toutes les broches du Atmega328 IC et le programmer simplement en le connectant à un ordinateur. La carte Arduino est très populaire pour la construction de projets de loisirs. Mais dans les produits industriels ou grand public, ce n'est pas une bonne idée d'utiliser la carte Arduino complète, nous pouvons donc utiliser un IC Atmega328 autonome, qui peut être programmé avec Arduino IDE mais sans utiliser la carte Arduino.
Dans ce tutoriel, nous verrons comment remplacer la carte Arduino par Atmega328 IC et par quelques autres composants. Pour utiliser Atmega328 IC à la place d'arduino, nous devons d'abord graver Arduino Bootloader dedans, puis nous le programmerons en utilisant FTDI ou en utilisant Arduino Board. Ce tutoriel aidera également à remplacer le circuit intégré Atmega328 endommagé de la carte Arduino. En utilisant également le circuit décrit ci-dessous, vous pouvez créer votre propre carte Arduino en la répliquant sur PCB.
Composants requis
- Atmega 328 IC
- Planche à pain
- LM7805
- Cristal 16 MHz
- Condensateurs céramiques 22pF (2)
- Condensateur 10uF (2)
- Résistance 10 K
- Résistance 1k
- Fils de cavalier
En option, vous pouvez également utiliser le régulateur de tension 3.3v LM1117-3.3v pour inclure un rail 3.3v dans votre circuit.
Schéma des broches d'Atmega328
Descriptions des composants
Partie alimentation
- Régulateur de tension 5V: Atmega 328 IC fonctionne sur une alimentation 5V. Donc, ici, nous utilisons LM7805 pour obtenir une sortie 5v, il peut gérer jusqu'à 30V en entrée. Si vous avez une alimentation 5 V séparée, vous pouvez quitter cette étape.
- Condensateurs: un condensateur de 10 uF est utilisé à l'entrée et à la sortie du 7805 pour contourner tout composant AC à la terre.
- LED: Cela vous montrera que votre sortie 5V arrive.
Pièce microcontrôleur-
- Atmega 328: C'est notre composant principal sur la maquette. Son diagramme de broches est donné ci-dessus.
- Oscillateur à cristal: Un cristal externe de 16 MHz est connecté entre les broches 9 et 10 de l'ATmega328. Ce cristal est utilisé pour donner une horloge au microcontrôleur pour exécuter les tâches plus rapidement.
- Bouton poussoir : Pour réinitialiser le microcontrôleur, un bouton poussoir est connecté entre la broche 1 et GND. Normalement, il est connecté avec 5v en utilisant une résistance de 10k.
- LED: Une LED est connectée à la broche numérique 13.
Ce tutoriel complet est divisé en trois parties pour faire fonctionner votre propre Arduino sur une maquette:
- Construire le circuit Arduino sur Breadboard
- Graver le chargeur de démarrage dans Atmega328 IC
- Comment programmer Arduino Bootloader a téléchargé Atmega 328 IC sur la maquette.
Nous allons maintenant expliquer chaque partie une par une.
Partie 1: Construire le circuit Arduino sur Breadboard
Étape 1: - Connectez la partie d'alimentation comme indiqué dans le schéma de circuit et testez-la en utilisant une alimentation externe au LM7805. Cela ressemblera à ceci.
Étape 2: - Maintenant, connectez la partie microcontrôleur comme indiqué sur le schéma de circuit. Faites les connexions avec soin.
Étape 3: - Maintenant, connectez l'alimentation et la partie microcontrôleur à l'aide de cavaliers. Votre circuit final ressemblera à quelque chose comme ça.
Donc, c'est notre Arduino sur la maquette. Vous pouvez implémenter le même circuit sur PCB en utilisant des outils simples comme EasyEDA, etc. Maintenant, nous devons télécharger le bootloader sur le nouveau Atmega 328 IC afin de pouvoir commencer à programmer l'IC.
Partie 2: Graver le chargeur de démarrage dans Atmega328 IC
Qu'est-ce que le chargeur de démarrage et pourquoi nous en avons besoin?
Bootloader est un petit morceau de code exécutable qui est stocké en permanence dans la mémoire du microcontrôleur. Cela occupe moins de 1 Ko de mémoire. Bootloader permet à l'IC d'accepter le code de l'ordinateur et de le placer dans la mémoire du microcontrôleur.
Traditionnellement, tous les microcontrôleurs d'Atmel sont programmés à l'aide de programmeurs qui ont des connexions sophistiquées. Les bootloaders réduisent la complexité et nous permettent de programmer facilement et efficacement le microcontrôleur. Cela signifie que vous pouvez le programmer simplement en utilisant un câble USB.
Lorsque vous achetez un nouvel Atmega 328 sur le marché, il ne contient pas de chargeur de démarrage. Donc, pour programmer votre Atmega328 à l'aide de l'IDE Arduino, vous devez d'abord télécharger le chargeur de démarrage.
Pour télécharger le Bootloader, nous avons deux méthodes:
- Utilisation du programmeur USBasp
- Utilisation de la carte Arduino UNO
La deuxième méthode est plus facile que la première. Parce qu'il nécessite moins de connexions et que la dernière version d'Arduino IDE ne prend pas en charge les programmeurs USBasp sophistiqués.
Donc, dans ce tutoriel, nous téléchargerons le chargeur de démarrage à l'aide de la carte Arduino Uno.
Téléchargez le chargeur de démarrage Arduino dans la puce Atmega328
Étape 1: - Ouvrez l'IDE Arduino. Allez dans Fichier -> Exemples -> ArduinoISP . Alors choisissez ArduinoISP. Comme indiqué ci-dessous.
Étape 2: - Maintenant, vous devez télécharger ce code sur votre carte Arduino. Choisissez le port et la carte com dans le menu des outils et appuyez sur le bouton de téléchargement.
Étape 3: - Après le `` téléchargement terminé '' , déconnectez la carte Arduino de l'ordinateur et effectuez les connexions de la carte Arduino avec Atmega 328 comme indiqué dans le schéma ci-dessous.
Étape 4: - Maintenant, connectez la carte Arduino à l'ordinateur. Ouvrez l'IDE Arduino.
Allez dans Outils, choisissez la carte comme Arduino / Genuine Uno, choisissez le bon port pour votre carte. Choisissez Programmer comme «Arduino comme FAI». Ne le confondez pas avec ArduinoISP. Les deux sont différents.
Étape 5: - Maintenant, allez à nouveau dans Outils et cliquez sur Graver le chargeur de démarrage juste en dessous de l'option Programmeur. Après quelques secondes, le chargeur de démarrage est téléchargé avec succès. S'il y a une erreur lors du téléchargement, vérifiez les connexions.
Consultez la vidéo ci-dessous pour comprendre les étapes expliquées ci-dessus pour télécharger Bootloader dans Atmega 328 IC.
Votre maquette Arduino est prête à fonctionner comme une véritable carte Arduino. Maintenant, la question se pose de savoir comment programmer Atmega 328 IC ? Nous en discuterons dans notre prochaine section.
Partie 3: Comment programmer Arduino Bootloader a téléchargé Atmega 328
La puce Arduino Atmega328 autonome peut être programmée de nombreuses manières.
- Utilisation d'une carte Arduino vierge, c'est-à-dire une carte Arduino sans Atmega 328 IC.
- Utilisation du module de conversion USB vers série TTL (module FTDI).
- Utilisation du programmeur USBasp (implique de nombreuses connexions).
Ici, nous allons le programmer en utilisant deux méthodes: le convertisseur USB vers série et la carte Arduino.
Programmation de la puce Atmega328 à l'aide de la carte Arduino
Étape 1: - Prenez une carte Arduino sans puce Atmega328. Effectuez les connexions de la carte Arduino avec notre maquette Arduino comme indiqué sur ce schéma.
Étape 2: - Connectez la carte Arduino à l'ordinateur et ouvrez l'IDE Arduino. Choisissez Arduino Uno dans le menu Board dans Tools , Programmer as USBasp et correct port com de la carte.
Étape 3: - Nous allons commencer par télécharger le programme Blink. Alors choisissez le programme blink dans Exemples et appuyez sur le bouton Télécharger.
Maintenant, vous pouvez voir que la LED sur la maquette commence à clignoter.
Programmation de la puce Arduino Atmega328 à l'aide d'un convertisseur USB vers série
Étape 1: - Si vous n'avez pas de carte Arduino. C'est la meilleure méthode pour programmer votre maquette Arduino .
Faites les connexions comme:
Broche RXD de FTDI -> Broche Tx d'Atmega328 (broche 3)
Broche TXD de FTDI -> Broche Rx d'Atmega328 (broche 2)
GND -> GND (broche 8)
5v -> Vcc (broche 7)
Certains modules FTDI ont une broche de réinitialisation également connue sous le nom de broche DTR, qui doit être connectée à la broche de réinitialisation d'Atmega328 (broche 1). S'il n'y a pas de broche de réinitialisation dans le module, ne vous inquiétez pas, je vous donnerai la solution lorsque nous programmerons la puce.
Étape 2: - Maintenant, connectez le FTDI à l'ordinateur et ouvrez le Gestionnaire de périphériques dans le panneau de configuration. Vous verrez la section Port, développez-la. S'il y a une marque jaune devant le pilote, vous devez mettre à jour votre pilote de module.
S'il n'y a pas de marque, notez le numéro de port com et ouvrez Arduino IDE. Allez dans Outils -> Ports -> Sélectionnez le com que vous avez noté.
Étape 3: - Maintenant, nous allons télécharger le programme blink sur notre Breadboard Arduino . Allez dans Fichier -> Exemples -> Bases -> Clignoter . Choisissez Arduino Uno dans le menu Carte dans les outils, le programmeur comme USBasp et le port com correct de la carte.
Ensuite, appuyez sur le bouton de téléchargement.
Remarque: Si votre module FTDI n'a pas de broche DTR, appuyez sur le bouton Réinitialiser sur la planche à pain et appuyez sur le bouton de téléchargement. Maintenez-le enfoncé s'il indique Compilation d'esquisse… Relâchez le bouton dès qu'il indique Téléchargement…
Maintenant, le programme sera téléchargé avec succès dans la puce Arduino Bootloader Atmega328.
Vous trouverez ci-dessous la vidéo pour programmer Atmega 328 IC sans utiliser la carte Arduino:
Nous avons fait avec notre circuit Arduino Breadboard DIY. Vous pouvez concevoir ce circuit sur PCB pour le rendre plus compact.