Arduino haute vitesse d’Oscilloscope avec interface PC (4 / 7 étapes)

Étape 4: Mise en place de l’interruption pour le matériel déclenchée version

Cette méthode est très similaire à la version du logiciel.

Déclenchement est géré différemment.

Digital Port deux doit être connecté à 1 entrée analogique, pour ce faire.

Essentiellement, si aucun déclenchement n’est sélectionnée, l’interruption de l’adc est activée et données sont capturées immédiatement. Si le déclenchement est sélectionné une interruption sur le port numérique 2 est utilisée pour permettre l’interruption sur la voie de l’adc 1.

Port Digital 2 peut être configuré pour lire les signaux analogiques et de générer une interruption sur la hausse ou en baisse de bords de données. C’est très rapide.

Ma routine d’interruption est appelé gotinterrupt et que j’utilise le port numérique 2 l’id de l’interruption est 0.

octet const ExtInterrupt = 2 ;

pinMode(ExtInterrupt,INPUT) ;

attachInterrupt (0, gotinterrupt, RISING) ;

attachInterrupt (0, gotinterrupt, chute) ;

.

Le drapeau a déclenché des commandes si l’interruption des voies numériques 2 démarre l’interruption de la voie analogique 1. Lors du déclenchement est false, l’interruption commence l’interruption adc lorsqu’il détecte un bord à l’entrée analogique.

.

même que le logiciel interrompre le code jusqu'à ici...

SBI(ADCSRA,Aden) ; activez l’ADC

alors...

Si (déclencheur == 0) {}

SBI(ADCSRA,ADSC) ; commencer les mesures de l’ADC sur interrupt

StartTime=micros() ;

} else {}

permettre à pw2 interruption commencer l’interruption de l’adc

déclenchement = false ;

}

SEI() ; activer les interruptions

.

Le code d’interruption

1) l’interruption du port 2 est desservie par gotinterrupt

Cette interruption est activée par un bord positif ou négatif sur le port 2.

Il ne fait rien tant que déclenché a la valeur false.

void gotinterrupt() {}
Si (! déclenchée) {}

déclenchement = true ;

SBI(ADCSRA,ADSC) ; commencer les mesures de l’ADC sur interrupt

StartTime=micros() ; starttime record pour le calcul de l’intervalle

}

}

2) interrompre le service adc est desservie par ISR(ADC_vect)

Variable bufcount stocke la position dans la mémoire tampon, dont la taille est BUF_SIZE (= 1000)

Les données sont stockées dans des endroits bufa(0) à bufa(999)

Lorsque le tampon est plein drapeau writeit a la valeur true et l’adc est désactivé. (cbi(ADCSRA,ADEN);)

.

Routine d’interruption de l’ADC
C’est la clé pour le programme!!

{ISR(ADC_vect)}

Bufa [bufcount] = ADCH ;

bufcount ++ ; compteur d’incrémentation tampon

Si (bufcount == BUF_SIZE) {}

CBI(ADCSRA,Aden) ; désactiver l’ADC

EndTime=micros() ; endtime record pour le calcul de l’intervalle

writeit = true ; drapeau qu’une écriture est nécessaire

}

}

Articles Liés

Arduino basé maison chauffage Controler avec Interface utilisateur SMS

Arduino basé maison chauffage Controler avec Interface utilisateur SMS

le projet fournit des instructions et le code pour générer un régulateur de chauffage pour votre maison de campagne maison ou à distance, qui peut être contrôlé et surveillé par GSM, par l'intermédiaire de commandes SMS. J'ai commencé à concevoir ce
Arduino haute vitesse photographie déclenchement

Arduino haute vitesse photographie déclenchement

[youtube]jsXu4jV2BiI[/youtube]
ARDUINO photogate pour la photographie haute vitesse

ARDUINO photogate pour la photographie haute vitesse

Au cours de ces dernières semaines que j'ai cherché sur internet pour la photographie de haute vitesse en utilisant un ARDUINO, jusqu'à présent, plus de 90 % des projets j'ai trouvé son utilisé comme déclencheur. Si vous essayez d'obtenir une image d
Photographie haute vitesse Arduino

Photographie haute vitesse Arduino

Dans ce instructable je vais vous montrer comment j'ai fait une plate-forme de photographie haute vitesse Arduino contrôlée pour pouvoir prendre des photos de projections de liquides. Cette plate-forme permet également de photographier les autres cho
Comment faire un synthétiseur sonore Arduino avec interface MIDI

Comment faire un synthétiseur sonore Arduino avec interface MIDI

Avec ce synthétiseur, vous pouvez faire Arduino reproduire des formes d'ondes totalement personnalisés. En raison de l'interface MIDI, il peut être connecté à n'importe quel instrument qui disposent et jouer avec le son souhaité.Étape 1: matériauxArd
Haute vitesse Photo Arduino : HighSpeeduino !

Haute vitesse Photo Arduino : HighSpeeduino !

Aujourd'hui c'est jour de la photographie de haute vitesse !Le concept est de prendre une photographie de l'exposition « long », disons de 4 secondes, dans une pièce (très) foncée (une salle de bain dans notre cas). Vous vous retrouvez avec une image
Johnny5 Arduino Robot DfRobotshop rover avec interface html télécommande

Johnny5 Arduino Robot DfRobotshop rover avec interface html télécommande

Dans ce post, j'ai expliquer étape par étape comment construire un Arduino base Robot et programmer avec Javascript. J'ai expliquer quels choix de conception que j'ai fait, les cadres et les technologies que j'ai utilisé et comment je programme et co
Carte d’audio externe USB avec interface optique de S/PDIF POF

Carte d’audio externe USB avec interface optique de S/PDIF POF

le but du projet était de créer une carte audio externe de USB, qui pourrait être en mesure de :1) servir comme d'habitude externe carte audio USB avec sortie casque et entrée ligne audio2) peut transmettre les données audio numériques à distance rel
Serveur DNS dynamique avec Interface de Webcam FOSCAM Esp8266 et OSD gratuit

Serveur DNS dynamique avec Interface de Webcam FOSCAM Esp8266 et OSD gratuit

Faites votre propre serveur DDNS pour accéder à vos dispositifs d'accueil internet, aucun service payant nécessaire !Contrôler les caméras Foscam depuis votre téléphone, avec à l'écran contrôles. Voter pour elle si vous le souhaitez !Cette configurat
Photographie extérieure haute vitesse

Photographie extérieure haute vitesse

photographie haute vitesse est généralement effectuée dans une pièce sombre avec des équipements dédiés (contrôlé flash à distance par exemple)...L'instructable proposée ici permet de faire de la photographie de haute vitesse à l'extérieur (et profit
Arduino double ultrasons liquide mesureur avec site Web intégré

Arduino double ultrasons liquide mesureur avec site Web intégré

ce projet permet de surveiller le niveau de 2 récipients remplis de liquide. Les niveaux peuvent être affichées sur un site Web. L'exemple suivant a un capteur relié par fil et un autre capteur connecté sans fil par XBee.Le site Web vous permettent d
Arduino alimenté citrouille d’Halloween avec détection de mouvement

Arduino alimenté citrouille d’Halloween avec détection de mouvement

SalutCet Instructable va vous montrer comment faire certains Halloween décorations dont arduino alimenté citrouille d'Halloween avec détection de mouvement.Étape 1: Faire la citrouille d'Halloween Matériaux :Ballon rondVieux journauxFarine lisseEauTe
Comment construire un Arduino WiFi 4 x 4 avec contrôleur Android

Comment construire un Arduino WiFi 4 x 4 avec contrôleur Android

voitures RC peuvent être WiFi voitures...?Voitures RC sont cool, mais les voitures RC à bas prix ont une portée limitée et seulement peuvent être contrôlées avec le contrôleur spécifique fourni avec la voiture.J'ai acheté une jeep RC, équipée de 4 ro
Comment configurer la braise pour l’impression 3D haute vitesse

Comment configurer la braise pour l’impression 3D haute vitesse

L'un des principaux avantages de l'impression 3D est qu'il peut être utilisé pour fabriquer des pièces qui ne peuvent pas être faites en utilisant n'importe quelle autre technique donnant la liberté de grande designer et leur permettant de produire d