Comment créer une application permanente à partir de quelque chose de prototypé avec Arduino?

22

Une partie d'une série en trois parties sur la transition à partir de Arduino à un des composants du microcontrôleur AVR lisses et minimum d' appui ( deuxième partie , troisième partie )

J'ai construit un projet sur mon Arduino Uno pour contrôler divers aspects de mon système de brassage de bière. À ce stade, il semble faire ce que je veux, mais je voudrais réutiliser mon Uno pour un autre projet. Comment dois-je déplacer mon projet de l'Uno et de la maquette vers un PCB, une perfboard ou autre? Des bonnes solutions là-bas?

Communauté
la source
1
Hé, j'ai une série en deux parties ( arduino.stackexchange.com/q/207/6 , arduino.stackexchange.com/q/221/6 ) sur la transition de l'Arduino au développement ordinaire d'ATmega. Ce peut être une bonne idée d'ajouter cette question à la série en tant que nouvelle partie 1, car c'est l'une des étapes importantes du passage à atmega. Tu veux faire ça?
Manishearth
Sûr! Dois-je simplement modifier ma question pour la première partie et pointer vers les deuxième et troisième parties?
Je vais le faire, je vais devoir garder les autres dans le même format :)
Manishearth
... et c'est fait. Bien que chaque question ait des applications plus larges en dehors de la transition d'Arduino à la programmation de microcontrôleurs purs, le fait d'avoir une série liée donne un certain flux au processus :)
Manishearth

Réponses:

23

Voici quelques instructions. Si vous voulez simplement savoir ce qui se passe où dans votre perfboard, lisez la suite.

Voici le brochage de l'ATmega328:

entrez la description de l'image ici

Tout d'abord, vous aurez besoin d'un LM7805 ou quelque chose de similaire pour obtenir un 5V. Si vous ne savez pas comment cela fonctionne, reportez-vous à cette image .

Puissance

Maintenant, connectez l'extrémité + de votre batterie 12V à l'IN du 7805 et - au COM. Ci-après, je désignerai toute connexion de COM comme "GND" et toute connexion de OUT comme "Vcc".

Réinitialiser

Connectez Vcc aux broches 7 et 20 de l'ATmega328 et GND aux broches 8 et 22. Connectez Vcc à une résistance de ~ 10 kiloohm et connectez l'autre extrémité de celle-ci à la broche RST (broche 1). Connectez également GND à un commutateur de réinitialisation et l'autre borne du commutateur de réinitialisation à la broche 1. Lorsque le commutateur de réinitialisation est activé, l'Arduino redémarrera. Si vous ne voulez pas de commutateur de réinitialisation, connectez simplement Vcc directement à la broche 1.

entrez la description de l'image ici

L'horloge

Connectez GND aux bornes négatives de deux condensateurs 22 picofarad. Connectez un condensateur à la broche 9 et l'autre condensateur à la broche 10.

Maintenant, connectez une horloge de 16 MHz entre les broches 9 et 10:

entrez la description de l'image ici

entrez la description de l'image ici

Référence analogique

Si vous utilisez la broche AREF, connectez simplement votre AREF à la broche 21.

Reste des broches

Ceux-ci sont étiquetés dans le diagramme ci-dessus. Les broches 23-28 sont A0-A5. Les broches 2-6 sont numériques 1-4, 11-19 sont numériques 5-13. Utilisez-les normalement. Notez que la broche numérique 13 (broche 19 sur le microcontrôleur) n'aura plus de LED, mais si vous souhaitez en connecter une, connectez-la à une LED, suivie d'une résistance de 200 à 300 ohms, suivie de la masse:

entrez la description de l'image ici

Programmation

Si votre Arduino est un Arduino DIP (l'ATmega est amovible), programmez-le simplement à l'aide de l'IDE, retirez l'ATmega et placez-le dans votre circuit de perfboard (je suppose que vous utilisez un support IC). Si l'Arduino a un ATmega à montage en surface, voir Comment puis-je utiliser mon Arduino SMD pour programmer un DIP ATmega328 distinct? .

C'est ça! Maintenant, vous pouvez facilement prendre un projet Arduino sur une perfboard!

Voici le schéma final:

entrez la description de l'image ici

Manishearth
la source
9

Votre projet ressemble à ce que beaucoup de gens appellent pour un bouclier. Dans ce cas, j'achèterais une variante peu coûteuse de clone arduino et la remplacerais par l'Uno. Cela dépend vraiment des fonctionnalités dont vous avez besoin.

Il y a tellement de clones là-bas, et je crains de commencer à ressembler à un spammeur pour avoir mentionné des clones que j'ai utilisés et comme dans beaucoup de mes réponses. Mais...

Si vous avez besoin d'une surveillance série USB, Seeed Studio dispose de quelques modèles qui semblent parfaitement adéquats et d'une mini prise USB. Variant légèrement, les planches teensy sont petites et bon marché.

Si vous n'avez pas besoin de surveillance série USB, vous pouvez utiliser un clone qui n'a qu'une interface ttl / FTDI. Le digistump digispark est très petit, très bon marché. L'emsl diavolino est génial, tout comme l'appareil moderne BBB.

Si vous choisissez ce chemin et choisissez un clone qui conserve les emplacements de broches Arduino «standard», vous pouvez choisir n'importe laquelle des demi-douzaines de «protoshields». En voici un qui a l'air plutôt cool si votre circuit implique des puces:

Bouclier de prototypage Protoshield compatible Arduino ... mais bien sûr, des alternatives moins chères peuvent être trouvées. Dépend du type de commodités de circuit dont vous avez besoin pour votre conception ... rails d'alimentation et de masse, fils pour broches de puce, etc.

Steve Cooley
la source
5

Voici une idée, je suis sûr qu'il y en aura d'autres:

Vous pouvez télécharger et utiliser Express PCB pour concevoir la carte de circuit imprimé. Le logiciel est gratuit et ils fournissent un service où ils fabriqueront la carte pour vous. Pour une seule planche, ce sera cher. Alternativement, vous pouvez imprimer la conception (directement à partir de ce logiciel) sur une imprimante laser, puis vous pouvez utiliser le diagramme imprimé au laser pour graver un PCB vous-même. Voici une vidéo YouTube qui vous montre comment procéder.

Poulpe
la source
Est-il difficile de concevoir un PCB pour quelqu'un avec un niveau d'introduction à l'électronique?
taco
@taco: Pas trop difficile de concevoir un PCB de base en utilisant, par exemple, le logiciel EagleCAD (gratuit). Vous pouvez commencer avec cette série de didacticiels vidéo et progresser. Alternativement, Jeremy Blum a également quelques tutoriels sur sa page Web qui sont assez bons.
boardbite
3
@Taco Le programme le plus simple pour les débutants est fritzing.org . Vous pouvez le concevoir sur une planche à pain, puis vous pouvez simplement organiser toutes les pièces sur le PCB et il vous indiquera où vous devez ajouter des traces. Il a également de très bons graphismes, donc il est convivial. C'est même ce qu'Arduino utilise pour ses images de maquette. La meilleure partie: c'est gratuit et open source!
Anonymous Penguin
Merci @ Annonomous Person, j'ai téléchargé Fritzing. Je vais essayer.
taco