Nouvelle horloge numérique de terre temps (NET) en cas de rétro-moderne recyclé (4 / 6 étapes)

Étape 4: Microcontrôleur Code

Voici le code source de l’horloge en Assemblée (.asm) et Hex (.hex), compilé pour le PIC16F627A.  Le code est assez bien documenté, mais voici une explication rapide de ce qui se passe sur.

Explication de code :

Chronométrage :
Le ratio magique pour convertir l’heure habituelle nouvelle terre est 0,25 NET Minutes 1 seconde (ou 1 Minute NET pour toutes les 4 secondes de temps écoulé).  Ceci est calculé les ratios 360 Deg nette par 24h et 60minutes NET par degré de NET.

Au comte NET, le code utilise intégré Timer1 le commandant de bord (TMR1) module avec un cristal de 32,768 kHz externe pour un chronométrage.  Pour atteindre le ratio magique de 1 Min NET toutes les 4 secondes, nous pouvons utiliser le registre TMR1 de 16 bits avec un prescaler de 1:2. (Les 16 bits TMR1 déborde à 65536 comtes, cristal tourne à 32768 impulsions par seconde.  65536/32768 = débordement toutes les 2 secondes.  Il suffit d’ajouter dans le diviseur de 1:2 et voilà !  Interrompre toutes les 4 secondes!)

Affichage :
Le commandant de bord lui-même fonctionne sur l’oscillateur interne de 4MHz.  L’affichage à LED 7 segments cinq est scannés à intervalle fixe contrôlé par Timer0 (TMR0).  Chaque fois que TMR0 déborde, le PIC va commuter l’affichage suivant (pour time division multiplexing).  La clé de multiplexage par répartition temps affiche est pour eux comme balayer rapidement que possible et à intervalles réguliers.  Dans le cas contraire, votre œil percevra de scintillement dans l’affichage.

Temps/boutons de réglage :
Réglage de l’heure s’effectue par deux boutons - un seul bouton incrémente NET par degrés et un NET Minutes. Les boutons sont surveillés en permanence par le PIC dans la boucle principale du programme.  Pour enregistrer les broches e/s, les boutons sont reliés à ce qui est normalement une broche de sortie. Lorsque le commandant de bord vérifie les statut de bouton, il passe ce NIP I/O à une entrée et prend une lecture.

Lorsqu’un bouton est détecté, le programme va à une fonction de réglage de temps spécifique à chaque bouton.  Cette fonction incrémente la variable suivi de temps, à l’instar de l’interruption TMR1.  Une simple pression s’incrémente l’une étape horloge, en maintenant enfoncé que le bouton se traduira à l’avance continue.  Il y a une fonction de retard dans le code de debounce la presse initiale et de fournir le calendrier pour l’avance continue.

Articles Liés

Horloge numérique de Wall-E

Horloge numérique de Wall-E

Salut à tous, ce Noël m'ont donné cette jolie horloge de Wall-E, mais malheureusement c'est très bruyant et Pendant la nuit, il a été insupportable, alors j'ai pensé à en faire une horloge numérique.Etape 1: Ouvrir l'horloge numérique à l'intérieur d
Compléter une horloge numérique avec détecteur de présence (RTC - alarme - PIR - Point de rosée température - humidité -)

Compléter une horloge numérique avec détecteur de présence (RTC - alarme - PIR - Point de rosée température - humidité -)

SalutJ'ai déjà fait quelques projets de pendules à lecture digitale avec Arduino, y compris les écrans LED et LCD, mais celui-ci est plus spécial car j'ai introduit une nouvelle fonctionnalité avec un capteur de mouvement (PIR).Voir la vidéoPrincipal
Horloge numérique Barebone rev2

Horloge numérique Barebone rev2

Hé les gars...Voici un suivi du projet d'horloge numérique que j'ai posté il y a un an. Je n'ai pas tenu compte de la dérive du module RTC ! J'ai trouvé la dérive pour être ainsi passé 1 minute de CCF pour tous les 21 jours, c'est énorme. Il s'agit d
Conception de la logique séquentielle pour une horloge numérique d’apprentissage

Conception de la logique séquentielle pour une horloge numérique d’apprentissage

Cette instructable est pour deux raisons 1) à comprendre et apprendre que les fondements de la logique séquentielle 2) utilisent ces connaissances pour créer une horloge numérique.Pendules à lecture digitale ont été construits par des amateurs d'élec
Nintendo Game Boy à confectionner une horloge numérique

Nintendo Game Boy à confectionner une horloge numérique

Dans ce instructable je vais vous montrer comment j'ai fait mon propre horloge numérique sur le thème des jeux vidéo rétro d'un ancien cassé Nintendo Game Boy.Chose nécessaire ; Un vieux cassé Nintendo Game Boy ne vous dérange pas de coupe vers le ha
Horloge numérique Barebone

Horloge numérique Barebone

Voici une horloge numérique simple et rapide, vous pouvez épingler sur votre mur de la cabine. Bon morceau de conversation et vous indique lorsque son temps de rentrer à la maison...Pour le matériel : J'ai utilisé un tiny2313 (vous pouvez utiliser to
Barre graphique d’affichage horloge numérique

Barre graphique d’affichage horloge numérique

CD4017 est un polyvalent de circuit intégré (et son petit frère CD4022) et a des applications infinies. Ce projet d'horloge numérique est fait de 8CD4017´s plus un 7812 ou 78 L 12 pour l'approvisionnement. Référence temporelle est obtenu à partir de
Horloge numérique de multi couleur

Horloge numérique de multi couleur

Dans ce instructable nous ferons une horloge numérique bicolore qui permet d'afficher l'heure, la température et la dateCe projet PIC utilise un IC-horloge en temps réel pour l'I2C (ou IIC) (DS1307) et un à quatre chiffres sept segments pour créer un
Comment faire un kit horloge numérique basé sur Atmel

Comment faire un kit horloge numérique basé sur Atmel

ce kit d'horloge digtial vient avec ci-dessous les caractéristiques et fonctions :Caractéristiques• Horloge numérique• Compteur• Alarme de temps• ChronomètreBoutons• S1 : bouton de sélection de fonction• S2 : étendre la touche de fonction• S3 : bouto
Modèle tour horloge numérique de films de la « Johnny 5 » circa 1980

Modèle tour horloge numérique de films de la « Johnny 5 » circa 1980

Le numéro 5 est vivant!C'est juste vous années 1980 bozos. J'ai amené M. Johnny 5 retour à la vie dans ce nouveau plaisir instructable. Si vous savez quelque chose sur la numéro 5, vous vous souvenez de lui comme un robot de grade spirituel, aimable,
Comment faire une horloge numérique Arduino

Comment faire une horloge numérique Arduino

Pendules à lecture digitale comptent parmi la grande invention dans le domaine de la science.Avez-vous déjà demandé « Comment faire vos propres pendules à lecture digitale, tout comme dans les films! »???Eh bien, que j'ai également passé, mon enfance
Horloge numérique !

Horloge numérique !

Je vais vous montrer comment faire une horloge numérique avec un arduino.Étape 1: matériaux Arduino uno r3fils de raccordement assortisPack de batterie USB 5vCâble USBaffichage numérique de sept seg (SMA420564)caisse/enclos pour futmontage d'essai sa
Boîte à mouchoirs & horloge numérique Mash-Up !

Boîte à mouchoirs & horloge numérique Mash-Up !

Eh bien, voici une boîte numérique de l'horloge et tissu... MASH UP!!!* dun dun dun!!! *en tout cas...J'ai une horloge numérique à la cible pour 5,00 $ (+ tax bien sûr), et je l'ai eu pendant une longue période.Mais nombreux Instructables m'a inspiré
Horloge numérique de 2 $

Horloge numérique de 2 $

horloge numérique de 2 $vidéoLien produit