Kuinka saan Arduino-kirjastojen lähdetiedostot?

Olen etsinyt jonkin aikaa Arduinon tiedostoista löytääksesi ydinkirjaston. En kuitenkaan ole vielä löytänyt niitä. Mistä kiintolevyltä voin hankkia kaiken Arduino-koodin kannalta välttämättömät kirjastotiedostot (.cpp ja .h)?

Katsellessani Googlessa en löytänyt tapaa löytää yllä olevia tiedostoja. Näin jotain .a-tiedoston saamisesta Arduinon käännösten aikana, mutta se ei ole mitä haluan. Haluan selata koodia ja tarkastella toimintoja, kuten viive, nähdäksesi, miten ne reagoisivat, kun annetaan arvot, joita ei odoteta . (Eikö koodini lakkaa toimimasta, jos käytän delay(-200); -toimintoa olematta poistumatta silmukasta, tai luo se mustan aukon ja häiritsee aika-aikajaksoa?)

Kommentit

  • Minua kiinnosti kysymys, mutta haluan lähdekoodin strcpy ja strcat assemblerin lähdekoodissa. Latasin pääkirjaston, mutta en löydä mitään etäyhteydeltään strcpy: tä tai strcatia. TAI ehkä en näe puiden puuta?
  • @bobzic Ehdotan, että kysyt toiselta kysymys, joka määrittää, mitkä tiedostot haluat löytää.

Vastaa

Arduinon lähdetiedostot ovat Arduino-asennuksessa , kohdassa cores/arduino/ . Lisäkirjastojen lähde on kohdassa libraries/ .

kommentit

  • Ja älä ' älä unohda /usr/lib/avr/include/ tai mitä se tarkoittaa muissa kuin Linux-järjestelmissä.
  • Harmi, että asensin sen Windows 10 -sovelluksena, enkä voi käyttää asennuskansiota.
  • Nämä tiedot näyttävät olevan vanhentuneita. kirjastot -kansio on nyt tyhjä ja -laitteisto on siirtynyt

vastaus

Koodi on saatavana myös verkossa, kun IDE: tä ei ole asennettu:

https://github.com/arduino/Arduino

Kommentit

Vastaa

Macissa polku lähdekoodikansioon on:
Arduino.app/Contents/Resources/Java/Hardware/Arduino/Cores/Arduino. Luulen, että se olisi sama /Java/ -kohdasta alaspäin muissa käyttöjärjestelmissä.

Polku kirjastolähteisiin (Arduino-Mac)

Vastaa

Vastaa

Voit etsiä useita paikkoja. Kuten IDE 1.6.4: ssä (Ubuntu-versio), jotkut ovat:

(install location)/libraries 

Mutta nämä ovat erityisesti korkean tason kirjastoja:

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

Se ei kata matalan tason kirjastoja, kuten Tone, Print, main jne. Nämä ovat:

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

Sieltä löydät Arduino-ydinkirjastot, kuten:

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 

Vaikka tämäkaan ei löydä asioita, kuten strcpy. Heille -otsikon tiedostot löytyvät osoitteesta:

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

Sieltä löydät:

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 

Se ei ole vielä koko tarina. Alihakemistosta (avr) löydät avr-tiedostot, joissa on tiedostoja eri prosessoreille, kuten (osittain):

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 

Mitä strcpy-lähteeseen tulee, en usko, että se on jakelussa. Ne sisältävät vakiokirjastot, valmiiksi kootut. Jos esimerkiksi tarkastellaan:

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

Näet useita valmiiksi koottuja kirjastoja, esimerkiksi:

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

Lähteen löytämiseksi sinun on löydettävä mistä AVR-lähde libc on (mahdollisesti kohdassa http://www.nongnu.org/avr-libc/ ).


Mitä tulee Maciin, kaikki nämä asiat ovat muutama taso alaspäin ”Sovelluspaketissa”, jota voit tarkastella napsauttamalla hiiren kakkospainikkeella ja valitsemalla ”Näytä paketin sisältö”. Etsi kansiosta Contents/Resources/Java.


Ei mitään näistä paikoista sinun tulisi sijoittaa omat kirjastot (kirjoittamasi e tai lataa).Heidän pitäisi mennä libraries -kansioon, joka on sketchbook -kansion alihakemisto. Luo libraries -kansio, jos sitä ei ole. Näin käyttäjän asentamat kirjastot jatkuvat IDE: n versiosta toiseen.

Vastaa

Sähköpostiosoitettasi ei julkaista. Pakolliset kentät on merkitty *