Súborový systém#

Pri MCU s väčšou pamäťou sa ako súborový systém využíva pamäť FLASH. Súbory uložené sa po resete procesora nemažú.

Lokálna správa filesystému#

Použitie knižnice os v interaktívnom móde MicroPython-u.

import os

dir(os)                   # vypis funkcii kniznice os
os.getcwd()               # vypis aktualneho adesaru
os.listdir()              # vypis adresarov
os.mkdir('path')          # vytvorenie adresaru
os.chdir('path')          # zmena adresaru
os.unlink('filename')     # zmazanie suboru alebo symbolickeho linku
os.rmdir('path')          # zmazanie prazdneho adresaru

Zmazanie všetkých súborov v adresári

os.chdir('path') 
w=os.listdir()
for i in w: os.unlink(i)

Diaľková správa filesystému#

Z konzoly počítača môžeme cez CLI pristupovať k súborovému systému MicroPython-u pomocou programu pyboard.py.

python pyboard.py -h
usage: pyboard.py [-h] [-d DEVICE] [-b BAUDRATE] [-u USER] [-p PASSWORD] [-c COMMAND] [-w WAIT]
                  [--soft-reset | --no-soft-reset] [--follow | --no-follow] [--exclusive |
                  --no-exclusive] [-f]
                  [files ...]

Run scripts on the pyboard.

positional arguments:
  files                 input files

options:
  -h, --help            show this help message and exit
  -d, --device DEVICE   the serial device or the IP address of the pyboard
  -b, --baudrate BAUDRATE
                        the baud rate of the serial device
  -u, --user USER       the telnet login username
  -p, --password PASSWORD
                        the telnet login password
  -c, --command COMMAND
                        program passed in as string
  -w, --wait WAIT       seconds to wait for USB connected board to become available
  --soft-reset          Whether to perform a soft reset when connecting to the board [default]
  --no-soft-reset
  --follow              follow the output after running the scripts [default if no scripts given]
  --no-follow
  --exclusive           Open the serial device for exclusive access [default]
  --no-exclusive
  -f, --filesystem      perform a filesystem action: cp local :device | cp :device local | cat path | ls
                        [path] | rm path | mkdir path | rmdir path

Vytvorenie adresáru

python ./py/pyboard.py -d PORT -f mkdir PATH

Nahratie súboru

python ./py/pyboard.py -d PORT LOKALNY_SUBOR :REMOTE_SUBOR

Jupyteru Notebook#

Nahratie súboru do pamäte FLASH z prostredia Jupyteru. Pri použití kernelu MicroPython-u je potrebné vytvoriť bunku, ktorú interpretuje lokálny kernel ipython.

# prepinac pre bunku v lokalnom mode - interpretuje lokalny ipython 
%local

import os
port = '/dev/ttyACM0'

# vytvorenie remote adresaru
_ = os.system('python ./py/pyboard.py -d '+port+' -f mkdir lib')

# nahravany subor je mozne ulozit do vopred vytvoreneho remote adresaru
# _ = os.system('python ./py/pyboard.py -d PORT LOKALNY_SUBOR :REMOTE_SUBOR')
_ = os.system('python ./py/pyboard.py -d '+port+' -f cp ./subor.py :./lib/subor.py')