Hide your code inside the programmable simpleRTK2B-SBC

SBC mpy-cross

Sometimes we want to hide the source code to the user visibility.
En C, c'est facile car le code source C et l'exécutable C sont des fichiers séparés, mais en python, vous n'avez que des fichiers source qui sont compilés au moment de l'exécution.
Micropython utilise un outil nommé mpy-cross pour créer certains composants dans la machine hôte et les ajouter au micrologiciel compilé par micropython. Cet outil peut également être utilisé pour distribuer des fichiers python précompilés, appelés fichiers .mpy, qui ne contiennent que du bytecode python, pas du code source python, et peuvent être chargés en cours d'exécution par la machine virtuelle micropython.

  • mpy files has two main advantadges
    • Supprime le code source et offre une distribution de micrologiciel compilée par bytecode.
    • Évite l'étape de compilation sur le SBC, réduisant l'utilisation de la RAM
  • Pour construire le fichier .mpy, vous avez besoin d'un outil mpy-cross, cet outil est créé par micropython et les sources peuvent être téléchargées et construites à partir de Github.
    Ici vous avez la version Windows compilée.
  • Notez que SBC fonctionne avec micropython 1.13, donc l'outil mpy-cross doit également être construit à partir de cette version.

Procédure

Les étapes sont simples :

1 Créez un fichier python avec votre code source. Dans notre cas:

#welcome.py print( "bonjour le monde" ) 

2 Décompressez le version Windows compilée et placez dans le même dossier :
– Votre fichier source micropython
– mpy-cross.exe
– cygwin1.dll

3 Compilez le fichier avec l'outil mpy-cross. Cela devrait générer le fichier welcome.mpy.

image.png

4 Copiez le fichier .mpy dans la mémoire SBC

5 Pour exécuter le fichier .mpy, importez votre fichier mpy en tant que module normal :

image.png

Si vous avez aimé ce contenu, vous pouvez nous suivre sur Twitter, YouTube, Facebook or LinkedIn pour rester à jour de contenu comme celui-ci.

Vous souhaitez en savoir plus sur le GPS/RTK ?

1. Notre équipe d'ingénieurs vous contactera pour résoudre toutes les questions
2. Nous vous tiendrons au courant des promotions et des nouvelles versions de produits
3. Vous n'aurez de nos nouvelles que lorsque nous aurons des nouvelles importantes, nous ne spammerons pas votre e-mail