Micropython est un logiciel embarqué dans la mémoire du microcontrôleur dont le travail est d'interpréter un fichier python qui est présent dans la carte.
Vous trouverez ici quelque lien vers de la documentation et vers des outils qui peuvent être utile pour la programmation de microcontrôleurs en python.
Afin de se familiariser avec les outils, il est proposé quelques ressources sur les cartes micro:bit, qui on l'avantage d'être très faciles à mettre en œuvre .
Python est un logiciel doté d'une console que l'on appelle interpréteur dans lequel on peut entrer des commandes qui seront interprétées et exécutées sur la machine.
Il existe une variante de Python que l'on appelle Micropython qui s'exécute sur des microcontrôleurs.
Certains intégristes expliqueront que le python, c'est pas fait pour fonctionner sur une puce mais sur un ordinateur. J'ai tendance à répondre que bien des cartes à puce sont programmé en Java, les fameuses "Javacard".
Des exemples et des contre-exemples, il y en a à la pelle. Les seules questions qui vaillent sont pour moi :
Le programme sera-t-il maintenable, c’est-à-dire pourra-t-il évoluer ou être corrigé ? C'est une vraie problématique industrielle.
La plateforme matérielle dispose-t-elle de suffisamment de ressource pour exécuter le programme avec les performances attendues ?
Dispose-t-on des compétences pour écrire et déployer le programme sur le matériel visé.
Si l'on répond oui au trois, il semble que le langage de programmation choisi (python ou un autre) soit un bon candidat.
Voici deux ressources pour s'initier au python. La première est un TD. Il vous faudra un environnement de développement équipé du module Turtle. Il y en plusieurs. En voici 2 :
Mu Editor. Il faudra alors ajouter turtle dans les paramètres (onglet module tiers). Demandez de l'aide si besoin !
Edupython. C'est l'artillerie lourde, mais tout est dedans.
Replit : complet, en ligne, assez simple pour les fonctionnalités offertes, mais demande un petit investissement
La seconde partie vous permettra de retrouver les structures algorithmiques en python.
En bonus, les correspondances scratch/python !
La carte micro:bit a été conçu par la chaine anglaise BBC pour répondre à un besoin : former les jeunes anglais au numérique. On se souviendra que la BBC fût également à l'origine du projet avant-gardiste BBC micro, dont l'objectif en 1981 était de rendre accessible la micro informatique aux jeunes Anglais.
La carte micro:bit est une carte à micro-contrôleurs, c’est-à-dire qu'elle dispose d'un microprocesseur, de mémoire ROM, de RAM ... et surtout de connecteurs d'entrée et sortie lui permettant d'interagir avec son environnement pour lire un capteur ou piloter un actionneur.
La liste des périphériques de cette carte est longue:
boutons
écran
boussole
accéléromètre
radio
...
Vous trouverez de nombreuse information icimicrobit.org/fr/get-started/user-guide/features-in-depth/
Le plus simple est de disposer d'un environnement de développement intégré, c’est-à-dire un outil qui permettra et facilitera l'écriture de code et qui permettra de gérer la carte, téléverser le logiciel, accès au terminal (REPL), gérer le disque dur. Il en existe beaucoup, et la règle est en général : plus c'est complet, plus c'est compliqué.
C'est un produit Microsoft, gratuit, qui permet d'écrire des programmes en bloc, à la mode Scratch. Il possède un simulateur intégrer. Il peut être utile pour faire des tests rapide sur les entrées/sorties par exemple. Il existe une version installable et une version en ligne
Je déconseille la programmation python car le code n'est pas portable sur d'autre plateforme. La fonction a le mérite d'exister, mais n'est pas suffisamment aboutie pour des usages lycée.
C'est un environnement en ligne qui permet qui présente les avantanges suivant :
Complétion de code (vous commencez à écrire, il vous propose la suite)
Si les drivers sont installés, il permet de connecter la console de la carte (REPL, "serial").
Tout est sous la main, y compris le gros bouton help !
C'est un environnement de programmation en python prévu pour ceux qui veulent faire simple. Il a tout d'un grand :
Python pour bureau
Python pour faire un serveur web
Python pour l'embarqué (dont Micropython pour micro:bit)
Il est possible que les drivers ne soient pas installés. Les drivers sont de petits logiciels dont se sert le système d'exploitation pour communiquer avec un périphérique. Sous Windows 10, cela se passe en général plutôt bien.
L'installation de driver nécessite les droits administrateurs. Télécharger et installer les drivers. Si besoin, redémarrer une session.
Le plus simple est souvent de consulté la documentation. Celle de Micropython pour micro:bit est particulièrement claire et regorge d'exemples.
Contactez votre professeur !