Bonjour,
L'inscription sur ce forum et les premiers messages sont modérés par un Administrateur.
Ce n'est pas très convivial mais malheureusement nécessaire suite au spam intensif de nos amis russes.
Cordialement,
Dominique

Fichier invisible après création sous MicroPython (Transfert d'un fichier

PYBStick de Garatronic.fr est une Carte MicroPython / Arduino IDE à prix abordable.
Forum rules
La PYBStick est supporté par MC Hobby (MicroPython) et Garatronic (Arduino IDE).
Merci de suivre les recommandations suivantes.
Pensez à:
  • Titre claire: permettant d'identifier le produit et le problème
  • Contenu complet: schema, message d'erreur, etc (tout ce qui permet d'aider à distance).
  • Fichier joint: Max 300 Ko
  • Courtoisie et précision
Post Reply
mduf
Posts: 3
Joined: Sat 13 Jun 2020 18:18

Fichier invisible après création sous MicroPython (Transfert d'un fichier

Post by mduf »

Bonjour,

J'ai créé un fichier avec un script python et je suis incapable de le voir sous windows.
or il est lisible en tapant os.listdir()
ctrl D ne change rien
par contre retirer la clef USB puis la réintroduire permet l'affichage et la lecture du fichier
os.sync() ne change rien
je n'ai pas essayé sous linux
existe il une solution ?

Merci
Marc
User avatar
Dominique
Administrateur du site
Posts: 259
Joined: Sun 17 May 2020 22:43

Re: Fichier invisible après création sous MicroPython (Transfert d'un fichier

Post by Dominique »

Un petit script démonstrateur serait le bienvenu pour faire un test exactement sur la même base.
Dominique, MC Hobby.
mduf
Posts: 3
Joined: Sat 13 Jun 2020 18:18

Re: Fichier invisible après création sous MicroPython (Transfert d'un fichier

Post by mduf »

Bonjour,

J'ai branché sur s26 un microphone
et j'ai fait de l'acquisition audio
on arrive à échantillonner jusqu'à 100KHz

Code: Select all

from pyb import ADC, Timer
from time import sleep, localtime

adc = ADC("S26")
def lecture(f, t):
    buffer = bytearray( t )
    print ("debut")
    adc.read_timed( buffer, Timer(9, freq=f) )
    print ("fin")
    # print out the collected values
    f = open('out.txt', 'w')
    f.write(str(localtime())+"\n")
    for value in buffer:
        print (str(value))
        f.write(str(value)+"\n")
    f.close()

lecture(50000, 400)
User avatar
Dominique
Administrateur du site
Posts: 259
Joined: Sun 17 May 2020 22:43

Re: Fichier invisible après création sous MicroPython (Transfert d'un fichier

Post by Dominique »

Bonjour,

En fait, le fichier est bien créé et directement accessible via l'outil RShell
Sélection_047.png
Sélection_047.png (6.9 KiB) Viewed 5030 times
où l'on voit le fichier out.txt

Après quelques tests sous Linux, voici ce que j'ai trouvé.

Solution 1:
Faire un Soft-Reset dans une session REPL resynchronise la liste des fichiers sur l'interface USB.
Il suffit de faire un Ctrl+D dans une session REPL pour faire le soft-reset... ensuite, rafraîchir la liste des fichiers dans le navigateur de fichiers.

Solution 2:
Faire un Hard-Reset depuis une session REPL (c'est la même chose que presser le bouton reset.
Cela se fait avec les instructions suivantes:

Code: Select all

>>> import machine
>>> machine.reset()
Cela réinitialise complètement la carte et la connexion USB. Par conséquent la liste des fichiers est rafraîchie dans le navigateur de fichiers. :D
Attention cependant, cela re-exécute aussi le fichier main.py . Donc si lecture() est exécuté depuis main.py alors le script devra vérifier au préalable l'absence de out.txt avant d'appeler la fonction lecture().
Dominique, MC Hobby.
User avatar
Dominique
Administrateur du site
Posts: 259
Joined: Sun 17 May 2020 22:43

Re: Fichier invisible après création sous MicroPython (Transfert d'un fichier

Post by Dominique »

Et voici le contenu du fichier out.txt (via RShell)

Code: Select all

/tmp> cat /pyboard/flash/out.txt
(2004, 25, 15, 1, 85, 78, 4, 24446)
81
76
73
69
68
66
64
61
63
65
Dominique, MC Hobby.
mduf
Posts: 3
Joined: Sat 13 Jun 2020 18:18

Re: Fichier invisible après création sous MicroPython (Transfert d'un fichier

Post by mduf »

@Dominique merci pour votre aide :)
Post Reply