Détection de fréquence Arduino (1 / 4 étapes)

Etape 1: Détection de Signal pente

Tout d’abord je voulais expérimenter avec détection de crête, donc j’ai écrit un morceau de code (ci-dessous) qui émet un signal élevé lorsque le signal audio entrant a une pente positive et fournit en sortie un signal faible lorsque le signal audio entrant a une pente négative.  Pour une onde sinusoïdale simple, cela va générer un signal d’impulsion avec la même fréquence que l’onde sinusoïdale et un facteur de marche de 50 % (une onde carrée).  De cette façon, les sommets sont toujours situés où l’onde du pouls permet de basculer entre ses États hautes et bas.

La partie importante du code est reproduite ci-après.  Tout ce code se déroule dans l’ADC interrupt (interruptions et s’exécute chaque fois qu’un analogue de la nouvel valeur est prêt d’A0, plus d’infos sur quelles interruptions sont et pourquoi nous utilisons eux peuvent être trouvés ici)

prevData = newData ; valeur précédente //store
newData = ADCH ; //get valeur de A0
Si (newData > prevData) {//if pente positive
PORTB | = B00010000 ; //set broche 12 haut
}
ElseIf (newData < prevData) {si pente négative
PORTB & = B11101111 ; //set broche 12 basses
}

Je dois souligner ici que dans ce tutoriel j’utilise direct manipulation port pour allumer/éteindre la sortie broche (12) de l’Arduino.  J’ai fait cela parce que la manipulation de port est une manière beaucoup plus rapide de traiter les broches de l’Arduino que la commande digitalWrite().  Étant donné que j’ai dû mettre tout le code ci-dessus, à l’intérieur d’une routine d’interruption qui allait à 38,5 kHz, j’ai besoin du code d’être aussi efficace que possible.  Vous pouvez lire plus d’infos sur port de manipulation sur le site de l’Arduino, ou voir les commentaires que j’ai écrit ci-dessus pour comprendre en quoi consiste chaque ligne.  Vous noterez également dans le code ci-dessous que j’ai utilisé certaines commandes inconnues dans la fonction setup() pour que je puisse obtenir des entrées analogiques de l’Arduino à échantillon à haute fréquence.  Plus d’informations sur qui se trouvent dans mon tutoriel Arduino Audio Input.

Figure 1 montre la sortie d’impulsions en bleu et l’onde sinusoïdale en jaune sur un oscilloscope.  Avis comment les impulsions de sortie bascule à chaque fois que l’onde sinusoïdale atteint un maximum ou minimum.  Fig. 2 montre les impulsions de sortie en bleu pour une forme d’onde arbitraire en jaune.  Notez ici comment la vague d’impulsion prend sur un cycle d’utilisation irrégulière car le signal entrant (jaune) est beaucoup plus compliqué qu’une onde sinusoïdale.

			
          

Articles Liés

Lampe RGB à détection sonore en utilisant Arduino

Lampe RGB à détection sonore en utilisant Arduino

SalutTout d'abord ce projet n'est pas encore fini !Dans ce projet, j'ai fais une lampe aux couleurs multiples à l'aide de LED RGB. Mon idée est d'essayer de laisser la lampe changer couleur s'il détecte un son dans la région. Si vous s'énerver avec l
Détection d’angle mort : Arduino + distance capteur + Matlab GUI

Détection d’angle mort : Arduino + distance capteur + Matlab GUI

Ce projet vise à étudier la possibilité d'utiliser un capteur de distance ultrason HC-SR04 pour fournir une indication d'un véhicule dans l'angle mort de pilotes. S'il vous plaît poster des questions ci-dessous et je serai heureux d'y répondre.Plus d
Clair détection + données journalisation arduino blanc

Clair détection + données journalisation arduino blanc

Je ne peux pas écrire anglais, que c'est tous des pays-bas aux anglais traduits par google traducteurce que tu l'as faitJe suis tellement finicking que la lumière la plus brillante point avec 1 Rechercher ldr.dans l'avenir pour moi de servir un panne
Fréquence détection à l’aide de DSP des Techniques fiables

Fréquence détection à l’aide de DSP des Techniques fiables

détection de fréquence précise est importante pour de nombreux projets tels que guitare/Piano Tuners, analyseurs de Vibration, moniteurs de fréquence cardiaque, analyse capteur MEMs et Instruments de laboratoire.Il y a eu de nombreux exemples de proj
Algorithme de détection de Pitch Arduino (à l’aide de AMDF)

Algorithme de détection de Pitch Arduino (à l’aide de AMDF)

Dernière mise à jour: 16 janvier 2016 (récemment ajouté un code matlab améliorée (step7) avec échantillons et beaucoup de notes)Avant-propos : Ce Instructable est écrite dans un style pour montrer comment j'ai analysés, testés, mis en œuvre et optimi
Accordeur de guitare Arduino

Accordeur de guitare Arduino

Construisez votre propre accordeur de guitare électrique à l'aide de l'Arduino ! J'ai décidé de faire cela parce que je voulais expérimenter avec entrée audio et la détection de fréquence. J'ai utilisé la méthode de Amanda Ghassaei pour la détection
Guitare de changement de couleur rougeoyante

Guitare de changement de couleur rougeoyante

Au Royaume du rock and roll, il est important de se démarquer. Avec des millions de gens dans ce monde qui peuvent jouer de la guitare, simplement bien jouer juste ne va pas couper. Vous avez besoin de quelque chose en plus à se lever comme un Dieu d
Traçage de données de l’Arduino

Traçage de données de l’Arduino

Arduino n'a pas beaucoup en termes de possibilités d'analyse et de débogage intégrée, il peut donc être très utile de disposer d'une installation pour tracer les données qui sont envoyées de Arduino via le Port série.Il y a plusieurs façons de le fai
Comment faire une télécommande sentient web-marionnette de piratage de Twitter, Google, Skype, Arduino et traitement !

Comment faire une télécommande sentient web-marionnette de piratage de Twitter, Google, Skype, Arduino et traitement !

Comment pour manipuler un objet physique sur le web en utilisant les services web communs et leurs données accessibles simplement nourrit, avec certains ajouté ouvrir des choses source de décoder et de manipuler ces données et en fin de compte utilis
Détecteur de fréquence à l’aide de PIC 12F683 processeur

Détecteur de fréquence à l’aide de PIC 12F683 processeur

ce projet décrit le matériel et j'ai développé un logiciel qui permet à un microprocesseur PIC de petite 8 bits de fonctionner comme un détecteur de fréquence unique ou un décodeur de tonalité.Un tel circuit peut être utilisé pour détecter la présenc
Un commutateur capacitif pour Arduino

Un commutateur capacitif pour Arduino

Il s'agit d'un moyen simple de réaliser et d'utiliser des commutateurs capacitifs avec un Arduino ou un dispositif similaire comme un Pi de framboise. Ces commutateurs sont toucher sensible, peuvent être n'importe quel forme ou taille et peuvent être
Générateur de signal sinusoïdal triphasé 3 basé sur Arduino Due

Générateur de signal sinusoïdal triphasé 3 basé sur Arduino Due

le but de cette action est d'aider quelqu'un qui essaye d'utiliser du Due une plus grande performance + manque de référence + fiche technique non utile.ce projet est capable de générer jusqu'à 3 phase sinusoïde @ 256 échantillons / cycle à basse fréq
Arduino de capteur de mouvement

Arduino de capteur de mouvement

Bonjour tout le mondeAlarmes de capteur de mouvement permettent aux individus et entreprises protéger leurs maisons et les chantiers des intrus. Ces appareils fonctionnent à l'aide de lumière, un micro-ondes, vibrations et autres méthodes pour détect
Change Tracker

Change Tracker

J'ai décidé de donner un tel titre après avoir réalisé comment les changements dans la vie sont importantes. Heureusement, dans le monde de l'électronique, ces changements peuvent être quantifiés et peuvent également être utilisés dans les systèmes d