Question:
Quelle est la relation entre un fichier Arduino .ino et main.cpp?
Lance
2017-07-08 10:07:34 UTC
view on stackexchange narkive permalink

Le fichier .ino est-il une alternative à un fichier main.cpp ?

Si oui, alors quelqu'un pourrait-il expliquer la structure du Fichier .ino dans main.cpp et sa relation?

... ... Quoi ... ... ?
Pas besoin de mettre en attente. L'anglais n'est pas ma langue maternelle et je n'ai eu aucun problème avec la question.
De plus, la clôture est généralement appliquée pour des questions manifestement hors sujet ou des infractions pires. Pourquoi a-t-il été clos plutôt que simplement tenu pour clarification? Voter pour rouvrir.
@JRobert, la réponse de Jot est bonne. La question doit être éditée.
Un répondre:
Jot
2017-07-08 15:20:49 UTC
view on stackexchange narkive permalink

L'Arduino utilise le compilateur gcc. Ce compilateur veut bien sûr une fonction main normale. Arduino a ajouté une couche à cela avec setup et loop.

La fonction main cachée pour les cartes Arduino de base se trouve dans main.cpp (cliquez dessus pour le voir).
Vous voyez que init est appelé, et setup et loop et quelques autres choses.

Pour apprendre à utiliser setup et loop , vous pouvez essayer quelques exemples. Ils sont dans le menu de l'IDE Arduino et ils sont également en ligne.

Les fichiers .ino sont tous combinés ensemble et présentés au compilateur comme un seul fichier .cpp à compiler. Les bibliothèques Arduino sont également compilées à partir de la source, et tout est lié dans un binaire.

Lorsque vous savez comment utiliser setup et loop , essayez l ' exemple Blink Without Delay. Il peut être utilisé pour exécuter différents minuteries logicielles et effectuer toutes sortes de tâches et maintenir tout le bon fonctionnement.

Cela résout ma requête, merci d'avoir expliqué la fonction principale int dans main.cpp. J'essaierais également l'exemple de clignotement sans délai comme vous l'avez suggéré.
Le lien vers main.cpp a été déplacé vers un nouveau référentiel, [voici le nouvel emplacement] (https://github.com/arduino/ArduinoCore-avr/blob/master/cores/arduino/main.cpp).
@LukeBayes Merci, j'ai ajusté le lien dans ma réponse. L'ancien avr standard a été déplacé vers "ArduinoCore-avr".


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...