PlatformIO'nun yaratıcısı olarak, içine bakmanızı tavsiye ederim. Platformlar arası kod oluşturucu ve eksik kütüphane yöneticisidir. Birçok popüler gömülü geliştirme platformu ve panosu için aynı kodu oluşturabilir.
PlatformIO, birçok popüler Sürekli Entegrasyon (CI) sistemi (veya kendi sisteminiz ) ile entegre edilebilir . Örneklerle birlikte belgelere bakın .
Şimdi .travis.yml
Travis CI için config / template'e bakalım :
language: python
python:
- "2.7"
env:
- PLATFORMIO_CI_SRC=path/to/source/file.c
- PLATFORMIO_CI_SRC=path/to/source/file.ino
- PLATFORMIO_CI_SRC=path/to/source/directory
install:
- python -c "$(curl -fsSL https://raw.githubusercontent.com/platformio/platformio/master/scripts/get-platformio.py)"
script:
- platformio ci --board=TYPE_1 --board=TYPE_2 --board=TYPE_N
Misal
USB_Host_Shield_2.0
Proje için entegrasyon . .travis.yml
Yapılandırma dosyası:
language: python
python:
- "2.7"
env:
- PLATFORMIO_CI_SRC=examples/acm/acm_terminal
- PLATFORMIO_CI_SRC=examples/Bluetooth/WiiIRCamera PLATFORMIO_BUILD_FLAGS="-DWIICAMERA"
- PLATFORMIO_CI_SRC=examples/ftdi/USBFTDILoopback
- PLATFORMIO_CI_SRC=examples/Xbox/XBOXUSB
# - ...
install:
- python -c "$(curl -fsSL https://raw.githubusercontent.com/platformio/platformio/master/scripts/get-platformio.py)"
# Libraries from PlatformIO Library Registry
# http://platformio.org/#!/lib/show/416/TinyGPS
# http://platformio.org/#!/lib/show/417/SPI4Teensy3
- platformio lib install 416 417
script:
- platformio ci --board=uno --board=teensy31 --board=due --lib="."
avr-size
?