Bienvenue aux nouveaux arrivants sur FantasPic !

- Pensez à lire les règles durant votre visite, il n'y en a pas beaucoup, mais encore faut-il les respecter .
- N’hésitez pas à faire des remarques et/ou suggestions sur le Forum, dans le but de l'améliorer et de rendre vos prochaines visites plus agréables.
- Vous pouvez regarder votre "panneau de l'utilisateur" afin de configurer vos préférences.
- Un passage par "l'utilisation du forum" est recommandé pour connaître les fonctionnalités du forum.

--- L’équipe FantasPic ---
Forum général sur l'Assembleur !

Modérateur : mazertoc

Algorithme de Goertzel
Temps-x
Avatar de l’utilisateur
Expert
Expert
Messages : 2595
Enregistré en : juillet 2016
Localisation : Terre

#1 Message par Temps-x » dim. 11 déc. 2022 16:38

Bonjour tout le forum,

paulfjujo a écrit :Source du message :sifflotte: Temps-X nous l'a promis !


Chose promise, chose due L'algorithme de Goertzel sert à trouver la valeur fréquentiel mélangés dans un même signal, souvent utilisé dans les touches téléphoniques,

Justement on va s'en servir comme exemple, voici un tableau des touches téléphonique avec leurs fréquences.

Fréquence touche téléphonique.jpg


Préparation pour les premier essais

Pour les essais j'ai utilisé comme microcontrôleur un Pic18F26K22, voici son datasheet datasheet

If faut aussi un générateur de tonalité, la pas de problème, car on prendra l'ordinateur(PC) comme source de générateur, sur un seule coté, (mode mono)

On mettra une résistance de 4700 Ohms pour ne pas endommagé la sortie son du PC, afin de régler l'amplitude il faudra aussi un potentiomètre qui
sera relié à la masse et la résistance de 4700 Ohms, un plan sera fait pour mieux de compréhension.

Les sons émit seront ceux que paulfjujo nous à fourni ICI en section C :sad:

Leurs caractéristique

Durée de 0.48 seconde, Échantillonnage 11025 Bytes/Sec, Fréquence 11025 Hz, Mode mono

Pour visionner le résultat on se servira d'un écran Oled 128x64 en mode de communication SPI pour vous montrer le résultat obtenu, voici son datasheet

j'ai opté pour le mode SPI bit bang, ce qui permets de choisir les pattes quand veut sur le microcontrôleur, de plus ça le rends compatible
pour les microcontrôleurs ne possèdent pas du SPI

Voici mon branchement pour mode SPI

Code : Tout sélectionner

#DEFINE dc      LATA,2                 ; RA2 ==> sélection du mode : commande = 0 , donnée = 1
#DEFINE cs      LATA,1                 ; RA1 ==> activer ou désactiver la transmission
#DEFINE rst     LATA,0                 ; RA0 ==> reset de l'écran

#DEFINE sck     LATC,3                 ; RC3 ==> horloge de synchronisation 
#DEFINE mosi    LATC,5                 ; RC5 ==> envoyer les données sur écran oled 128x64
Vous n’avez pas les permissions nécessaires pour voir les fichiers joints à ce message.
Modifié en dernier par Temps-x le mar. 13 déc. 2022 18:49, modifié 6 fois.
:roll: Les requins, c'est comme le langage ASM, c'est le sommet de la chaîne alimentaire. :wink:

Algorithme de Goertzel
paulfjujo
Avatar de l’utilisateur
Expert
Expert
Messages : 2589
Âge : 73
Enregistré en : juillet 2015
Localisation : 01800
Contact :

#2 Message par paulfjujo » dim. 11 déc. 2022 17:12

bonjour Temps-X et à tous,



:+1: Je vois que tu es bien plus courageux que moi ..

l'exemplepour arduino mini pro mon tre qu'effectivement il y a des solutions softwares
mais comme pour le projet Audiophone on reste sur un decodeur Hardware, je ne me suis pas posé
le probleme d'une transposition en XC8 ...
sachant aussi qu"une version PIC asm serait plus transposable qu'un C plus plus arduino .
Le reglage arduino a été assez laborieux .. au niveau amplitude
L'aide d'un decodeur Hardware est un plus , pour bien verfier le décodage fait par le MCU ...
C'est le "multimetre DTMF " !

peut etre que le canevas du code arduino (meme en C ) peut t'orienter dans tes recherches .
car les exemples asm que j'avais trouvés sur le net sont beaucoup trop abstraits.. et sans contexte d'utilisation.

Bon courage !
Aide toi, le ciel ou FantasPic t'aidera

Algorithme de Goertzel
Temps-x
Avatar de l’utilisateur
Expert
Expert
Messages : 2595
Enregistré en : juillet 2016
Localisation : Terre

#3 Message par Temps-x » dim. 11 déc. 2022 17:18

Bonsoir paulfjujo, et tout le forum,

paulfjujo a écrit :Source du message Le reglage arduino a été assez laborieux .. au niveau amplitude


Il faut faire une normalisation logiciel en rajoutant +1 ou -1 pour arrivé à l'amplitude demandé par le programme principal

Merci ! pour tes encouragement, je vais en avoir besoin...

==> A+
:roll: Les requins, c'est comme le langage ASM, c'est le sommet de la chaîne alimentaire. :wink:


Retourner vers « Langage ASM »

Qui est en ligne

Utilisateurs parcourant ce forum : Aucun utilisateur enregistré et 34 invités