Publicité
+ Répondre à la discussion Actualité déjà publiée
Affichage des résultats 1 à 8 sur 8
  1. #1
    Responsable Corrections

    Avatar de f-leb
    Homme Profil pro Fabien
    Enseignant
    Inscrit en
    janvier 2009
    Messages
    5 913
    Détails du profil
    Informations personnelles :
    Nom : Homme Fabien
    Âge : 43
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : janvier 2009
    Messages : 5 913
    Points : 19 533
    Points
    19 533
    Billets dans le blog
    3

    Par défaut L'univers Arduino - Partie I

    Bonjour à tous,

    Elle a tout d'une grande la pt'ite, non ?



    Voici un premier article de présentation de la carte Arduino et son écosystème :

    L'univers Arduino
    Partie I : Aperçu de la plateforme Arduino et ses cartes d'interface ( shields)


    Véritable mini-ordinateur au succès planétaire, traitant les données provenant de composants et capteurs divers (capteur de température, luminosité, mouvement ou boutons poussoir, etc.) et communiquant des ordres pour allumer des lampes ou actionner des moteurs électriques, la carte électronique Arduino permet de créer et prototyper de véritables objets numériques interagissant avec le milieu extérieur.
    L'environnement de programmation qui l'accompagne propose un IDE et un langage basé sur les langages C/C++.
    La communauté libre du monde Arduino contribue largement à diffuser les ressources permettant la création d'objets numériques à moindre coût et accessibles à toutes personnes motivées ayant même des connaissances modestes dans les domaines de l'informatique et l'électronique.
    Vos impressions et commentaires sont attendues dans ce fil.

    et bonne lecture.

  2. #2
    Rédacteur
    Avatar de Davidbrcz
    Homme Profil pro
    Supaéro-Cesure : CERN, departement IT
    Inscrit en
    juin 2006
    Messages
    2 298
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 22

    Informations professionnelles :
    Activité : Supaéro-Cesure : CERN, departement IT

    Informations forums :
    Inscription : juin 2006
    Messages : 2 298
    Points : 3 963
    Points
    3 963

    Par défaut

    IV-C. Le langage de programmation


    Le langage arduino ca NEXISTE PAS.

    Arduino est un microcontroleur. les libs et sources sont soient écrites en C ou en C++ et compilees qvec avr-gcc ou avr-g++ selon la nature.


    Apres, pour uploader, faut dumper une partie du elf pour avoir un hex et flasher le tout avec avr-dude. Bref, tu tres classique.



    Ensuite, la lib de base arduino fournit en plus en main pre rempli qui appelle les fameuses fonctions init et loop et lide génère une partie des includes et prototypes qu il faut d'habitude écrire a la main.



    bref, il est tout a fait possible de coder sur arduino avec Emacs/Vim/whatever , un bon vieux makefile tant qu on a les outils..
    "Never use brute force in fighting an exponential." (Andrei Alexandrescu)

    Mes articles dont Conseils divers sur le C++
    Une très bonne doc sur le C++ (en) Why linux is better (fr)

  3. #3
    Rédacteur
    Avatar de Davidbrcz
    Homme Profil pro
    Supaéro-Cesure : CERN, departement IT
    Inscrit en
    juin 2006
    Messages
    2 298
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 22

    Informations professionnelles :
    Activité : Supaéro-Cesure : CERN, departement IT

    Informations forums :
    Inscription : juin 2006
    Messages : 2 298
    Points : 3 963
    Points
    3 963

    Par défaut

    On pourrait éventuellement préciser qu'Arduino est une marque déposée et que n'importe qui ne peut pas créer une carte sous le nom arduino. Il existe en réponse à cette problématique de nombreux clones des cartes arduino
    "Never use brute force in fighting an exponential." (Andrei Alexandrescu)

    Mes articles dont Conseils divers sur le C++
    Une très bonne doc sur le C++ (en) Why linux is better (fr)

  4. #4
    Responsable Corrections

    Avatar de f-leb
    Homme Profil pro Fabien
    Enseignant
    Inscrit en
    janvier 2009
    Messages
    5 913
    Détails du profil
    Informations personnelles :
    Nom : Homme Fabien
    Âge : 43
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : janvier 2009
    Messages : 5 913
    Points : 19 533
    Points
    19 533
    Billets dans le blog
    3

    Par défaut

    bonjour,

    Citation Envoyé par Davidbrcz Voir le message
    On pourrait éventuellement préciser qu'Arduino est une marque déposée et que n'importe qui ne peut pas créer une carte sous le nom arduino. Il existe en réponse à cette problématique de nombreux clones des cartes arduino
    Les schémas des cartes sont fournis sous licence C.C, on peut donc les utiliser librement pour bidouiller une nouvelle carte sans demander la permission.
    Par contre, oui, "Arduino" est une marque déposée. Si on veut créer une variante officielle, il faudra contacter l’équipe Arduino.
    Voir So you want to make an Arduino.

    Citation Envoyé par Davidbrcz Voir le message
    Le langage arduino ca NEXISTE PAS.

    Arduino est un microcontroleur. les libs et sources sont soient écrites en C ou en C++ et compilees qvec avr-gcc ou avr-g++ selon la nature.
    On est bien d’accord sur le fond. Seulement Arduino, c’est aussi un IDE dans lequel des instructions comme setup, loop, pinmode, digitalRead, etc. apparaissent avec une coloration syntaxique comme des mots-clés d’un langage spécifique "Arduino" qui enveloppe le langage C++ (wrapper).

    Je reprends les termes de la page d’accueil :
    The microcontroller on the board is programmed using the Arduino programming language (based on Wiring) …
    Avec les références du langage

    En coulisse de l’IDE et comme tu l’as dit, include , compilation gcc AVR et tout le bazar habituel pour un microcontrôleur...

    Merci de ton intérêt

  5. #5
    Rédacteur
    Avatar de Davidbrcz
    Homme Profil pro
    Supaéro-Cesure : CERN, departement IT
    Inscrit en
    juin 2006
    Messages
    2 298
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 22

    Informations professionnelles :
    Activité : Supaéro-Cesure : CERN, departement IT

    Informations forums :
    Inscription : juin 2006
    Messages : 2 298
    Points : 3 963
    Points
    3 963

    Par défaut

    On est bien d’accord sur le fond. Seulement Arduino, c’est aussi un IDE dans lequel des instructions comme setup, loop, pinmode, digitalRead, etc. apparaissent avec une coloration syntaxique comme des mots-clés d’un langage spécifique "Arduino" qui enveloppe le langage C++ (wrapper).
    J'ai passé un an à faire de la robotique sur Arduino en codant avec Emacs et uploand mon code à coup de Makefile et j'avais toute la coloration syntaxique que je voulais.

    L'IDE est juste là pour faire croire aux gens qui n'y connaissent rien et qui veulent allumer 3 leds que c'est simple et/ou magique.

    Sur un site comme developpez.com, évoquer la vraie nature de la chose ne me semble pas superflu.
    "Never use brute force in fighting an exponential." (Andrei Alexandrescu)

    Mes articles dont Conseils divers sur le C++
    Une très bonne doc sur le C++ (en) Why linux is better (fr)

  6. #6
    Modérateur
    Avatar de al1_24
    Homme Profil pro Alain
    Ingénieur d'études décisionnel
    Inscrit en
    mai 2002
    Messages
    5 662
    Détails du profil
    Informations personnelles :
    Nom : Homme Alain
    Âge : 53
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur d'études décisionnel
    Secteur : Conseil

    Informations forums :
    Inscription : mai 2002
    Messages : 5 662
    Points : 14 132
    Points
    14 132

    Par défaut

    Citation Envoyé par Davidbrcz Voir le message
    L'IDE est juste là pour faire croire aux gens qui n'y connaissent rien et qui veulent allumer 3 leds que c'est simple et/ou magique.
    C'est pour cela que j'ai choisi Arduino pour développer un routeur MIDI pour mes besoins personnels... Parce que je n'avais pas envie de me plonger dans les tréfonds de la programmation d'un micro-contrôleur et que je voulais me contenter d'un minimum d'instructions pour obtenir mon résultat.

    De la même manière qu'il peut paraitre magique d'utiliser le langage SQL pour interroger une base de données, alors qu'on pourrait tout à fait faire la même chose en programmant chaque étape du plan d'exécution en C (ou en langage d'assemblage, encore plus performant), avec parcours d'arbres et autres joyeusetés.
    Modérateur Langage SQL
    Règles du forum Langage SQL à lire par tous, N'hésitez pas à consulter les cours SQL
    N'oubliez pas le bouton et pensez aux balises
    [code]
    Si une réponse vous a aidé à résoudre votre problème, n'oubliez pas de voter pour elle en cliquant sur
    Aide-toi et le forum t'aidera : Un problème exposé sans mentionner les tentatives de résolution infructueuses peut laisser supposer que le posteur attend qu'on fasse son travail à sa place... et ne donne pas envie d'y répondre.

  7. #7
    Expert Confirmé Sénior
    Avatar de Auteur
    Profil pro
    Inscrit en
    avril 2004
    Messages
    5 613
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : avril 2004
    Messages : 5 613
    Points : 6 759
    Points
    6 759

    Par défaut

    J'ai récemment utilisé un Arduino UNO pour réaliser une petite application professionnelle : j'ai gagné du temps et de l'argent. En effet, j'aurai pu utiliser des composants électroniques traditionnels pour cette application mais les composants nécessaires se sont révélés assez couteux (et volumineux ).
    J'ai donc programmé l'Arduino pour qu'il réalise les opérations voulues puis je l'ai intégré (sans sa plateforme) dans le système.

    En plus avec les nouveaux "shields" des idées d'applications de ce micro-contrôleur apparaissent.

  8. #8
    Invité régulier
    Inscrit en
    mars 2013
    Messages
    2
    Détails du profil
    Informations forums :
    Inscription : mars 2013
    Messages : 2
    Points : 5
    Points
    5

    Par défaut

    Excellent article, bravo !

    Pour revenir sur 2 points évoqués plus haut :

    Arduino est plusieurs choses à la fois :
    1. Du matériel, plutôt ancien (8 bits) et coûteux
    2. Un environnement de développement basé sur Processing, simple mais limité
    3. Un ensemble de librairiesframework— inspiré de Wiring, véritable couche d'abstraction matériellehardware abstraction layer
    4. Une marque, avec les soucis classiques de protection et de rentabilité.


    Ce qui fait la véritable force d'Arduino, c'est la couche d'abstraction matérielle, également disponible pour de multiples autres micro-contrôleurs comme:




    Avec les suites d'outils —toolchains— au standard GCC et l'ensemble de librairies —framework—, il est possible d'utiliser des environnements de développement classiques comme

    Ces configurations sont parfaites pour du prototype rapide.

Liens sociaux

Règles de messages

  • Vous ne pouvez pas créer de nouvelles discussions
  • Vous ne pouvez pas envoyer des réponses
  • Vous ne pouvez pas envoyer des pièces jointes
  • Vous ne pouvez pas modifier vos messages
  •