Nocturnal Emissions : Mon Arduino alimenté par Internet activé rêve générateur (6 / 7 étapes)

Étape 6: Nous interrompre ce programme !

Une des choses plus délicats, j’ai dû apprendre pour ce projet était tout sur les interruptions.  Une interruption est un processus qui peut s’exécuter en parallèle à l’arrière-plan tandis que votre dessin s’occupe d’autres choses.  Je ne pouvais pas le bouton pour activer l’imprimante et j’ai décidé que c’était parce qu’avec le Maxbotix capteur de vote tout le temps, la musique et les lumières pour mettre en marche il était trop qui se passe.  Un bouton est une chose parfaite pour une interruption surtout parce qu’il n’arrive pas souvent que.  J’ai entendu dire qu'il décrit de cette façon.  Cassés de votre sonnette de porte et que vous attendez un envoi important des en-têtes de l’angle droit pour votre projet final, qui est due la semaine prochaine.  Vous êtes frénétiquement par écrit votre instructable pour faire Studio et vous ne voulez pas arrêter chaque minute ou deux pour voir si le gars de livraison a déposé le paquet.  Si vous embauchez un lapin de tâche de se tenir à votre porte et vous avertit lorsque le paquet arrive.  C’est comme une interruption !  Votre code maintient à trimer alors que l’interruption opère en parallèle sans interrompre votre code jusqu'à ce qu’il a quelques infos importantes.

Ils semblent compliqués et on en fait plus et donc par le fait qu’il y a beaucoup d’infos sur ces Arduino implémentée interruptions qui seulement semblent fonctionner sur les broches 1 et 2.  J’ai appris sur une interruption de niveau plus profonde appelée une interruption AVR qui peut fonctionner indépendamment de NIP.  Ils semblent peu compliqués parce qu’ils sont écrits dans un code de bas niveau qui ressemble à gobbldygook mais j’ai trouvé le code ici dans les exemples de bouclier vague Adafruit.

Vous commencez par « y compris » AVR au début de votre croquis

#include < avr/pgmspace.h > //so on peut programmer en utilisant le code de l’AVR

Ensuite, vous activez l’interruption comme ça...

interruption AVR initialiser
TCCR2A = 0 ;
TCCR2B = 1 << CS22 | 1 << CS21 | 1 << CS20 ;

TIMER2 débordement Interrupt Enable
TIMSK2 | = 1 << TOIE2 ;

(Je sais, à droite?)

Puis vous identifiez une fonction activée par l’interruption

l’interruption qui s’exécute en parallèle avec la fonction loop et la calle de la fonction check_button()

{SIGNAL(TIMER2_OVF_vect)}
check_button() ;
}

Puis vous programmez la fonction

}

void check_button() {}

buttonState = digitalRead(buttonPin) ;

Si (buttonState == HIGH & & previousButtonState == faible) {}
buttonPressed = 1 ; Utilisez cette variable globale pour dire la fonction boucle que la touche
previousButtonState = élevé ; définir l’état de bouton précédente sur l’état actuel de la touche
}

if(ButtonState == Low) {}
buttonPressed = 0 ; dire le funtion boucle que le bouton n’est pas pressé
previousButtonState = bas ; définir le buttonState antérieur sur l’état de bouton curent
}

}

Maintenant quand les évêchés d’interruption que le bouton est enfoncé il allume la musique et les lumières !

Articles Liés

Comment construire un Robot jouant Arduino alimenté par Chess

Comment construire un Robot jouant Arduino alimenté par Chess

à en juger par le nombre d'échecs liés Instructables, je pense qu'il est sûr de dire que la communauté bénéficie du jeu.  Il peut être difficile, toutefois, de trouver quelqu'un qui joue au même niveau que vous faire.  Pour résoudre ce dilemme et d'a
Arduino alimenté par sonde de température avec écran LCD sortie première fois auteur entrée

Arduino alimenté par sonde de température avec écran LCD sortie première fois auteur entrée

Jamais été un gars un peu de concours, mais j'ai avancé et entré dans pour le premier concours d'auteur de temps, si vous aimez mon intructable ou même d'apprendre quelque chose de nouveau et je pense j'ai gagné votre vote s'il vous plaît ! =]Bonjour
Un spectrophotomètre microplaques Arduino alimenté par

Un spectrophotomètre microplaques Arduino alimenté par

Spectrophotomètres sont communs pièces d'équipement dans un laboratoire de sciences biologiques. Ils exécutent une fonction simple - pour mesurer la quantité de lumière a liquide absorbe à une longueur d'onde particulière. De nombreux produits chimiq
ShotBot - Arduino alimenté par pompe projet

ShotBot - Arduino alimenté par pompe projet

Ce tutoriel de pompe du Arduino est connu comme le projet ShotBot, démontrant un moyen facile de construire un robot battante coup simple. Nous utilisons deux stations de pompage de RobotGeek et du code rapide pour créer un robot battante coup double
Arduino alimenté par boîte aux lettres connectée pour TfCD

Arduino alimenté par boîte aux lettres connectée pour TfCD

Cet appareil vous enverra une notification quand le facteur vous remettra des lettres (ou spam: p). ce guide va vous montrer étape par étape comment le système a été construit et fournit tout le code pour le faire fonctionner.Nous avons utilisé les c
Construire votre propre Arduino alimenté par Satellite pour seulement 2000 USD

Construire votre propre Arduino alimenté par Satellite pour seulement 2000 USD

Mise à jour : trouver la version finale de ce satellite à https://www.indiegogo.com/projects/sateloscope/x/7917212Merci de contribuer vos fonds pour mon projet, s'il vous plaît... ***Étape 1: Introduction Mise à jour : trouver la version finale de ce
Robopod l’Arduino alimenté par Robot

Robopod l’Arduino alimenté par Robot

Robopod est un robot arduino simple qui utilise des antennes pour détecter les obstacles. Moteurs de Robopod sont contrôlées par un pont en H et alimentés par une pile de 9 volts.  Circuit de Robopods est basé sur une maquette pour modification facil
Arduino alimenté par votre SmartPhone (avec SERIAL) - partie 1 - Sound and Vibration Actions

Arduino alimenté par votre SmartPhone (avec SERIAL) - partie 1 - Sound and Vibration Actions

Bienvenue dans la première partie de cette série. Dans cette série, que nous allons essayer sortir autant que nous pouvons de vous smartphone (android actuellement) à votre microcontrôleur à l'aide de câble série (câble OTG).Dans cette partie, nous v
Clef de Morse iambique Arduino alimenté par

Clef de Morse iambique Arduino alimenté par

Remarque : Dans ce Instructable, je suppose que vous savez comment fonctionne une maquette, comment un Arduino fonctionne (comment vous programmez, comment il marche et autres) et vous savez comment câbler le RGB LED dans ce projet. Si vous ne connai
GigginoBot 2.0 : Arduino alimenté par robot

GigginoBot 2.0 : Arduino alimenté par robot

il s'agit de GigginoBot. Il est construit de recyclage d'une vieille affaire d'emballage de bouteille de vin. C'est Arduno basé et il a plusieurs capteurs. Dans la vidéo suivante, il utilise seulement les deux capteurs sonar sur le dessus pour se dép
Arduino alimenté par trois couleur 8 x 8 Led Array

Arduino alimenté par trois couleur 8 x 8 Led Array

comment connecter une couleur trois, comme en rouge, vert et bleu, colonne 8 par 8 rang de matrice de LED pour un Arduino.  Le numéro de modèle du tableau en cours d'utilisation est CRM-2388ARGB-L.  Il n'est pas venu avec des instructions de câblage,
Arduino alimenté par feu

Arduino alimenté par feu

prêtSTABLEGO GO GOÉtape 1: feux de circulationFeux de circulation sont très importants pour les routes qu'ils contrôlent le flux du trafic. L'un d'entre eux il est très simple et nous allons le faire!!Étape 2: Collecte de matérielMatériaux nécessaire
Arduino alimenté Infared chose

Arduino alimenté Infared chose

Bonjour, ceci est mon premier instructible. Je vais vous montrer comment faire un arduino alimenté par un capteur analogique lecteur (je vais utiliser une photodiode infrarouge).Étape 1: pièces Vous aurez besoin de plusieurs choses à faire ceci :1. u
Faire un Arduino alimenté automatisation de Rideau

Faire un Arduino alimenté automatisation de Rideau

Dans cette vidéo j'ai commencer à travailler sur vous montrant comment faire un dispositif Arduino alimenté par qui va ouvrir et fermer les rideaux !À l'aide d'une corde et un servo de rotation continue, je suis capable de créer un système de poulies