Watchdog matériel externe. (2 / 5 étapes)

Étape 2: Codage rapprochée

Voici le code de bibelot, complet. Timer.h est identique à l’étape précédente.
Notez que j’ai mis un délai d’attente 30 second heartbeat--cela donne mon esquisse principale tout le temps
pour exécuter ses 15 + deuxième sous-routine et activer/désactiver les battements du cœur d’État sans expirer.
(La LED ne vélo pas pendant ce temps est sans importance, étant donné que d’autre, visible de l’activité
en cours).

Cette esquisse est un bijou Adafruit 5V.
//
Les actes de bijou comme chien de garde sur n’importe quel hôte disposant d’une réinitialisation matérielle broche qui
fonctions en étant tiré faible au sol.
//
Le bijou surveille hbPin, nécessitant un changement d’État au sein de la hbTime.
//
La LED bijou imite l’état du signal hbPin de l’hôte, ce qui donne un visuel
rythme cardiaque des deux armées avec une LED.
//
Si un changement d’État n’est pas détecté, resetPin est tiré à faible pour forcer un redémarrage sur l’hôte.
De toute évidence, resetPin sur le bijou doit être connecté à la broche de la TVD sur l’hôte et les deux
appareils doivent être sur un terrain d’entente.
//
Au démarrage et après une réinitialisation, resetTime est appelé pour s’assurer que l’hôte a le temps de
bien démarrer et commencer à émettre le signal de battement de coeur.

#include « timer.h »

les constantes ne changeront--utilisé pour définir les codes pin et définir les retards
const int hbPin = 3 ; Le signal provenant de l’hôte permet de paramétrer le
statut de battement de coeur
const int resetPin = 4 ; Utilisez cette broche pour réinitialiser l’hôte
const int ledPin = 1 ; LED intégrée sur bijou
resetTime long non signé const = (1000 * 60 * 3) ; donner à l’hôte 3 minutes pour démarrer
hbTime long non signé const = (1000 * 30) ; cycle de battement de coeur 30 secondes avant la réinitialisation

variables globales
int currState = élevé ;
int prevState = faible ;

Créer des instances de la minuterie
minuterie resetTimer = timer(resetTime) ; réinitialiser la minuterie de retard
minuterie hbTimer = timer(hbTime) ; minuterie de battement de coeur

/* --------------------------------------------------------------------------------- */

void setup() {}

Modes de mettre broche
pinMode (resetPin, sortie) ;
Veillez à ce que nous sommes en marche pour commencer !
digitalWrite (resetPin, HIGH) ;

Commencer avec une mise à zéro des compteurs
resetTimer.reset() ;
hbTimer.reset() ;

}

/* --------------------------------------------------------------------------- */

void loop() {}

ledHeartbeat() ;
Si ((hbTimer.update() == 1) & & (resetTimer.update() == 1)) {}
resetHost(resetPin) ;
}

}

/* --------------------------------------------------------------------------------- */

void ledHeartbeat(void) {}

Pulse la LED pour montrer que nous sommes vivants !
Utiliser le signal de battement de coeur de l’hôte pour conduire la LED
De cette façon, que nous avons la visibilité sur les deux contrôleurs avec 1 indicateur

digitalWrite (ledPin, currState = digitalRead(hbPin)) ;
Si (currState! = prevState) {/ / État a changé
prevState = currState ; Mise à jour
hbTimer.reset() ; Réinitialiser la minuterie
}

}

/* -------------------------------------------------------------------------------- */

void resetHost (int resetPin) {}

digitalWrite (resetPin, basse) ; Désactiver le relais de puissance (transistor)
Delay(5000) ; 5 secondes, donc nous ne cycle des ampoules trop vite
digitalWrite (resetPin, HIGH) ; Le réactiver pour que l’hôte puisse amorcer !
resetTimer.reset() ; La minuterie à zéro

}

Articles Liés

Faire une horloge précise d’Arduino n'utilisant qu’un seul fil - aucun matériel externe nécessaire !

Faire une horloge précise d’Arduino n'utilisant qu’un seul fil - aucun matériel externe nécessaire !

Comment faire une horloge Arduino - sans utiliser les oscillateurs externes ou puces d'horloge :(plusieurs de mes projets sur notre site de recherche - cliquez en haut de la page d'Accueil logo arduino)Vous aurez besoin :Une carte Arduino (à peu près
Comment faire un module logiciel de Tessel-style de matériel Adafruit-style

Comment faire un module logiciel de Tessel-style de matériel Adafruit-style

Tessel est un microcontrôleur connecté à internet avec Wifi intégré et diverses autres fonctionnalités. Il est conçu pour une interaction facile grâce à une série de modules, tels que Bluetooth Low Energy, Servo et d'autres.La compagnie a créé des mo
Ventilateur t/mn avec capteur à effet hall interne et Arduino (Intro à interrompre la matériel et écran LCD)

Ventilateur t/mn avec capteur à effet hall interne et Arduino (Intro à interrompre la matériel et écran LCD)

Pour mon autre projet pour le travail, j'ai dû mesurer la vitesse de rotation du rotor en révolutions par Minute (tr/min) d'un ventilateur d'ordinateur mis à jour le. Il avait trois fils qui sortent et qui fait TIC TAC moi que peut-être qu'il a un mo
BRICOLAGE-matériel Photo sac à dos

BRICOLAGE-matériel Photo sac à dos

si vous aimez expérimenter des techniques photographiques, ou si vous êtes un photographe professionnel, vous avez probablement besoin de voyager avec un équipement très complet. Vous pouvez acheter très bons sacs photographiques du type avec diviseu
Repurposed matériel banc

Repurposed matériel banc

Ce banc a été construit en utilisant une variété de matériaux recyclés et réaffectés.Étape 1: matériauxBois: 2 pièces 45 1/4ème en long4 pièces 23 7/8 en longPalette4 pieds en métalCoussin/rembourrageTissu extérieurÉtape 2: outilsCouteau de fraise/X-
Montage de la plate-forme matérielle de Eyewriter 2.1 (rev B)

Montage de la plate-forme matérielle de Eyewriter 2.1 (rev B)

ce Instructable vous guidera à travers l'Assemblée d'une plate-forme matérielle (rev B) pour soutenir le nouveau système d'oculométrie Eyewriter 2.1 pour l'open source.Pour plus d'informations sur le projet de Eyewriter en général, visitez le site of
Jouer avec les neurones rougeoyants ? Un nouveau cadre pour la simulation interactive de neurone dans le matériel.

Jouer avec les neurones rougeoyants ? Un nouveau cadre pour la simulation interactive de neurone dans le matériel.

La théorie EEPA présente et la mise en œuvre matérielle correspondante ont été développés dans le cadre de mes recherches de thèse de baccalauréat. Les explications données ici sont écrits pour un large public. Si vous êtes intéressé par la thèse, le
Comment se préparer pour les achats de matériel sonore

Comment se préparer pour les achats de matériel sonore

dans ce instructable, j'irai plus comment faire pour déterminer quel équipement audio convient le mieux à vos besoins.  Bien que j'ai vais surtout parler caractéristiques dans la plupart de mes pas, je vais poster des commentaires des principales soc
Ouvrir les ondes cérébrales matériel d’interface

Ouvrir les ondes cérébrales matériel d’interface

mise à jour le 16 juin 2014 pour l'article 9 :vous pouvez aussi aller directement à la Section 9.faire l'interface de haute qualité ondes cérébrales comme le faible coût et la petite taille est mon plus de 20 ans de rêve. Pour ce faire besoin de prod
Banc de test de matériel analogique universelle

Banc de test de matériel analogique universelle

un outil pédagogique de 35 $ pour l'électronique de base et un montage expérimental inestimable pour l'amateur ELECTRONICS.Enseignement de base analogique et numérique électronique au niveau de premier cycle se compose de cours théoriques avec hands-
Cadre de lit simple sans matériel

Cadre de lit simple sans matériel

Outils : Scie sauteuse, scie circulaire, mètre, crayon, finition bois carréeMatériaux: 2 x 12" bois de charpente, panneaux MDF 1/4"Inspiration : Devenait un nouveau matelas, voulait faire un projet hors de lui, voulait quelque chose que je pouva
TAC bricolage : matériel pour des expériences de télépathie machine-homme

TAC bricolage : matériel pour des expériences de télépathie machine-homme

REMARQUE : CET APPAREIL EST MATÉRIEL EXPÉRIMENTAL ET IL FONCTIONNE EN EXÉCUTANT UN COURANT À TRAVERS LE CERVEAU DE L'UTILISATEUR. N'UTILISEZ PAS CET APPAREIL AVANT D'AVOIR LU LA CITATION 1 ET ALLER SUR LA SÉCURITÉ PUBLIÉE LIMITE UNE STIMULATION TRANS
Sensation Code-lecteur - partie 3: Matériel Amp

Sensation Code-lecteur - partie 3: Matériel Amp

Feel Code-(F-T-C) est un lecteur de texte de Code Morse vibra-tactiles. Il a un composant de logiciel et d'un composant matériel. Son but est de rendre possible de lire n'importe quel fichier texte silencieusement et sans regarder l'ordinateur. Avec
VersaBot - matériel Custimaziton Robot

VersaBot - matériel Custimaziton Robot

ce robot a été conçu à l'aide de Invetor 2012 et 2013. Les seules instructions sont un outil de laisser les gens à obtenir une base pour partir, mais continuer à ajouter leurs propres particularités personnelles. Le robot est d'être regardé à faire a