Question:
Ai-je bien compris ce qu'est Arduino?
Ben
2011-11-18 17:03:52 UTC
view on stackexchange narkive permalink

Juste avant de sortir et d'acheter un kit de démarrage Arduino, quelqu'un peut-il confirmer que je comprends ce que c'est?

Si je comprends bien, je peux utiliser un simulateur pour créer le comportement que je veux. Une fois que je suis satisfait du code, je le compile, connectez l'Arduino Uno à mon ordinateur (avec une "puce vierge attachée) et flashez la puce. Ensuite, je peux retirer la puce et la mettre sur une maquette, ou une bande Matrix comme ça et l'intégrer dans un projet.

Est-ce vrai?

ce que vous avez décrit est essentiellement un programmeur de périphérique, tel que le STK-500
Cinq réponses:
#1
+10
AndrejaKo
2011-11-18 17:10:37 UTC
view on stackexchange narkive permalink

Non, vous avez mal compris. La puce n'est pas vierge (vous n'insérez pas non plus la puce dans Arduino. Elle est livrée avec l'Arduino). Il dispose d'un bootloader spécial qui est en fait le cœur de la plate-forme Arduino et qui permet à Arduino de ne pas avoir de programmeur spécial pour programmer les puces. Cela ne fonctionnera donc pas du tout avec des puces vierges. De plus, vous êtes limité uniquement aux puces qui sont prises en charge par le chargeur de démarrage ou qui sont très similaires.

Également d'après ce que je peux voir, l'IDE Arduino n'a pas de simulateur, vous n'avez donc pas de chance sur ce point.

Le point principal d'Arduino est qu'il cache le fonctionnement physique de la puce elle-même au programmeur, ce qui facilite son utilisation pour ceux qui trouvent trop compliqué de commencer à programmer la puce directement. Il offre un langage de programmation simplifié de type C et dispose d'une grande bibliothèque de fonctions qui facilitent la connexion de divers périphériques. Le PCB lui-même est utile car il permet aux utilisateurs d'avoir une base de bonne qualité à partir de laquelle fabriquer leurs propres appareils et leur évite de créer un PCB qui pilotera eux-mêmes l'AVR ou d'utiliser un type de carte de prototypage.

En gros, ce que vous voulez, c'est l'IDE d'Atmel classique appelé AVR Studio qui a un simulateur (vous pouvez le télécharger librement et vérifier s'il répond à vos besoins). Côté matériel, vous aurez besoin soit d'un programmeur, si le simulateur de l'EDI fonctionne bien, soit d'un émulateur en circuit qui vous permettra de déboguer directement le code sur la puce. L'émulateur lui-même est assez cher, mais il existe d'autres produits qui vous permettront également de parcourir le code.

Notez qu'il est possible de créer un programmeur AVR en utilisant Arduino mais ce n'est pas un avantage majeur par rapport aux autres programmeurs disponibles sur Internet ou au programmeur officiel.

Merci pour cela. Y a-t-il une alternative qui fait ce à quoi je pense? Dites PIC ou AVR? Je veux pouvoir "écrire" ma propre puce et l'utiliser ensuite sur un circuit séparé.
@Ben J'ai déjà écrit sur les alternatives dans ma réponse. S'il ne s'affiche pas, essayez d'actualiser la page. Arduino utilise des puces AVR et vous pouvez utiliser tous les outils AVR standard avec elles. Je ne suis pas (encore) un utilisateur de PIC, donc je ne peux pas vous donner de bonnes recommandations à ce sujet, mais d'après ce que j'ai vu, l'outil PICkit 3 standard contient un ICE et semble être moins cher que l'AVR ICE mkII.
Aussi, si vous voulez une carte, vous pouvez jeter un œil par exemple à [this] (http://www.mikroe.com/eng/products/view/757/easypic-v7-development-system/) pour PIC ou [this] (http://www.mikroe.com/eng/products/view/321/easyavr6-development-system/) pour AVR. Ils fonctionnent avec des puces nues et ne nécessitent pas de chargeur de démarrage. Il existe de nombreuses autres alternatives, mais celles-ci ont été les premières à me venir à l'esprit.
@AndejaKo - Merci pour tous les conseils! J'apprécie beaucoup!
@Ben http: // icarpt.files.wordpress.com / 2010/03 / minimal_arduino.jpg c'est à quel point il est facile de retirer la puce ATMega de l'Arduino et de la placer dans votre propre circuit. En fait, le commutateur de réinitialisation et les éléments DTR ne sont même pas nécessaires.Si vous souhaitez acheter des puces ATMega168 ou ATMega328 simples moins chères en plus grande quantité auprès de Mouser ou Digikey, vous pouvez créer un USBTinyISP (http://www.adafruit.com/) products / 46) et utilisez-le pour les programmer avec un chargeur de démarrage Arduino et graver votre croquis ou même graver uniquement le croquis sans le chargeur de démarrage.
#2
+5
Majenko
2011-11-18 17:13:10 UTC
view on stackexchange narkive permalink

Pas tout à fait, non.

L'Arduino est un système complet en soi.

Bien qu'il soit possible de retirer la puce de la carte et de l'utiliser dans vos propres systèmes, ceci est rarement fait.

Avec l'Arduino, vous programmez votre "sketch" (comme ils l'appellent) dans un sous-ensemble de C ++ basé sur un système appelé "Wiring". Vous téléchargez ensuite ceci sur la carte Arduino. La carte a déjà la puce dessus, et vous la laissez là. Il y a des connexions sur la carte pour la relier à vos autres systèmes.

Vous pouvez changer votre "sketch" autant de fois que vous le souhaitez et le re-télécharger sur l'Arduino jusqu'à ce que vous ayez raison. p>

Bien qu'il existe des simulateurs, ils sont rarement utilisés car il est plus facile de simplement télécharger directement sur l'Arduino et de le faire interagir correctement avec votre matériel externe.

Utiliser l'arduino pour se cloner dans une puce nue est probablement beaucoup plus courant que de retirer les puces des cartes.
#3
+2
wesen
2011-11-19 13:58:20 UTC
view on stackexchange narkive permalink

Vous pouvez définitivement retirer la puce de l'arduino et l'utiliser sur une carte nue ou dans un autre projet. La puce de l'arduino uno et des anciennes versions de l'arduino duemilanove est un atmega328 (certaines versions ont un atmega168). Vous pouvez trouver la référence réelle de la puce sur le site Web d'atmel (impossible de publier des liens car pas assez de karma). La chose à prendre en compte est que les numéros de broches sont en fait assez différents de ceux de la carte Arduino. Voici une page avec le brochage réel, au cas où vous voudriez l'utiliser dans un autre projet ou lire des choses dans la fiche technique: http://www.arduino.cc/en/Hacking/PinMapping168 Quand vous retirez la puce, veillez à ne pas plier les pattes de la puce. J'utilise généralement un tournevis plat que j'insère sous la puce d'un côté et je remue soigneusement à mi-chemin. Ensuite, répétez de l'autre côté, et voilà, tirage net de la puce. Soyez prudent lorsque vous le rebranchez également, car parfois une jambe sort un peu de son emplacement de réception et se plie lorsque vous la repoussez.

Ce qui rend arduino "spécial" en tant que carte de développement, c'est l'environnement utilisé pour le programmer. Similaire au traitement (il utilise la même base de code), c'est une sorte de frontend simplifié au langage C ++. Le code que vous écrivez dans l'éditeur arduino reçoit des éléments ajoutés à l'avant et à l'arrière, et est compilé en utilisant avr-g ++ dans un exécutable fonctionnel. Il est également lié à ce qu'on appelle le "core", qui se trouve dans le dossier hardware / cores / arduino dans le dossier Arduino. Il initialise quelques éléments (comme les minuteries et l'interface série), et implémente les fonctions d'assistance que nous connaissons et aimons tous: digitalWrite, analogRead, etc ... Si vous voulez en savoir plus sur la programmation avr-gcc en général, il existe un beaucoup de tutoriels autour. Je peux recommander le site Web http://www.avrfreaks.net/, qui contient de nombreux liens et tutoriels.

Ce fichier binaire est ensuite téléchargé sur la puce de l'arduino en utilisant un programme appelé avrdude, qui est à nouveau appelé automatiquement par le traitement comme GUI. Ce programme téléchargera le fichier binaire via le port série, vers ce qu'on appelle un chargeur de démarrage sur l'atmega328. Un bootloader est un petit programme (généralement 2 ko ou 4 ko) qui est stocké en permanence sur la puce. Si vous le supprimez, que vous l'utilisez sur une autre carte et que vous le rebranchez, vous pourrez à nouveau utiliser le logiciel arduino. La puce arduino utilise une version légèrement modifiée du protocole stk500 et nécessite un correctif pour avrdude. Il faut un peu de volonté pour écraser le chargeur de démarrage, mais c'est quelque chose qui est tout à fait possible. Vous pouvez ensuite utiliser un programmeur standard pour reflasher l'arduino. Vous pouvez en fait utiliser un autre arduino comme programmeur flash: google pour arduino ISP

#4
+1
Chris Stratton
2011-11-19 12:12:42 UTC
view on stackexchange narkive permalink

Vous pouvez en fait utiliser l'Arduino pour se cloner dans une puce ATMEGA nue, en utilisant le croquis ArduinoISP. Certains pourraient considérer que c'est une capacité obscure, d'autres l'utilisent régulièrement.

Ce que l'idée Arduino vous apporte principalement, ce sont deux choses: un chargeur de démarrage dans la puce, afin que vous puissiez charger des programmes fonctionnels en utilisant un port série plutôt que un outil de programmation spécial (la plupart des cartes actuelles ont un convertisseur USB-série intégré). Deuxièmement, il existe un IDE et un ensemble de bibliothèques destinés à faciliter le développement intégré pour les débutants - il convient de noter que tous ceux qui utilisent le matériel et le chargeur de démarrage n'utilisent pas l'IDE et les bibliothèques - certains préfèrent coder directement pour la puce AVR.

De plus, il existe une conception d'interface physique / électrique pour les "boucliers" des accessoires qui s'empilent sur la carte principale et fournissent une large gamme de modules complémentaires (bien que ceux-ci ne soient généralement pas compétitifs par rapport aux autres micro-contrôleurs / cartes qui ont ces périphériques intégrés)

Vous pouvez acheter des cartes compatibles Arduino à partir de nombreuses sources et sous de nombreux facteurs de forme, assemblées ou en kits, vous pouvez également acheter des puces atmega préchargées avec un Arduino ou un chargeur de démarrage similaire.

#5
+1
lyassa
2011-11-22 01:28:45 UTC
view on stackexchange narkive permalink

Le micro-contrôleur Propeller de parallax.com correspond à ce que vous décrivez. Le "Propeller Educational Kit" comprend la puce Propeller, une EEPROM, une prise USB vers série, une maquette et quelques autres composants discrets et un manuel bien écrit et facile à lire. Cela prend quelques minutes pour construire le circuit sur la maquette et vous êtes prêt à écrire et télécharger des programmes sur l'EEPROM. Vous le programmez dans un langage facile à apprendre appelé SPIN, ainsi que PASM (Propeller Assembly).

Le Propeller est le tout premier micro contrôleur avec lequel j'ai "joué". J'utilise le kit pour programmer une EEPROM, puis je mets l'EEPROM dans un autre circuit à hélice "autonome" que j'ai construit sur un stripboard. Autonome, ce qui signifie qu'il n'a pas de prise USB vers série.



Ce Q&R a été automatiquement traduit de la langue anglaise.Le contenu original est disponible sur stackexchange, que nous remercions pour la licence cc by-sa 3.0 sous laquelle il est distribué.
Loading...