Table des matières:

Carte Arduino fabriquée par nos soins : 8 étapes
Carte Arduino fabriquée par nos soins : 8 étapes

Vidéo: Carte Arduino fabriquée par nos soins : 8 étapes

Vidéo: Carte Arduino fabriquée par nos soins : 8 étapes
Vidéo: Les bases de l'Arduino ! 2024, Novembre
Anonim
Carte Arduino fabriquée par nos soins
Carte Arduino fabriquée par nos soins

En concevant votre propre carte Arduino, vous découvrirez de nouveaux composants et circuits électroniques, y compris des sujets avancés tels que l'alimentation, le circuit de synchronisation et l'utilisation d'ATmega IC (circuit intégré).

Il vous aidera à l'avenir à créer vos propres projets comme une station météo, des boucliers domotiques, etc.

L'avantage de l'Arduino fait maison est qu'il consomme peu d'énergie et garantit qu'un projet peut fonctionner longtemps sur batterie.

De plus, vous pouvez étendre la carte en ajoutant une extension de port numérique ou analogique ou certains modules de communication.

Fournitures

Le matériel

Pour construire un Arduino minimaliste, vous aurez besoin du matériel suivant:

1x microcontrôleur ATmega328P-PU avec chargeur de démarrage Arduino

1x 7805 régulateur de tension linéaire (sortie 5v, entrée 35v max)

1x planche à pain (j'utilise une carte à broches 830)

Divers fils de connexion

1x oscillateur à cristal 16 MHz

1x prise ic 28 broches

1x 1 F, 25 V condensateur électrolytique

1x condensateur électrolytique 100 μF, 25 V

2 condensateurs céramiques 22 pF, 50 V

2 condensateurs céramiques 100 nF, 50 V

2x résistances 330 Ohms (R1 et R2)

1x résistance 10 kOhm (R3)

2x LED au choix (LED1 et LED2)

1x bouton poussoir

2 connecteurs 6 broches et 3 connecteurs 8 broches en option

1x batterie de type PP3

1x pile 9 V type PP3

1x adaptateur de programmation FTDI

Étape 1: 7805 Régulateur de tension linéaire

Régulateur de tension linéaire 7805
Régulateur de tension linéaire 7805
Régulateur de tension linéaire 7805
Régulateur de tension linéaire 7805
Régulateur de tension linéaire 7805
Régulateur de tension linéaire 7805

Un régulateur de tension linéaire contient un circuit simple qui convertit une tension en une autre. Le régulateur 7805 peut convertir une tension entre 7 et 30 volts en une tension fixe de 5 volts, avec un courant jusqu'à 1 ampère, ce qui est parfait pour notre carte Arduino.

Nous allons commencer par créer le circuit d'alimentation qui contient un régulateur de tension 7805 sous forme TO-220 et deux condensateurs de 100 μF chacun.

Lorsque vous regardez à l'avant de la puce 7805 - la broche de gauche est pour la tension d'entrée, la broche centrale se connecte à GND et la broche de droite est la connexion de sortie 5 V. Je recommanderais de placer un dissipateur de chaleur, car lorsque le circuit consomme au maximum 1 ampère de courant, la puce 7805 sera silencieusement chaude (vous pouvez vous brûler le bout du doigt lorsque vous la touchez).

Placez un condensateur de 100 F entre l'entrée du régulateur et la masse et un condensateur de 100 F sur le rail droit entre l'alimentation et la masse. Vous devez faire attention - le condensateur électrolytique est polarisé (la bande argentée sur le condensateur signifie la jambe de terre) et doit être placé exactement selon le schéma.

Ajoutez des fils d'alimentation et de terre à l'emplacement de votre régulateur de tension, en connectant chaque rail au milieu et à la partie droite de la carte. De cette façon, nous avons une alimentation de 5 volts à partir des rails supérieur et inférieur de la planche à pain. De plus, nous inclurons une LED rouge qui s'allume lorsque l'appareil est sous tension, de cette façon, nous pouvons toujours voir quand notre carte est alimentée.

Une LED est une diode et elle ne permet au courant électrique de circuler que dans un seul sens. L'électricité doit circuler dans la jambe longue et hors de la jambe courte. La cathode de la LED a également un côté légèrement aplati, qui correspond à la branche négative courte de la LED.

Notre circuit a une alimentation de 5 volts et une LED rouge est évaluée à environ 1,5 - 2 volts. Pour réduire la tension, nous devons connecter la résistance en série avec la LED en limitant la quantité d'électricité circulant pour éviter la destruction de la LED. Une partie de la tension sera utilisée par la résistance et seule une part appropriée de celle-ci est appliquée aux bornes de la LED. Insérez la résistance entre la branche courte de la LED et la rangée contenant le fil noir sur le côté droit de la puce (GND).

Les fils rouge et noir à gauche du régulateur de tension sont l'endroit où votre alimentation sera branchée. Le fil rouge est pour l'ALIMENTATION et le fil noir est pour la terre (GND).

REMARQUE: vous ne pouvez connecter qu'une alimentation électrique comprise entre 7 et 16 V. Plus bas et vous n'obtiendrez pas 5V de votre régulateur, et une tension plus élevée que 17 V endommagera votre puce. Une batterie 9V, une alimentation 9V DC ou une alimentation 12V DC convient.

Et pour certains circuits plus avancés, vous pouvez placer un régulateur de tension avec une tension réglable. De cette façon, vous pouvez ajouter des capteurs 3,3 V à la carte ou alimenter un moteur 9 V DC.

En savoir plus sur les régulateurs de tension linéaires -

www.instructables.com/id/Introduction-to-Linear-Voltage-Regulators

Étape 2: Microcontrôleur ATmega328P-PU

Microcontrôleur ATmega328P-PU
Microcontrôleur ATmega328P-PU
Microcontrôleur ATmega328P-PU
Microcontrôleur ATmega328P-PU
Microcontrôleur ATmega328P-PU
Microcontrôleur ATmega328P-PU

Pour construire un Arduino sur la maquette, vous avez besoin d'un microcontrôleur ATmega328P-PU qui est le cerveau de notre carte Arduino fabriquée par nos soins. Placez-le comme indiqué sur les schémas et soyez prudent - les pattes peuvent se casser si vous les forcez, ou vous pouvez utiliser une prise IC à 28 broches. IC doit être placé avec une coupe en forme de lune orientée vers la gauche de la planche à pain (les broches sont numérotées de 1 à 28 dans le sens inverse des aiguilles d'une montre).

REMARQUE: tous les circuits intégrés ATmega ne contiennent pas le chargeur de démarrage Arduino (le logiciel qui lui permet d'interpréter les croquis écrits pour un Arduino). Lorsque vous recherchez un microcontrôleur pour votre Arduino fabriqué par vous-même, assurez-vous d'en sélectionner un qui inclut déjà le chargeur de démarrage.

Voici un peu de théorie des microcontrôleurs

Un microcontrôleur est un petit ordinateur avec un processeur qui exécute des instructions. Il dispose de différents types de mémoire pour contenir les données et les instructions de notre programme (sketch); L'ATmega328P-PU dispose de trois types de mémoire: 32 ko de mémoire flash ISP (programmation dans le système) où les croquis sont stockés, 1 ko d'EEPROM (mémoire en lecture seule programmable effaçable électriquement) pour le stockage de données à long terme et 2 ko de SRAM (mémoire statique à accès aléatoire) pour stocker des variables lorsqu'une esquisse est en cours d'exécution.

REMARQUE: Il est important de savoir que les données de la mémoire flash et de l'EEPROM sont conservées lorsque l'alimentation du microcontrôleur est coupée.

Le microcontrôleur dispose de 13 lignes d'entrée/sortie numériques à usage général (GPIO) et de six lignes GPIO 10 bits (valeurs comprises entre 0 et 1023) analogiques au convertisseur numérique (ADC) pour convertir la tension sur une broche en une valeur numérique. Il y a trois temporisateurs avec deux temporisateurs 8 bits avec des valeurs comprises entre 0 et 255, et un temporisateur 16 bits avec des valeurs comprises entre 0 et 65535, qui sont utilisés par la fonction delay() dans un sketch ou par modulation de largeur d'impulsion (PWM).

Il existe cinq modes d'économie d'énergie sélectionnables par logiciel et le microcontrôleur fonctionne entre 1,8 V et 5,5 V. Vous pouvez utiliser l'image comme référence pour la disposition des broches de l'ATmega328P-PU.

Il existe trois groupes de ports: PB, PC et PD avec respectivement 8, 7 et 8 broches, plus deux broches de masse (GND), une broche 5 V (VCC) avec tension d'alimentation (AVCC) et une tension de référence analogique (AREF) broches pour le convertisseur analogique-numérique (ADC).

Étape 3: Interconnexion ATmega328P-PU

Interconnexion ATmega328P-PU
Interconnexion ATmega328P-PU

Après avoir placé l'IC, connectez les broches 7, 20 et 21 de l'ATmega au rail d'alimentation positif sur la planche à pain, et les broches 8 et 23 aux rails d'alimentation négatifs, utilisez des cavaliers pour connecter les rails d'alimentation positifs et GND de chaque côté du carte, comme le montre la figure.

Broche 7 - Vcc - Tension d'alimentation numérique

Broche 8 - GND

Broche 22 - GND

Broche 21 - AREF - Broche de référence analogique pour ADC

Pin 20 - AVcc - Tension d'alimentation pour le convertisseur ADC. Doit être connecté à l'alimentation si l'ADC n'est pas utilisé comme dans notre exemple. Si vous souhaitez l'utiliser à l'avenir, il doit être alimenté via un filtre passe-bas (pour réduire le bruit).

Après cela, placez une broche d'en-tête à quatorze voies - elle sera similaire aux GPIO Arduino.

Étape 4: bouton de réinitialisation

Bouton de réinitialisation
Bouton de réinitialisation
Bouton de réinitialisation
Bouton de réinitialisation

Ajoutez le petit interrupteur tactile pour pouvoir réinitialiser l'Arduino et préparer la puce pour télécharger un nouveau programme. Une pression momentanée rapide sur ce commutateur réinitialisera la puce.

Nous allons insérer le bouton de réinitialisation dans notre circuit comme indiqué sur la figure, lorsque nous appuierons dessus, le circuit électrique sera raccourci au GND en contournant une résistance de 1kOhm et en connectant l'ATmega Pin 1 au GND. Ensuite, ajoutez un fil de la jambe inférieure gauche du commutateur à la broche RESET de la puce ATmega et un fil de la jambe supérieure gauche du commutateur à la terre.

De plus, ajoutez une résistance de rappel de 10 k Ohm à +5 V à partir de la broche RESET afin d'empêcher la puce de se réinitialiser pendant le fonctionnement normal. Cette résistance sera connectée à l'alimentation de 5 volts, "tirant" la broche 1 à 5 volts. Et lorsque vous connectez la broche 1 à 0 V sans résistance, la puce redémarre. Sur le microcontrôleur de redémarrage, recherchez un nouveau programme en cours de téléchargement (à la mise sous tension, si rien de nouveau n'est envoyé, il exécute le dernier programme envoyé).

La résistance a une bande de quatre couleurs. La lecture Brown=1, Black=0, Orange=3 nous donne le nombre 103. La résistance en Ohms commence par '10' avec 3 zéros après - 10 000 Ohms ou 10 kilo Ohms, et la bande dorée est la tolérance (5 %).

Pour mettre à niveau notre circuit, nous pouvons placer un condensateur de «découplage». Placer un condensateur céramique de 100 nF (nano Farad). Il s'agit d'un petit disque à deux fils avec « 104 marquage » et ce type de condensateur n'est pas polarisé et peut être placé dans n'importe quelle orientation.

Ce condensateur de « découplage » atténue les pointes électriques, de sorte que le signal de redémarrage envoyé à la broche 1 est détecté de manière fiable. Les chiffres 104 indiquent sa capacité en pico Farad en notation scientifique. Le dernier chiffre '4' nous indique le nombre de zéros à ajouter. La capacité commence à « 10 », puis continue avec 4 zéros supplémentaires - 100 000 pico Farads, et puisque 1000 pico Farads correspondent à 1 nano Farads, il y a 100 nano Farads (104).

Insérez le condensateur entre la jambe supérieure gauche de la puce (broche 1, dans le sens inverse des aiguilles d'une montre à partir de la forme en demi-lune)

Étape 5: Oscillateur à cristal

Oscillateur à cristal
Oscillateur à cristal
Oscillateur à cristal
Oscillateur à cristal

Maintenant, nous allons faire l'horloge pour l'IC. Il s'agit d'un quartz 16 Mhz et de deux condensateurs céramique 22pF (piko Farad) chacun. L'oscillateur à cristal crée un signal électrique avec une fréquence très précise. Dans ce cas, la fréquence est de 16 MHz, ce qui signifie que le microcontrôleur peut exécuter 16 millions d'instructions de processeur par seconde.

Le cristal de 16 MHz (figure) permet à l'Arduino de calculer le temps et les condensateurs servent à lisser la tension d'alimentation.

Les pieds en cristal de quartz sont tous les deux identiques - vous ne pouvez pas les câbler à l'envers. Connectez une jambe du cristal à la broche 9 de la puce ATmega et l'autre jambe à la broche 10. Connectez les jambes de l'un des condensateurs de disque de 22 pF à la broche 9 et GND, et un autre condensateur de disque à la broche 10 et GND, comme montré dans la figure.

Remarque: les condensateurs à disque ne sont pas polarisés et peuvent être insérés de n'importe quelle manière.

Il convient de mentionner que les longueurs de fil entre les condensateurs de 22pF doivent être de longueur égale et doivent être aussi proches que possible du contrôleur pour éviter les interactions avec d'autres parties des circuits.

Étape 6: Ajout d'une LED à la broche 13

Ajout de LED à la broche 13
Ajout de LED à la broche 13
Ajout de LED à la broche 13
Ajout de LED à la broche 13
Ajout de LED à la broche 13
Ajout de LED à la broche 13

Nous allons maintenant ajouter la LED verte (broche numérique 13 sur Arduino).

Insérez une longue jambe de LED dans la rangée sous le fil rouge (sur le côté droit de la puce - alimentation, ou 5 volts) et la jambe courte dans la première rangée vide sous le microcontrôleur.

Cette résistance de 330 Ohm est connectée en série avec la LED, limitant la quantité d'électricité circulant pour éviter la destruction des LED.

Insérez la résistance entre la branche courte de la LED et la rangée contenant le fil noir sur le côté droit de la puce (GND ou 0Volts)

Toutes les broches analogiques, numériques et autres disponibles sur la carte Arduino normale sont également disponibles dans notre version de maquette. Vous pouvez utiliser le schéma ATmega et le tableau des broches comme référence.

Étape 7: connecteur USB vers série

Connecteur USB vers série
Connecteur USB vers série
Connecteur USB vers série
Connecteur USB vers série
Connecteur USB vers série
Connecteur USB vers série
Connecteur USB vers série
Connecteur USB vers série

Le microcontrôleur ATmega 328P-PU offre trois modes de communication: un USART programmable en série (récepteur-émetteur universel synchrone et asynchrone), un port série SPI (Serial Peripheral Interface) et une interface série à deux fils. USART prend des octets de données et transmet les bits individuels de manière séquentielle, ce qui nécessite des lignes de communication de transmission (TX) et de réception (RX). SPI utilise quatre lignes de communication: master-out slave-in (MOSI), master-in slave-out (MISO) et horloge série (SCK) avec une ligne de sélection d'esclave (SS) séparée pour chaque appareil. Le bus de communication I2C Two Wire Interface (TWI) utilise deux lignes de signaux: les données série (SDA) et l'horloge série (SCL).

Pour connecter notre carte au PC avec Arduino IDE pour télécharger un croquis, nous utiliserons une interface USB vers série UART telle que le FT232R FTDI.

Lors de l'achat d'un câble FTDI, assurez-vous qu'il s'agit du modèle 5 V, car le modèle 3,3 V ne fonctionnera pas correctement. Ce câble (illustré sur la figure) a une prise USB à une extrémité et une prise à six fils à l'autre.

Lorsque vous connectez le câble, assurez-vous que le côté de la prise avec le fil noir se connecte à la broche GND sur les broches d'en-tête de la planche à pain. Une fois le câble connecté, il alimente également le circuit, comme le ferait une carte Arduino normale.

Ensuite, nous connecterons notre FTDI à notre carte Arduino fabriquée par nos soins; pour référence, vous pouvez utiliser le tableau et le schéma.

Un condensateur électrolytique de 0,1 μF est connecté entre la broche DTR (Data Terminal Ready) de l'interface USB vers UART série et la réinitialisation du microcontrôleur, qui réinitialise le microcontrôleur pour qu'il se synchronise avec l'interface USB vers l'interface série.

REMARQUE: Oneclever partie est que la broche RX du microcontrôleur doit être connectée au TX de l'USB à l'adaptateur série et de même avec le TX d'un appareil au RX de l'autre.

La broche CTS (Clear to Send) de l'USB vers l'interface série UART n'est pas connectée au microcontrôleur.

Pour télécharger un croquis sur le microcontrôleur dans l'IDE Arduino à partir du menu Outils ➤ Port, sélectionnez le port de communication (COM) approprié et dans le menu Outils ➤ Carte, sélectionnez Arduino/Genuino Uno. L'esquisse est compilée dans l'IDE Arduino, puis chargée sur le microcontrôleur avec l'USB à l'interface série UART. Lorsque le croquis est téléchargé, les voyants vert et rouge de l'interface UART USB-série TXD et RXD clignotent.

L'interface USB vers série UART peut être retirée et une alimentation 5V connectée au microcontrôleur. Une LED et une résistance de 220 kΩ sont connectées à la broche 19 du microcontrôleur, équivalente à la broche 13 d'Arduino, pour exécuter le croquis de clignotement.

Étape 8: Téléchargement de Sketch ou Installation du Bootloader

Téléchargement de Sketch ou Installation du Bootloader
Téléchargement de Sketch ou Installation du Bootloader
Téléchargement de Sketch ou Installation du Bootloader
Téléchargement de Sketch ou Installation du Bootloader

Si vous n'avez pas de convertisseur USB vers série, vous pouvez utiliser un autre Arduino (dans mon cas, Arduino UNO) pour télécharger un croquis ou un chargeur de démarrage sur la carte fabriquée par vous-même.

Les microcontrôleurs ATmega238P-PU nécessitent un chargeur de démarrage pour télécharger et exécuter des croquis à partir de l'IDE Arduino; lorsque l'alimentation est appliquée au microcontrôleur, le chargeur de démarrage détermine si une nouvelle esquisse est en cours de téléchargement, puis charge l'esquisse dans la mémoire du microcontrôleur. Si vous avez l'ATmega328P-PU sans chargeur de démarrage, vous pouvez télécharger le chargeur de démarrage en utilisant la communication SPI entre deux cartes.

Voici comment télécharger un bootloader sur l'ATmega IC.

Commençons par configurer notre Arduino UNO en tant que FAI, cela est fait parce que vous voulez que l'Arduino UNO télécharge le croquis sur l'ATmega IC et non lui-même.

Étape 1: Configuration de notre Arduino UNO en tant que FAI

Ne connectez pas l'ATmega IC pendant que le téléchargement ci-dessous est en cours d'exécution.

  • Branchez l'arduino sur un PC
  • Ouvrez l'IDE Arduino
  • Sélectionnez la carte appropriée (Outils > Carte > Arduino UNO) et le port COM (Outils > Port > COM ?)
  • Ouvrir > Exemples > ArduinoISP
  • Télécharger le croquis

Après cela, vous pouvez connecter votre propre carte à l'Arduino UNO en suivant le circuit comme indiqué sur le schéma. À ce stade, il n'est pas nécessaire d'alimenter votre propre carte car l'Arduino fournirait la puissance nécessaire.

Étape 2: Téléchargement d'un croquis ou d'un chargeur de démarrage

Avec tout ce qui est connecté, ouvrez l'IDE à partir du dossier que vous venez de créer (la copie).

  • Sélectionnez Arduino328 dans Outils> Carte
  • Sélectionnez Arduino comme FAI dans Outils > Programmeur
  • Sélectionnez Graver le chargeur de démarrage

Après une gravure réussie, vous obtiendrez un "bootloader de gravure terminée".

Le bootloader est maintenant chargé sur le microcontrôleur, qui est prêt à recevoir un sketch après avoir changé le port COM dans le menu Tools ➤ Port.

Conseillé: