Diferència entre revisions de la pàgina «PlatformIO»
m |
|||
(Hi ha 6 revisions intermèdies del mateix usuari que no es mostren) | |||
Línia 1: | Línia 1: | ||
= Instal·lació = | = Instal·lació = | ||
== Debian 9 == | == Debian 9 == | ||
+ | assegureu-vos que teniu instal·lat, com a mínim, la versió 2.7 de Python. Al moment de fer aquesta entrada (6 de maig de 2019), '''PlatformIO''' no funciona emprant Python3, ha d'estar instal·lat el '''Python2''' | ||
+ | Des del terminal: | ||
+ | curl -fsSL https://raw.githubusercontent.com/platformio/platformio-core/develop/scripts/99-platformio-udev.rules | sudo tee /etc/udev/rules.d/99-platformio- udev.rules | ||
+ | sudo service udev restart | ||
+ | sudo usermod -a -G dialout $USER | ||
+ | sudo usermod -a -G plugdev $USER | ||
+ | pip install -U platformio | ||
+ | |||
+ | Genereu els directoris per a allotjar PlaformIO: | ||
+ | cd ~ | ||
+ | mkdir .platformio | ||
+ | cd .platformio/ | ||
+ | mkdir penv | ||
+ | cd ~/.platformio/penv | ||
+ | python -c "import os; print os.path.join(os.getenv('PLATFORMIO_HOME_DIR', os.path.join(os.path.expanduser('~'), '.platformio')), 'penv')" | ||
+ | cd ~/.platformio/penv | ||
+ | |||
+ | Per a fer l'execució sobre un entorn virtual: | ||
+ | apt-get install python-virtualenv | ||
+ | pip install virtualenv | ||
+ | |||
+ | Per a entrar a l'entorn virtual (directori base: ''~/.platformio/penv''): | ||
+ | . ~/.platformio/penv/bin/activate | ||
+ | |||
+ | Genereu el directori de treball: | ||
+ | mkdir nomPrj | ||
+ | cd nomPrj | ||
+ | |||
+ | Instal·leu-ho des del ''pip'': | ||
+ | pip install -U platformio | ||
+ | |||
+ | Per a visualitzar el maquinari compatible per a enregistrar el microprogramari (''firmware'') des del PlatformIO: | ||
+ | platformio boards esp32 | ||
+ | platformio boards esp8266 | ||
+ | platformio boards nano | ||
+ | |||
+ | Per a veure els ports físics visibles per PlatformIO: | ||
+ | python -m serial.tools.list_ports | ||
+ | |||
Genereu l'estructura de carpetes. En aquest exemple s'escullen tres arquitectures '''nanoatmega328''' (Arduino Nano), '''nodemcuv2''' (ESP8266) in '''esp32doit-devkit-v1''' per a l'ESP32: | Genereu l'estructura de carpetes. En aquest exemple s'escullen tres arquitectures '''nanoatmega328''' (Arduino Nano), '''nodemcuv2''' (ESP8266) in '''esp32doit-devkit-v1''' per a l'ESP32: | ||
platformio init --board nanoatmega328 --board nodemcuv2 --board esp32doit-devkit-v1 | platformio init --board nanoatmega328 --board nodemcuv2 --board esp32doit-devkit-v1 | ||
− | Heu d'afegir a '''platformio.ini''' que ho connectareu a ''/dev/ttyUSB0'': | + | Heu d'afegir a '''platformio.ini''' que ho connectareu a ''/dev/ttyUSB0'' i si la velocitat és diferent a 9600 bauds pel monitor sèrie també ho heu d'especificar: |
nano platformio.ini | nano platformio.ini | ||
Línia 14: | Línia 53: | ||
framework = arduino | framework = arduino | ||
'''upload_port = /dev/ttyUSB0''' | '''upload_port = /dev/ttyUSB0''' | ||
+ | '''monitor_speed = 115200''' | ||
[env:nodemcuv2] | [env:nodemcuv2] | ||
platform = espressif8266 | platform = espressif8266 | ||
Línia 19: | Línia 59: | ||
framework = arduino | framework = arduino | ||
'''upload_port = /dev/ttyUSB0''' | '''upload_port = /dev/ttyUSB0''' | ||
+ | '''monitor_speed = 115200''' | ||
[env:esp32doit-devkit-v1] | [env:esp32doit-devkit-v1] | ||
platform = espressif32 | platform = espressif32 | ||
Línia 24: | Línia 65: | ||
framework = arduino | framework = arduino | ||
'''upload_port = /dev/ttyUSB0''' | '''upload_port = /dev/ttyUSB0''' | ||
+ | '''monitor_speed = 115200''' | ||
A la carpeta '''lib''' copieu les biblioteques necessàries per al projecte. A la carpeta '''src''' copieu el codi amb extensió '''.ino''' i el reanomeneu per '''main.cpp'''. Al '''main.cpp''' afegiu '''#include <Arduino.h>''' a l'inici de l'arxiu '''i declareu els prototipus de les funcions''' emprades al principi de l'arxiu. | A la carpeta '''lib''' copieu les biblioteques necessàries per al projecte. A la carpeta '''src''' copieu el codi amb extensió '''.ino''' i el reanomeneu per '''main.cpp'''. Al '''main.cpp''' afegiu '''#include <Arduino.h>''' a l'inici de l'arxiu '''i declareu els prototipus de les funcions''' emprades al principi de l'arxiu. |
Revisió de 17:25, 7 maig 2019
Instal·lació
Debian 9
assegureu-vos que teniu instal·lat, com a mínim, la versió 2.7 de Python. Al moment de fer aquesta entrada (6 de maig de 2019), PlatformIO no funciona emprant Python3, ha d'estar instal·lat el Python2
Des del terminal:
curl -fsSL https://raw.githubusercontent.com/platformio/platformio-core/develop/scripts/99-platformio-udev.rules | sudo tee /etc/udev/rules.d/99-platformio- udev.rules sudo service udev restart sudo usermod -a -G dialout $USER sudo usermod -a -G plugdev $USER pip install -U platformio
Genereu els directoris per a allotjar PlaformIO:
cd ~ mkdir .platformio cd .platformio/ mkdir penv cd ~/.platformio/penv python -c "import os; print os.path.join(os.getenv('PLATFORMIO_HOME_DIR', os.path.join(os.path.expanduser('~'), '.platformio')), 'penv')" cd ~/.platformio/penv
Per a fer l'execució sobre un entorn virtual:
apt-get install python-virtualenv pip install virtualenv
Per a entrar a l'entorn virtual (directori base: ~/.platformio/penv):
. ~/.platformio/penv/bin/activate
Genereu el directori de treball:
mkdir nomPrj cd nomPrj
Instal·leu-ho des del pip:
pip install -U platformio
Per a visualitzar el maquinari compatible per a enregistrar el microprogramari (firmware) des del PlatformIO:
platformio boards esp32 platformio boards esp8266 platformio boards nano
Per a veure els ports físics visibles per PlatformIO:
python -m serial.tools.list_ports
Genereu l'estructura de carpetes. En aquest exemple s'escullen tres arquitectures nanoatmega328 (Arduino Nano), nodemcuv2 (ESP8266) in esp32doit-devkit-v1 per a l'ESP32:
platformio init --board nanoatmega328 --board nodemcuv2 --board esp32doit-devkit-v1
Heu d'afegir a platformio.ini que ho connectareu a /dev/ttyUSB0 i si la velocitat és diferent a 9600 bauds pel monitor sèrie també ho heu d'especificar:
nano platformio.ini
i afegiu upload_port = /dev/ttyUSB0 al final de cada entorn:
[env:nanoatmega328] platform = atmelavr board = nanoatmega328 framework = arduino upload_port = /dev/ttyUSB0 monitor_speed = 115200 [env:nodemcuv2] platform = espressif8266 board = nodemcuv2 framework = arduino upload_port = /dev/ttyUSB0 monitor_speed = 115200 [env:esp32doit-devkit-v1] platform = espressif32 board = esp32doit-devkit-v1 framework = arduino upload_port = /dev/ttyUSB0 monitor_speed = 115200
A la carpeta lib copieu les biblioteques necessàries per al projecte. A la carpeta src copieu el codi amb extensió .ino i el reanomeneu per main.cpp. Al main.cpp afegiu #include <Arduino.h> a l'inici de l'arxiu i declareu els prototipus de les funcions emprades al principi de l'arxiu.
Un cop preparat, aneu al directori pare d'src i lib. Connecteu l'ESP32 al port USB (/dev/ttyUSB0) i per a compilar-ho, i pujar-ho, executeu:
platformio run -e esp32doit-devkit-v1 -t upload