Un guide de démarrage complet pour rea (6 / 10 étapes)

Étape 6: minuteries

Timers sont une fonction polyvalente de micros, une fois que vous apprendrez comment les utiliser, vous trouverez une foule de choses s’en servir pour !

Une minuterie est un dispositif de comptage simple dans votre micro, il est également connu comme un compteur pour cette raison.
À chaque graduation ils incrémentent eux-mêmes.
Vous pouvez vérifier la valeur lorsque vous avez besoin d’une idée de combien de temps a passé, ou vous pouvez les obtenir pour déclencher une interruption pour vous laisser savoir quand une certaine valeur a été atteint.
Minuteries ne sont pas très précis, si vous avez besoin de précision, vous voudrez une horloge temps réel (RTC).
Ils sont cependant assez bon pour des tâches plus

Donc avant d’entrer en elle, permet d’examiner comment une minuterie fonctionne réellement.
Chaque battement d’horloge du micro est introduit dans le module timer.
Ici, elle peut être divisée en différentes quantités pour produire une tique plus lente (nous aurons à celui plus tard).
Sur la tique qui sortent le diviseur, la minuterie ajoute 1 à la valeur de registre c' est.

Comme les registres que nous avons déjà parcouru, celui-ci peut être lues ou écrite.
Vous pouvez voir ce que le nombre de cycles est à, et basé sur la vitesse d’horloge et le séparateur, vous pouvez déterminer approximativement combien de temps a passé.
Lorsque la minuterie atteint sa limite (255 pour une minuterie de 8 bit, 65535 pour un 16-bit timer) il réinitialise à 0 et commence à compter à nouveau.
Si vous activez des interruptions, il avertira votre code que cela s’est produit.
Vous pouvez également définir une valeur de comparaison qui déclenchera une interruption si vous souhaitez être informé d’un temps la plus courte alors déborder.

Si vous avez besoin mesurer une plus longue période de temps, vous pouvez utiliser un diviseur d’horloge (penser que c’est un diviseur).
Par exemple, un diviseur de 8 enverra seulement une tique au compteur après que elle a reçu 8 tiques de l’horloge système.
Vous perdez la précision, mais vous pouvez mesurer une plus longue période de temps.

Si vous voulez mesurer une très longue période de temps (disons 10 minutes, qui est un temps long pour votre micro rapide!), vous pouvez compter combien de fois l’over flow interruption est déclenchée et agir basé là-dessus.

Un moyen facile de travailler sur les réglages de l’horloge est d’utiliser une calculatrice comme celui-ci :
http://Frank.circleofcurrent.com/cache/avrtimercalc.htm

Ainsi, assez explication, nous allons entrer dans un code !

L’exemple ici va montrer comment utiliser l’interruption de débordement pour de longues périodes de temps, pour voir comment des périodes plus petits (microsecondes & millisecondes par exemple), jetez un oeil sur le code du récepteur IR, qui fait largement appel à la fois les signaux entrants de télécommande.

Mettre en place votre maquette comme dans l’image et télécharger le code ci-joint. (Définir l’horloge de la micro à 1MHz)
Lorsque vous appuyez sur le bouton, le voyant va s’allumer et rester allumé pendant 30 secondes.
Si vous appuyez de nouveau sur le bouton, la minuterie sera réinitialisée.

Nous allons donc examiner le code.
La boucle principale est assez standard, mis en place la LED et le bouton, activer les interruptions (n’oubliez pas cela!).
Lorsque vous appuyez sur le bouton appeler la fonction « start_timer ».

start_timer définit le Prédiviseur à 1024, permettre l’interruption de débordement pour timer0, effacer nos overflow_count et désactivez la minuterie.
Maintenant, chaque fois que l’horloge passe plus de 255, l’interruption est appelée.

L’interruption est la fonction spécialement nommée ISR(TIMER0_OVF_vect)

Ici, nous vérifions si nous avons débordé suffisamment de fois (calculé avec le site calculatrice ci-dessus), et si nous devons nous désactiver l’interruption de la minuterie et éteindre la LED.
Dans le cas contraire nous simplement incrémenter notre compte et laisser la minuterie à recommencer.

Assez simple à droite ?
Cependant, la beauté de celui-ci est que vous pouvez avoir d’autre code exécuté alors que la minuterie atteint.
Lorsqu’elle déborde, il y aura un petit détour à l’Interrupt Service Routine (ISR), et une fois que c’est fait il retournera à votre code en cours d’exécution précédemment comme si de rien était !
Mieux vaut donc un simple retard, que vous pouvez faire plus de travail ou aller pour dormir pour économiser l’énergie !

Articles Liés

Guide du débutant complet pour les fichiers Raw et traitement Raw

Guide du débutant complet pour les fichiers Raw et traitement Raw

Une des premières choses que j'ai appris la photographie était sur un type de fichier connu comme un fichier Raw. Souvent quand une personne commence à la photographie, il ou elle n'est pas réaliser le potentiel des fichiers Raw. Dans un premier temp
Baileigh combinaison cisaillement frein Roll : Un Guide de démarrage rapide pour Pier 9

Baileigh combinaison cisaillement frein Roll : Un Guide de démarrage rapide pour Pier 9

La combinaison de Baileigh cisaillement/frein/rouleau se trouve à l'atelier de 9 Pier Autodesk dans l'atelier de métal. Si vous souhaitez travailler avec tôle au quai 9, cet outil est pour vous.L'outil Baileigh combinaison peut cisaille à tôle d'acie
Guide d’un Idiot complet pour rendre l’appareil de lumière LED planté Aquarium

Guide d’un Idiot complet pour rendre l’appareil de lumière LED planté Aquarium

Jetez un oeil à mon site Web pour plus de tutoriels et de poisson photos : www.playsofrays.comComme toujours, je vous écris cela pour les gens qui n'ont aucune expérience préalable avec LEDs, électriques et électronique fonctionne exactement comme j'
Guide de démarrage rapide pour 3Doodler 2.0

Guide de démarrage rapide pour 3Doodler 2.0

Étape 1: Faire connaissance avec le 3Doodler 2.0 Étape 2: Mettre en marche De l'allumer prise dedans et puis déplacez l'interrupteur à haute ou basse. (PLA/bois) lo (ABS, Flexy) hauteEtape 3: Attendez s'allument pour indiquer que c'est prêt Si vous l
Le Guide complet pour mettre sur une nouvelle ligne de pêche

Le Guide complet pour mettre sur une nouvelle ligne de pêche

Fait à l'extérieur de ressembler à ceci, ou pire encore ? Eh bien, pendant que vous attendez pour faire fondre et aller loin pourquoi ne pas Préparez-vous votre attirail de pêche pour le très attendu printemps.C'est le guide complet pour mettre sur u
Devenir un fabricant : le guide complet pour une photocopieuse entièrement fonctionnel : outils

Devenir un fabricant : le guide complet pour une photocopieuse entièrement fonctionnel : outils

Ce qui est un fabricant ? Un fabricant est un DIY'er, recycle et reuse'er et un artisan. Ils prennent whats pas et faire ce qui est Makers ont non seulement habilité, mais également comme la détermination de son projet. Que faut-il pour devenir un fa
Obtenir commencé avec le capteur sonar de Maxbotix - guide de démarrage rapide

Obtenir commencé avec le capteur sonar de Maxbotix - guide de démarrage rapide

The MaxSonar EZ1 fournit très courte à longue distance détection et télémétrie, dans un très petit paquet. Il peut détecter des objets allant de 0-pouces à pouces 254 (6,45 mètres) et fournit des informations de gamme de sonar de 6 pouces sur à 254 p
Mannequin de Linkit un Guide de démarrage

Mannequin de Linkit un Guide de démarrage

Depuis que j'ai reçu mon promotionnel Linkit une planche, j'ai été jouer avec elle pour le faire travailler et d'étudier ses différentes fonctionnalités. Dans un premier temps, que j'ai décidé de publier mon premier ible en utilisant le Linkit One d'
Guide de démarrage rapide : Print3d Mart

Guide de démarrage rapide : Print3d Mart

Il s'agit d'un guide simple mais complet pour configurer votre compte pour vous lever et courir sur Print3d Mart !Étape 1: Inscrivez-vous et créez un compte gratuitLa toute première chose que vous devez faire est de créer un compte gratuit. Aller à P
Android - le guide complet pour le déplacement installé apps utilisant ADB et emplacement d’installation de changer la valeur par défaut

Android - le guide complet pour le déplacement installé apps utilisant ADB et emplacement d’installation de changer la valeur par défaut

AVERTISSEMENT :Je ne peux pas dire si les méthodes expliquées fonctionnera sur tous les appareils, si boubt il faudra un dispositif enraciné et les accès root via ADB.Il y a toujours une chance que cela ne fonctionnera pas, donc faire une première sa
Etiquette de polymère de lithium : Un Guide complet pour travailler avec LiPo

Etiquette de polymère de lithium : Un Guide complet pour travailler avec LiPo

ce Instructable j'irai sur les bases du bon remplissage, déchargement, manutention, utilisation, stockage et le soin des batteries lithium-polymère donc vous pouvez les utiliser en toute sécurité et efficacement dans vos projets futurs.  Maintenant,
Guide de démarrage un Edison complet Intel se

Guide de démarrage un Edison complet Intel se

J'ai récemment acquis un IoT Intel Developer Kit, dans le cadre d'une campagne Instructable. Je suis familier avec certains modèles de traitement intégré et microcontrôleur environnements tels que l'Arduino, mais j'ai trouvé se lever et courir avec l
Un Guide complet pour l’Airsoft

Un Guide complet pour l’Airsoft

je jouent Airsoft depuis environ 2 ans maintenant et je suis accro à ce sport. Et oui, il est considéré comme un sport ! Pas assez de gens considèrent comme un, donc je veux garder ça va, vous savez. J'aime Airsoft parce qu'elle est compétitive, il p
Le Guide complet pour vivre en bonne santé, heureux et coffre-fort

Le Guide complet pour vivre en bonne santé, heureux et coffre-fort

Psst, vous pouvez garder un secret ? Si vous le pouvez, je vais vous dire le secret pour perdre du poids, obtenir en bonne santé et mener une vie longue et prospère. L'industrie du régime et d'exercice aux Etats-Unis est une affaire de plusieurs mill