J'aimerais commencer le développement de certains projets Arduino de base, mais je ne possède pas encore de carte Arduino. Est-il possible d'écrire mon code et de l'émuler / de le tester à l'aide d'un ordinateur de bureau afin qu'après mon tableau, je n'ai plus qu'à télécharger et exécuter mon projet dessus?
204
Réponses:
Il existe toute une série de simulateurs Arduino, dont beaucoup sont gratuits et certains produits payants.
Si vous effectuez une recherche, de nombreux autres simulateurs Arduino sont disponibles. De nouveaux simulateurs sont annoncés, voire cofinancés, tout le temps.
la source
J'aime utiliser circuits.io aka TinkerCAD pour cela.
Il est basé sur le cloud et présente quelques fonctionnalités intéressantes, notamment la conception de circuits imprimés et la collaboration.
IMO, la simulation et les capacités Arduino sont impressionnantes et intuitives.
la source
Il existe de nombreuses options dans le monde des simulateurs électroniques, mais circuits.io, alias TinkerCAD, est probablement le plus polyvalent du marché.
Ceci est un exemple de circuit comportant une télécommande IR et un écran LCD.
Avertissement: Nous sommes les fabricants de 123D Circuits
la source
Sachez qu'aucun simulateur ne reproduira des situations réelles. Le forum Arduino a publié de nombreux articles sur les problèmes de code ou d’électronique, qui se révèlent être quelque chose de subtil, tels que:
De par leur nature, les simulateurs ne peuvent pas reproduire tout cela. Même s’ils le pouvaient, envisageriez-vous d’activer l’option «insérer du bruit aléatoire provenant des moteurs»?
Pour vous préparer à l’arrivée du tableau, téléchargez l’EDI et lancez la programmation. Vous pouvez obtenir des bibliothèques installées, écrire du code sans erreurs de syntaxe, les organiser parfaitement et être globalement prêtes pour le grand jour lorsque le matériel est entre vos mains.
Amusez-vous et profitez de l'expérience avec votre Arduino!
la source
Vous pouvez utiliser Yenka (gratuit pour un usage domestique) pour simuler des cartes Arduino, PIX, PIXACE et autres avec des E / S numériques, analogiques et série. Il fournit de nombreux composants et exemples de projets.
Capture d'écran:
la source
Oui, vous pouvez essayer d’utiliser Proteus ISIS pour simuler votre code ...
Pour une émulation complète de Arduino, il existe un programme de shareware appelé VBB (Virtual BreadBoard) , je l’ai essayé aussi et c’était bien.
Edit: Vous pouvez consulter mon tutoriel détaillé ici sur la façon de simuler sur Proteus ISIS
la source
Je crois que ce site Web contient une liste d'émulateurs et de simulateurs ainsi que leur prix et leur disponibilité.
Mise à jour:
Comme certains utilisateurs ont mentionné la présence de liens cassés sur ce site Web, voici une sélection d'émulateurs que j'ai trouvés. Notez que certaines descriptions peuvent avoir été extraites du lien mentionné:
Emulino : est un logiciel Linux open source en développement précoce qui émule des MCU spécifiques à Arduino.
Emulare : est un émulateur matériel à usage général. Son objectif est de fournir une interface centrale permettant de créer des simulations électroniques pour le développement de logiciels embarqués. Emulare se concentre actuellement sur la gamme de microcontrôleurs ATMega (Arduino UNO dispose du processeur ATMega).
SimAVR : est un nouveau simulateur AVR pour Linux ou toute plate-forme utilisant avr-gcc. Le simulateur charge directement les fichiers ELF. Il existe même un moyen de spécifier des paramètres de simulation directement dans le code émulé à l'aide d'une section .elf. Il prend en charge l’émulation de nombreux processeurs ATMega et mentionne qu’il est facile d’en ajouter de nouveaux.
Amtel Studio : Cela ne semble pas mentionner le terme émulation, mais c'est un IDE sophistiqué pour déboguer votre code pour de nombreuses plateformes spécialement Arduino. Atmel Studio 7 permet d'importer en un clic des projets créés dans l'environnement de développement Arduino. Votre esquisse, y compris les bibliothèques auxquelles elle fait référence, sera importée dans Studio 7 en tant que projet C ++. Une fois importé, vous pouvez exploiter toutes les fonctionnalités de Studio 7 pour affiner et déboguer votre conception. Atmel Studio 7 prend entièrement en charge le puissant débogueur intégré sur la carte Arduino Zero. Pour les autres cartes Arduino, des adaptateurs de blindage exposant les connecteurs de débogage sont disponibles, ou passez à l'une des nombreuses cartes Xplained-Mini / PRO disponibles pour tirer pleinement parti de l'écosystème Atmel HW.
Vous pouvez toujours utiliser des simulateurs tels que EasyEDA pour tester votre code et, dans la plupart des cas, l'exécuter sur l'appareil. Notez toutefois que, compte tenu de la nature des composants électroniques, vous devrez peut-être utiliser des résistances externes, des condensateurs, etc. pour obtenir les résultats escomptés.
la source
Virtualbreadboard a une nouvelle édition VBB4Arduino 'Two Arduino' qui comprend à la fois un émulateur JVM Arduino ET un simulateur de jeu d'instructions AVR avec des exemples qui couvrent la quasi-totalité des exemples de distribution Arduino et un ensemble de périphériques - écrans LCD, WS2812 Neo LEDS, moteurs, serveurs , Analyseur logique et plus.
http://www.virtualbreadboard.com
Disclaimer: Je suis l'auteur de Virtual Breadboard
la source
Essayez Simulator pour Arduino - c’est le meilleur, mais nous sommes biaisés car nous faisons partie de l’équipe de développement. Tout le monde ne veut pas payer 19,99 $, bien que près de 5 000 utilisateurs d’Arduino en aient eu ces dernières années. Il existe une version gratuite de Simulator for Arduino qui dure 45 jours ou 100 charges d’esquisse et 200 lignes maximum. Essayez ceci et achetez ensuite si vous pouvez vous le permettre et / ou si cela semble en valoir la peine.
S'il y a quelque chose qui ne va pas ou qui pourrait être amélioré, dites-le-nous - tout le monde le sait et le fait, c'est pourquoi Simulator for Arduino a été construit à 99% sur la base d'idées d'utilisateurs et de rapports de bugs.
En outre, Proteus est le seul autre programme que nous avons essayé et dont la qualité est proche. Il s’agit d’un studio de conception de circuits imprimés complet qui semble très coûteux - c’est-à-dire bien plus que 20 $. Et nous prévoyons d'ignorer la demande récente d'un utilisateur d'augmenter le prix à 200 $.
la source
Vous pouvez par exemple utiliser mon simulateur. Il est particulièrement adapté aux applications de type API, où le multitâche est obtenu par une évaluation cyclique des objets de type circuit interconnectés: minuteries, marqueurs, verrous, oneshots et registres. Vous pouvez également l'utiliser pour simuler votre système contrôlé, comme le montrent les exemples du téléchargement. Il a des capacités de visualisation modestes, peut dessiner des tableaux de bord, et vous permet d'accéder à toutes les variables et de les modifier en temps réel pendant une simulation en cours. Aussi, vous pouvez geler le temps. Lorsque vous êtes satisfait du comportement de votre contrôle, il génère le code C à télécharger sur un Arduino réel.
https://pypi.python.org/pypi/SimPyLC
la source
Si vous voulez parler de "tests unitaires" avec un ordinateur de bureau, je peux vous proposer une bibliothèque que j'ai écrite et qui s'appelle arduino_ci .
Il n'offre pas d'émulation. Vous exprimeriez vos tests en code. Par exemple, voici un test extrait de la documentation de référence qui valide les données écrites sur un port:
En pratique, vous n'appelleriez probablement pas les
digitalWrite
fonctions directement. Vous appelleriez une fonction dans votre bibliothèque, puis vérifiez que "l'état du monde" (représenté ici par laGODMODE
construction) correspond à ce que vous attendiez de votre bibliothèque.la source
Oui, vous le pouvez et assez facilement. Il existe une merveilleuse simulation en ligne (totalement gratuite) appelée TinkerCAD . Il offre une excellente simulation de carte d’appareil, avec des composants tels que des transistors, des LED, des circuits intégrés et Arduino. Vous pouvez programmer l'Arduino et tout exécuter dans une simulation en direct comprenant des entrées interactives (boutons-poussoirs, commutateurs DIP, etc.).
[Éditer: le texte suivant fait référence à une fonctionnalité qui a été déplacée vers Circuits.io , à savoir Eagle PCB ]
Ce n'est pas tout. Il comprend également, dans un onglet séparé, des schémas pour votre circuit et un autre onglet pour la conception de circuits imprimés de votre circuit de carte mère! Ou bien, vous pouvez créer vos schémas à partir de zéro et votre circuit imprimé à partir de là.
Vous pouvez avoir vos conceptions de circuit faites et vous pouvez les acheter. Vous pouvez faire tout cela dans circuits.io, et vous ne risquez pas de gâcher votre Arduino. Il comporte également des indicateurs d’avertissement dans la simulation (par exemple, si vous n’avez pas utilisé suffisamment de résistance sur une LED ou sur un CI).
la source