Parfois, nous souhaitons masquer le code source à la visibilité de l'utilisateur.
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.
- Les fichiers mpy présentent deux avantages principaux
- 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.
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 :