Ich habe eine Weile in Arduino-Dateien gesucht, um die Kernbibliothek zu finden. Ich habe sie jedoch noch nicht gefunden. Wo kann ich auf meiner Festplatte die Kernbibliotheksdateien (.cpp und .h) abrufen, die für den gesamten Arduino-Code erforderlich sind?
Ich habe mich bei Google umgesehen und konnte die oben genannten Dateien nicht finden. Ich habe etwas über das Abrufen einer .a-Datei gesehen, während Arduino kompiliert, aber das ist nicht das, was ich will. Ich möchte den Code durchsuchen und mir Funktionen wie die Verzögerung ansehen, um zu sehen, wie sie reagieren würden, wenn die nicht erwarteten Werte angegeben würden. (Wird mein Code blockieren, wenn ich delay(-200);
die Schleife nicht verlasse, oder wird er ein Schwarzes Loch erzeugen und das Raum-Zeit-Kontinuum stören?)
quelle
Antworten:
Die Basis-Arduino-Quelldateien befinden sich in der Arduino-Installation unter
hardware/*/cores/
. Quelle für zusätzliche Bibliotheken enthalten sind inlibraries/
. Weitere Dateien finden Sie im Skizzenbuch unter den Verzeichnissenhardware/*/cores/
undlibraries/
.quelle
/usr/lib/avr/include/
oder was auch immer das auf Nicht-Linux-Systemen bedeutet.Der Code ist auch online verfügbar, wenn Sie die IDE nicht installiert haben:
https://github.com/arduino/Arduino
quelle
Auf einem Mac ist der Pfad zu dem Quellcode - Ordner:
Arduino.app/Contents/Resources/Java/Hardware/Arduino/Cores/Arduino
. Ich würde erwarten, dass dies auch/Java/
in anderen Betriebssystemen der Fall ist.quelle
Die Arduino-Quelldateien finden Sie auf Github unter https://github.com/arduino/Arduino . Die Bibliotheken wurden jedoch in ihre eigenen Repositorys verschoben :
quelle
Es gibt mehrere Stellen, an denen Sie suchen können. Ab IDE 1.6.4 (Ubuntu-Version) sind einige in:
Dies sind jedoch die übergeordneten Bibliotheken, insbesondere:
Dies gilt nicht für Low-Level-Bibliotheken wie Tone, Print, Main usw. Diese befinden sich in:
Dort finden Sie die Arduino-Kernbibliotheken wie:
Aber auch das findet Dinge wie strcpy nicht. Die Header- Dateien für sie finden Sie unter:
Dort finden Sie:
Auch das ist nicht die ganze Geschichte. In einem Unterverzeichnis (avr) finden Sie die avr-bezogenen Dinge mit Dateien für verschiedene Prozessoren, wie (teilweise):
Ich glaube nicht, dass die Quelle von strcpy in der Distribution liegt. Sie enthalten die vorkompilierten Standardbibliotheken. Zum Beispiel, wenn Sie schauen in:
Sie sehen verschiedene vorkompilierte Bibliotheken, zum Beispiel:
Um die Quelle zu finden, müssten Sie herausfinden, wo sich die AVR-Quelle von libc befindet (möglicherweise unter http://www.nongnu.org/avr-libc/ ).
Was den Mac betrifft, befindet sich das ganze Zeug ein paar Ebenen tiefer im "Anwendungspaket", das Sie anzeigen können, indem Sie mit der rechten Maustaste klicken und "Paketinhalt anzeigen" auswählen. Schau in den
Contents/Resources/Java
Ordner.An keinem dieser Orte sollten Sie Ihre eigenen Bibliotheken ablegen (solche, die Sie schreiben oder herunterladen). Sie sollten sich in dem
libraries
Ordner befinden, der ein Unterverzeichnis Ihressketchbook
Ordners ist. Erstellen Sie denlibraries
Ordner, falls er nicht vorhanden ist. Auf diese Weise bleiben vom Benutzer installierte Bibliotheken von einer Version der IDE zur nächsten erhalten.quelle