Cum pot obține fișierele sursă pentru bibliotecile Arduino?

Am căutat de ceva timp în fișierele Arduino pentru a găsi biblioteca de bază. Cu toate acestea, nu le-am găsit încă. Unde pe hard diskul meu pot obține fișierele de bază ale bibliotecii (.cpp și .h) necesare pentru tot codul Arduino?

Privind în jur pe Google, nu am putut găsi o modalitate de a găsi fișierele de mai sus. Am văzut ceva despre obținerea unui fișier .a în timp ce Arduino compilează, totuși, asta nu este ceea ce vreau. Vreau să răsfoiesc codul și să mă uit la funcții precum întârzierea pentru a vedea cum ar reacționa atunci când valorile nu erau așteptate. . (Adică codul meu se va bloca dacă folosesc delay(-200); nefiind pentru a ieși din buclă sau va crea o gaură neagră și va perturba continuumul spațiu-timp?)

Comentarii

  • M-a interesat întrebarea, dar ceea ce vreau este codul sursă pentru strcpy și strcat în codul sursă al ansamblorului. Am descărcat Master Library, dar nu pot găsi nimic similar de la distanță cu strcpy sau strcat. SAU Poate că nu pot vedea lemnul copacilor?
  • @bobzic Vă sugerez să întrebați altul întrebare specificând ce fișiere doriți să găsiți.

Răspundeți

Fișierele sursă de bază Arduino se află în instalarea Arduino , sub cores/arduino/ . Sursa pentru bibliotecile suplimentare incluse se află în libraries/ .

Comentarii

  • Și nu ' nu uitați /usr/lib/avr/include/ sau orice altceva care se traduce pe sisteme non-Linux.
  • Păcat că l-am instalat ca aplicație Windows 10 și nu pot accesa folderul de instalare.
  • Aceste informații par depășite. Dosarul biblioteci este gol acum și hardware-ul s-a mutat

Răspuns

Codul este disponibil și online pentru acele perioade în care nu aveți IDE instalat:

https://github.com/arduino/Arduino

Comentarii

Răspuns

Pe un Mac, calea către folderul cod sursă este:
Arduino.app/Contents/Resources/Java/Hardware/Arduino/Cores/Arduino. M-aș aștepta să fie același lucru de la /Java/ în jos în alte sisteme de operare.

Calea către sursele bibliotecii (Arduino-Mac)

Răspuns

Răspuns

Există mai multe locuri unde puteți căuta. La fel ca la IDE 1.6.4 (versiunea Ubuntu), unele sunt în:

(install location)/libraries 

Dar acestea sunt bibliotecile de nivel înalt, în special:

Bridge Esplora Ethernet Firmata GSM LiquidCrystal Robot_Control RobotIRremote Robot_Motor SD Servo SpacebrewYun Stepper Temboo TFT WiFi 

Aceasta nu acoperă bibliotecile de nivel scăzut, cum ar fi Tone, Print, main, etc. Acestea sunt în:

(install location)/hardware/arduino/avr/cores/arduino 

Acolo veți găsi bibliotecile de bază Arduino cum ar fi:

abi.cpp Arduino.h binary.h CDC.cpp Client.h HardwareSerial0.cpp HardwareSerial1.cpp HardwareSerial2.cpp HardwareSerial3.cpp HardwareSerial.cpp HardwareSerial.h HardwareSerial_private.h HID.cpp hooks.c IPAddress.cpp IPAddress.h main.cpp new.cpp new.h Printable.h Print.cpp Print.h Server.h Stream.cpp Stream.h Tone.cpp Udp.h USBAPI.h USBCore.cpp USBCore.h USBDesc.h WCharacter.h WInterrupts.c wiring_analog.c wiring.c wiring_digital.c wiring_private.h wiring_pulse.c wiring_shift.c WMath.cpp WString.cpp WString.h 

Cu toate acestea, chiar și asta nu localizează lucruri precum strcpy. Fișierele antet pentru acestea pot fi găsite la:

(install location)/hardware/tools/avr/avr/include/ 

Acolo veți găsi:

alloca.h assert.h ctype.h errno.h inttypes.h math.h setjmp.h stdfix-avrlibc.h stdint.h stdio.h stdlib.h string.h 

Chiar și asta nu este povestea completă. Într-un subdirector (avr) veți găsi lucrurile legate de avr, cu fișiere pentru diferite procesoare, cum ar fi (parțial):

boot.h builtins.h common.h cpufunc.h crc16.h delay.h eeprom.h fuse.h interrupt.h io1200.h io2313.h ... iox64d4.h iox8e5.h lock.h parity.h pgmspace.h portpins.h power.h sfr_defs.h signal.h signature.h sleep.h version.h wdt.h xmega.h 

În ceea ce privește sursa strcpy, nu cred că se află în distribuție. Acestea includ bibliotecile standard, precompilate. De exemplu, dacă vă uitați în:

(install location)/hardware/tools/avr/avr/lib 

Veți vedea diverse biblioteci precompilate, de exemplu:

libc.a libm.a libprintf_flt.a libprintf_min.a libscanf_flt.a libscanf_min.a 

Pentru a găsi sursa ar trebui să găsiți unde este sursa AVR a libc este (posibil la http://www.nongnu.org/avr-libc/ ).


În ceea ce privește Mac, toate aceste lucruri sunt la câteva niveluri în jos în „Pachetul de aplicații” pe care îl puteți vizualiza făcând clic dreapta și selectând „Afișați conținutul pachetului”. Căutați în folderul Contents/Resources/Java.


Niciunul dintre aceste locuri este locul unde ar trebui să puneți propriile biblioteci (cele pe care le scrieți e sau descărcare).Ar trebui să intre în dosarul libraries care este un subdirector al folderului sketchbook. Creați folderul libraries dacă nu există. În acest fel, bibliotecile instalate de utilizator persistă de la o versiune a IDE la următoarea.

Lasă un răspuns

Adresa ta de email nu va fi publicată. Câmpurile obligatorii sunt marcate cu *