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

buzzer

Information et support sur les autres produits vendu par MCHobby
Forum rules
Ces forums sont destinés aux clients de MC Hobby ayant besoin d'assistance pour/suite à leurs achats.
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
IHOXOHI
Posts: 16
Joined: Tue 28 Jul 2020 07:34

buzzer

Post by IHOXOHI »

Bonjour,

Je viens d'essayer de faire fonctionner la lib buzzer dispo pour la pybstick sur la pyb405...

Cela fonctionne, mais un "bruit" quelque peu génant se met en place lors de l'activation du buzzer, et ne s'arrete plus tant qu'il n'y a pas désactivation. La commande "bz.tone()" n'y change rien...

Est-ce inéluctable?

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

Re: buzzer

Post by Dominique »

Pourriez-vous mettre votre code d'exemple PYB405 à disposition ?
Dominique, MC Hobby.
IHOXOHI
Posts: 16
Joined: Tue 28 Jul 2020 07:34

Re: buzzer

Post by IHOXOHI »

C'est le même que celui fournit sur la page github de la librairie:

Code: Select all

from buzzer import Buzzer
from time import sleep
 
bz = Buzzer()
#Jouer un Do @ 523 Hertz
bz.tone( 523 )
sleep( 1 )
 #Silence
bz.tone()
Sur un autre de vos "tutos" concernant les buzzer, il est indiqué de placer une diode en plus (et une resistance de 330 ohm pour la pybstick). J'ai essayé la diode dans les 2 sens (il me semble que sur le schéma la diode est inversée), mais rien n'y fait.

Lorsque j'utilise directement les timers sans la librairie buzzer (code ci-dessous), je n'ai plus de "sifflement", mais aucune difference dans les notes, toujours le même son.

Code: Select all

from pyb import Timer
from time import sleep
from machine import Pin

Notes = [261,294,329,349,392,440,493,523]

def musique():
    for i in Notes:
        tim = Timer(8, freq=i)
        buz = Pin('X6', Pin.OUT)
        tim.callback(lambda t: buz.on())
        sleep(0.5)
        tim.callback(lambda t: buz.off())
        sleep(0.2)

musique()
Pour la fonction de réveil que je souhaite donner à la pyb405, cela convient, mais je préfèrerais entendre une belle mélodie au réveil...
User avatar
Dominique
Administrateur du site
Posts: 309
Joined: Sun 17 May 2020 22:43

Re: buzzer

Post by Dominique »

Bonjour,
La définition du Buzzer de la PYBStick ne convient pas à la définition des broches pour la PYB405.

La PYB405 est plutôt compatible avec la Pyboard originale.
Je vous propose d'essayer la classe Buzzer du projet Pyboard-Uno-R3 et disponible dans la bibliothèque uno.py

Le buzzer est branché sur la broche Y11...

Faites moi savoir si cela va mieux.... je ferais un petit refactoring pour extraire la classe dans un fichier différent.
Dominique, MC Hobby.
IHOXOHI
Posts: 16
Joined: Tue 28 Jul 2020 07:34

Re: buzzer

Post by IHOXOHI »

OK, nickel.

Effectivement, plus de problème.

Merci beaucoup.
Post Reply