Table des matières:

Compagnon Atmega328p : 6 étapes (avec photos)
Compagnon Atmega328p : 6 étapes (avec photos)

Vidéo: Compagnon Atmega328p : 6 étapes (avec photos)

Vidéo: Compagnon Atmega328p : 6 étapes (avec photos)
Vidéo: ✅ Многопротокольный модуль STM32 4 в 1 iRangeX IRX4 для радиопередатчика FrSky Taranis OpenTX QX7 X9D 2024, Juillet
Anonim
Compagnon Atmega328p
Compagnon Atmega328p

ATMEGA328P Companion: le module chargeur de démarrage et programmeur

Si vous êtes comme moi, vous êtes accro aux projets et à Arduino. Cependant, si vous avez réalisé un certain nombre de projets avec un Arduino comme cerveau, vous avez probablement commencé à en avoir marre de regarder la carte Arduino dans son ensemble, encombrant votre projet et ayant globalement une mauvaise apparence. En tant que tel, j'ai décidé que je voulais passer des cartes Arduino à l'utilisation uniquement du circuit intégré.

Entrez dans l'atmega328p.

L'atmega328p est probablement le circuit intégré compatible Arduino le plus prolifique du marché. Ce n'est en aucun cas le moins cher ou le plus puissant, cependant, en tenant compte de ces deux éléments, c'est à mon avis la meilleure performance par dollar. Alors, êtes-vous prêt à commencer à donner à vos projets une apparence beaucoup plus professionnelle et moins comme un conglomérat de modules prêts à l'emploi ? Si c'est le cas, lisez cette instructable et vous obtiendrez les informations nécessaires pour créer votre propre module qui vous permettra de flasher un chargeur de démarrage sur votre atmega328p cible, de télécharger le croquis de clignotement pour vous assurer que les choses fonctionnent et enfin de télécharger vos propres croquis pour vos projets individuels.

Étape 1: nomenclature et outils

Tout d'abord, cette instructable ne va pas être une étape par étape comment construire un manuel, mais à la place, je suppose que vous savez lire un schéma et pouvez le traduire en un tableau. Dans cet esprit, voici le matériel et les outils nécessaires:

Matériaux:

  • 1x protoboard ou PCB 40x60mm
  • 1x connecteur mâle 6 broches (j'ai utilisé des mâles à angle droit)
  • 2 connecteurs femelles 14 broches
  • 1x connecteur femelle 6 broches
  • 1x connecteur femelle 2 broches
  • 2x condensateur 22pF (22)
  • 1x condensateur 0.1uF (104)
  • 1x résistance 10kohm
  • 2x résistance 330ohm
  • 1x LED (n'importe quelle couleur pour l'indicateur d'alimentation - 3 mm pour la conception de PCB)
  • 1x LED (n'importe quelle couleur pour la broche numérique 13 pour le croquis clignotant - 3 mm pour la conception de circuits imprimés)
  • 1x cristal 16MHz
  • 1x interrupteur à glissière
  • 1x bouton poussoir momentané

Outils:

  • Arduino Uno
  • Fer à souder
  • 6x cavaliers M-M
  • programmeur FTDI
  • Câble USB qui correspond à votre programmeur FTDI
  • IDE Arduino

Étape 2: Schéma/Mise en page

Schéma/Mise en page
Schéma/Mise en page
Schéma/Mise en page
Schéma/Mise en page

Les fichiers eagle que j'ai utilisés sont joints à cette étape. Vous êtes libre de les modifier et de les changer comme bon vous semble. J'ai cependant conçu la carte de sorte que toutes les traces soient sur la couche inférieure afin qu'elle soit facile à fabriquer sur une usine de PCB (si vous en avez accès à une) avec une carte à une face. Il est également en bas pour faciliter la soudure des composants.

Si vous voulez le PCB, cependant, exécutez simplement le CAM pour obtenir les fichiers gerber nécessaires pour votre fabricant préféré. J'aime OSH Park parce que vous leur donnez simplement le fichier de la carte et ils exécutent les CAM nécessaires pour obtenir les fichiers dont ils ont besoin.

Étape 3: Souder

Soudure
Soudure
Soudure
Soudure

Il y a donc trois façons de faire cette planche:

  • Remplir un PCB
  • Remplissage d'une planche fraisée
  • Remplir un protoboard

Le remplissage du PCB est assez simple et ne devrait pas vous poser de problème car tout est étiqueté.

Remplir une carte fraisée ne devrait pas non plus être trop difficile, car elle est modélisée exactement de la même manière que le PCB, sauf que vous n'avez pas les marquages, alors suivez le fichier de carte dans Eagle pour vous assurer que vous mettez les choses au bon endroit (notamment la polarité des LED).

Enfin, le remplissage d'un protoboard est le plus intensif de réflexion, cependant, ce n'est pas très difficile. J'ai quelques photos sur cette étape montrant ma version de protoboard et comment j'adapte tout. Notez que le LM7805, les deux condensateurs 4.7uF et les bornes à vis ne seront pas sur votre carte. Je jouais avec l'idée que cela ait la capacité d'être alimenté par l'extérieur, mais une fois que j'ai commencé à y penser, j'ai décidé que c'était en fin de compte un gaspillage d'espace sur la carte.

Étape 4: démarrage

Chargement de démarrage
Chargement de démarrage

Configuration de l'Arduino de démarrage:

Voici donc où vous allez avoir besoin de votre autre Arduino. Allez d'abord ici et téléchargez les fichiers de ce type. À ce stade, les fichiers ont quelques années, mais ils fonctionnent toujours très bien. Une fois que vous les avez téléchargés, ouvrez optiLoader.ino et votre IDE Arduino devrait vous inviter à le mettre dans un dossier. Faites-le, puis placez le fichier optiLoader.h dans le dossier avec le.ino. Vous êtes maintenant prêt à télécharger ce croquis sur votre Arduino de démarrage. J'ai utilisé un Arduino Uno, donc je sais que cela fonctionne avec cela, mais je suis sûr que cela fonctionnera également avec d'autres cartes.

Une fois que vous avez téléchargé optiLoader.ino sur votre Arduino, tout est configuré pour démarrer de nombreuses puces Arduino différentes. Je ne l'ai fait qu'avec l'atmega328p, cependant, le code est configuré pour détecter le MCU cible et flasher le bon chargeur de démarrage, ce qui est plutôt sympa. Alors maintenant, chaque fois que vous connectez cet Arduino à la carte Atmega Companion avec une puce installée et que vous l'allumez, il détectera automatiquement que la cible est un atmega328p et flashera automatiquement le chargeur de démarrage approprié. Pas de saut de réinitialisation, pas de trucs bizarres; il suffit de brancher et de jouer.

Câblage du chargeur de démarrage à la carte compagnon:

[Bootloader Arduino] [Atmega328p Companion Board]

  • D10 Réinitialiser / broche 1
  • D11 MOSI / broche 17
  • D12 MISO / broche 18
  • D13 SCK / broche 19
  • 5V Vcc / broche 20 ou 21
  • GND Gnd / broche 22

Les broches font référence aux pattes du circuit intégré lui-même. Si cela prête à confusion, regardez l'image de la carte de l'étape de schéma/mise en page car les broches de la carte d'accompagnement sont étiquetées.

Flasher le Bootloader:

Maintenant que vous avez la configuration Bootloader Arduino avec le croquis optiLoader.ino et qu'il est également désormais câblé à votre carte compagnon, assurez-vous que le commutateur de la carte compagnon est réglé sur "bootload" au lieu de "upload", puis branchez votre Arduino à un ordinateur. Vous devriez voir les voyants de votre Arduino et de votre carte compagnon clignoter plusieurs fois. Après quelques secondes, les deux devraient s'éteindre et ne plus clignoter. Cela signifie probablement qu'il a flashé avec succès votre circuit intégré atmega328p avec le chargeur de démarrage. Pour vous assurer que tout s'est bien passé, branchez-le sur votre ordinateur et ouvrez l'IDE Arduino puis le moniteur série. Modifiez le débit en bauds à 19200. Ensuite, s'il ne redémarre pas automatiquement, appuyez sur le bouton de réinitialisation de votre Arduino. Vous devriez voir un tas de texte décrivant ce que fait le script. À la fin, il ne devrait avoir aucun message d'erreur et devrait vous informer que le processus est terminé.

Si vous obtenez une erreur, vérifiez votre commutateur et assurez-vous que vous êtes sur "bootload". Si vous obtenez toujours des erreurs à ce stade, vérifiez tout votre câblage et assurez-vous qu'il est correct.

Étape 5: Téléchargement

Téléchargement
Téléchargement

C'est l'étape facile.

Déconnectez tous les fils de l'étape précédente et basculez le commutateur de "bootload" à "upload". Branchez votre module FTDI. J'aime l'Adafruit CP2104 et le SparkFun CH340G principalement parce qu'ils sont relativement bon marché et que le brochage correspond aux broches FTDI qui sortent de la carte associée.

Une fois que vous avez branché votre FTDI sur votre carte compagnon, allez-y et branchez-le sur votre ordinateur. À partir de là, téléchargez un exemple d'esquisse de clignotement pour vous assurer que le chargeur de démarrage a été correctement flashé. Sélectionnez Arduino/Genuino Uno dans le menu des cartes. Une fois le croquis de clignotement téléchargé, vous devriez voir la LED de clignotement clignoter, comme prévu. Si cela fonctionne, vous êtes prêt à télécharger vos propres croquis personnalisés sur le circuit intégré, comme vous le feriez avec n'importe quel autre Arduino.

Étape 6: Travaux futurs

À l'avenir, je prévois d'en faire un bouclier Arduino Uno. Cela ne devrait pas prendre longtemps, et si les gens le souhaitent, je peux également télécharger les fichiers Eagle pour cela ici. Cela simplifierait l'étape de démarrage, car vous n'auriez pas à vous soucier de le câblage incorrect. Je suis également ouvert à d'autres suggestions d'amélioration, cependant, je ne pense pas que j'en ferai beaucoup plus avec cela, car c'était juste une étape nécessaire dans la préparation de mes futurs projets.

Si vous voulez voir plus de mes futurs projets, faites-le moi savoir, et j'essaierai de tenir la communauté au courant.

Conseillé: