Faz um tempo que procuro nos arquivos do Arduino para encontrar a biblioteca principal. No entanto, ainda não os encontrei. Onde no meu disco rígido posso obter os arquivos da biblioteca principal (.cpp e .h) necessários para todo o código do Arduino?
Procurando no Google, não consegui encontrar uma maneira de encontrar os arquivos acima. Eu vi algo sobre como obter um arquivo .a enquanto o Arduino está compilando, no entanto, não é isso que eu quero. Eu quero navegar no código e olhar as funções como atraso para ver como elas reagiriam quando dados os valores não esperados . (ou seja, meu código travará se eu usar delay(-200);
por não sair do loop ou criará um buraco negro e interromperá o contínuo espaço-tempo?)
Comentários
- Eu estava interessado na pergunta, mas o que eu quero é o código-fonte para strcpy e strcat no código-fonte do assembler. Baixei a Biblioteca Master, mas não consigo localizar nada remotamente semelhante a strcpy ou strcat. OU Talvez eu não consiga ver a madeira das árvores?
- @bobzic, sugiro que você pergunte a outro pergunta especificando quais arquivos você deseja encontrar.
Resposta
Os arquivos fonte do Arduino base estão na instalação do Arduino , em cores/arduino/
. As fontes para bibliotecas adicionais incluídas estão em libraries/
.
Comentários
- E não ' se esqueça de
/usr/lib/avr/include/
ou o que quer que isso se traduza em sistemas não Linux. - Que pena que instalei como aplicativo do Windows 10 e não consigo acessar a pasta de instalação.
- Esta informação parece desatualizada. A pasta bibliotecas está vazia agora e o hardware foi movido
Resposta
O código também está disponível online para aqueles momentos em que você não tem o IDE instalado:
https://github.com/arduino/Arduino
Comentários
- Pode ' para encontrar os arquivos de cabeçalho lá.
- veja minha resposta abaixo: arduino.stackexchange.com/a / 68658/59512
Resposta
Em um Mac, o caminho para a pasta do código-fonte é:
Arduino.app/Contents/Resources/Java/Hardware/Arduino/Cores/Arduino
. Eu esperava que fosse o mesmo /Java/
para baixo em outros sistemas operacionais.
Resposta
Os arquivos-fonte do Arduino podem ser encontrados no Github em https://github.com/arduino/Arduino , h todavia as bibliotecas foram movidas para seus próprios repositórios:
Resposta
Existem vários lugares onde você pode olhar. Como no IDE 1.6.4 (versão Ubuntu), alguns estão em:
(install location)/libraries
Mas essas são as bibliotecas de alto nível, em particular:
Bridge Esplora Ethernet Firmata GSM LiquidCrystal Robot_Control RobotIRremote Robot_Motor SD Servo SpacebrewYun Stepper Temboo TFT WiFi
Isso não cobre as bibliotecas de baixo nível como Tone, Print, main, etc. Elas estão em:
(install location)/hardware/arduino/avr/cores/arduino
Lá você encontraria as bibliotecas centrais do Arduino como:
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
No entanto, mesmo isso não localiza coisas como strcpy. Os arquivos de cabeçalho para eles podem ser encontrados em:
(install location)/hardware/tools/avr/avr/include/
Lá você encontrará:
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
Mesmo essa não é a história completa. Em um subdiretório (avr), você encontrará itens relacionados ao avr, com arquivos para diferentes processadores, como (em parte):
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
Quanto ao código-fonte do strcpy, acho que não está na distribuição. Eles incluem as bibliotecas padrão, pré-compiladas. Por exemplo, se você olhar em:
(install location)/hardware/tools/avr/avr/lib
Você verá várias bibliotecas pré-compiladas, por exemplo:
libc.a libm.a libprintf_flt.a libprintf_min.a libscanf_flt.a libscanf_min.a
Para encontrar a fonte, você precisa encontrar a fonte do AVR libc está (possivelmente em http://www.nongnu.org/avr-libc/ ).
Quanto ao Mac, tudo isso está alguns níveis abaixo no “Pacote de aplicativos”, que você pode ver clicando com o botão direito e selecionando “Mostrar conteúdo do pacote”. Procure na pasta Contents/Resources/Java
.
Nenhum desses lugares é onde você deve colocar seu possui bibliotecas (aquelas que você escreve e ou download).Eles devem ir para a pasta libraries
, que é um subdiretório de sua pasta sketchbook
. Crie a pasta libraries
se ela não existir. Dessa forma, as bibliotecas instaladas pelo usuário persistem de uma versão do IDE para a próxima.