Tags:
create new tag
view all tags

Connexion de la planche d'expérimentation

Sur la page 46 du tutoriel Python de Freenove la photo montre la connexion du l'ESP32 à une planche d'expérimentation. Malheureusement la connexion n’est pas bonne : L’alimentation va sur les lignes bleues de la planche d'expérimentation et GND va sur les lignes rouges. Si on retourne la planche de 180 dégrée, les connexions sont correctes. Puisque je n’ai pas le kit Freenove je peux seulement montrer la connexion d’une carte d’alimentation sur une planche, qui est similaire.

breadboard_bad.png

Mauvaise connexion

breadboard_good.png

Bonne connexion

Premières pas

Exemple 00.0_HelloWorld

Le ‘\n’ après le texte n’est pas nécessaire. Voir le copie d’écrans dessus. Ce programme bien primitif sert simplement à vérifier que l’infrastructure est bien en place et fonctionne.

Exemple 00.2_Boot

Je préfère de ne pas installer ce programme dans le flash.

MicroPython installe déjà une version de boot.py (seulement des commentaires, mais qui montrent comment on peut mettre en route WEB REPL) et je ne veux pas détruire cette version.

On peut part contre l’essayer avec thonny.

Avant de le faire nous allons créer un classeur /lib dans le système de fichier de l’ESP32. Dans ce classeur on peut mettre des scripts à importer ou à exécuter.

ampy_lib.png

Avec le HelloWorld.py transféré dans /lib de l’ESP32 on peut l’exécuter avec un « import » :

helloworld.png

Si maintenant j’exécute le programme boot.py dans 00.1_Boot de Freenove, voila le résultat :

00boot.png

J’ai réécrit le programme boot.py. Dans ma version, je regarde si les fichiers sont des classeurs ou des fichiers standard et j’imprime le contenu seulement pour les fichiers standard.

Voilà ce qu’on obtient si on tourne le nouveau programme boot.py ré-nommé myboot.py :

MicroPython v1.14-121-g4fc2866f4-dirty on 2021-03-21; ESP32 module with ESP32
Type "help()" for more information.
>>> %Run -c $EDITOR_CONTENT
===============================
HelloWorld.py
===============================
Contents:

print('Hello World!\n')
===============================
lib, File is a directory
===============================
===============================
myboot.py
===============================
Contents:
#!/opt/bin/lv_micropython
import uos as os
import uerrno as errno
iter = os.ilistdir()
IS_DIR = 0x4000
IS_REGULAR = 0x8000

while True:
    try:
        entry = next(iter)
        filename = entry[0]
        file_type = entry[1]
        if filename == 'boot.py':
            continue
        else:
            print("===============================")
            print(filename,end="")
            if file_type == IS_DIR:
                print(", File is a directory")
                print("===============================")
            else:
                print("\n===============================")
                print("Contents:")
                with open(filename) as f:
                    for line in enumerate(f):
                        print("{}".format(line[1]),end="")
                print("")
                # exec(open(filename).read(),globals())
    except StopIteration:
        break

>>> 

Les versions des scripts modifiés se trouvent sur github :

https://github.com/uraich/mpy_ucad

-- TWiki Admin User - 2021-05-10

Comments

Topic attachments
I Attachment History Action Size Date Who Comment
PNGpng 00boot.png r1 manage 23.3 K 2021-05-10 - 09:23 TWikiAdminUser  
PNGpng ampy_lib.png r1 manage 31.6 K 2021-05-10 - 09:23 TWikiAdminUser  
PNGpng breadboard_bad.png r1 manage 1019.9 K 2021-05-10 - 09:14 TWikiAdminUser  
PNGpng breadboard_good.png r1 manage 1024.8 K 2021-05-10 - 09:14 TWikiAdminUser  
PNGpng helloworld.png r1 manage 19.0 K 2021-05-10 - 09:23 TWikiAdminUser  
Topic revision: r1 - 2021-05-10 - TWikiAdminUser
 
This site is powered by the TWiki collaboration platform Powered by PerlCopyright © 2008-2022 by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding TWiki? Send feedback