Table des matières:

Chronomètre numérique CloudX M633 simple : 4 étapes
Chronomètre numérique CloudX M633 simple : 4 étapes

Vidéo: Chronomètre numérique CloudX M633 simple : 4 étapes

Vidéo: Chronomètre numérique CloudX M633 simple : 4 étapes
Vidéo: CloudX Flight – Casque-micro USB sans fil pour Xbox One 2024, Juillet
Anonim
Chronomètre numérique simple CloudX M633
Chronomètre numérique simple CloudX M633

Dans ce projet, nous allons créer une version d'une horloge numérique qui peut enregistrer les heures, les minutes et les secondes, tout comme un chronomètre sur votre téléphone portable ! Nous allons utiliser un écran LCD pour afficher l'heure

Étape 1: Composant requis

Composant nécessaire
Composant nécessaire
Composant nécessaire
Composant nécessaire
Composant nécessaire
Composant nécessaire
  • CloudX M633
  • Carte logicielle CloudX
  • Affichage LCD
  • Potentiomètre
  • Bouton poussoir
  • Planche à pain
  • Cavalier
  • Câble USB V3
  • 10k

Vous pouvez obtenir votre composant ici

Étape 2: MATÉRIEL

MATÉRIEL
MATÉRIEL

Étape 1: Fixez l'écran LCD dans la planche à pain et connectez-vous à la carte CloudX M633 comme suit

  • R/S à la broche 1
  • ENA à pin2
  • D4 à broche3
  • D5 à pin4
  • D6 à pin5
  • D7 à pin6

De plus, câblez un pot de 10k à +5V et GND, avec son essuie-glace (sortie) à la broche VO des écrans LCD.

  • connecter Vss et K à GND
  • connecter Vdd et A à +5v
  • connecter R/W à à GND

N. B: A est l'anode, K est la cathode

Étape 2

  • Fixez le premier bouton-poussoir (Start et Stop) dans la planche à pain et connectez la première jambe à 10k et Pin7 de la carte CloudX et l'autre jambe à GND.
  • Fixez le deuxième bouton-poussoir (réinitialisation) dans la carte d'essai et connectez la première jambe à 10k et la broche 8 de la carte CloudX et l'autre jambe à GND.

Étape 3: CODAGE

Copiez ce code dans votre IDE CloudX

#include #include #include

#define START_PAUSE 7

#define RESET 8 #define START 1 #define PAUSE 0

car timer = "00:00:00:0";

caractère non signé HH, MM, SS, mSS, mscount, RFlag=0; bit OmSF=0, S_PFlag=0;

interrompre TimerOmSD(){

si (INTCONbits. T0IF) {

INTCONbits. T0IF = 0; TMR0 += 60; if (mscount++ == 10) { mscount = 0; OmSF = 1; } } }

mettre en place(){

//configuration ici

pinMode(START_PAUSE, INPUT);

pinMode(RESET, INPUT); lcdSetting (1, 2, 3, 4, 5, 6); lcdCmd(effacer); lcdCmd(curseur désactivé); lcdWriteText(1, 1, "CLOUDX CHRONOMÈTRE");

boucle(){

//Programme ici

if(!readPin(START_PAUSE)) {

if(S_PFlag == START){ delayMs(200); INTCON = 0b00000000; OPTION_REG = 0b00000000; mSS--; }

if(S_PFlag == PAUSE && RFlag == 1){

délaiMs(200); INTCON = 0b1110000; OPTION_REG = 0b00000111; }

if(S_PFlag == PAUSE && RFlag == 0){

délaiMs(200); INTCON = 0b1110000; OPTION_REG = 0b00000111; TMR0 += 60; mscount=0; OmSF = 0; } S_PFlag = ~S_PFlag; Drapeau RF = 1; }

if(!readPin(RESET)){

délaiMs(200); HH = 0; MM = 0; SS = 0; mSS = 0; INTCON = 0b00000000; OPTION_REG = 0b00000000; mscount=0; OmSF = 0; RFlag = 0; S_PFlag = PAUSE;

}

si (OmSF){

OmSF = ~ OmSF; mSS++; si(mSS==10) SS ++; si(SS==60)MM++; si(MM==60)HH++; }

si(HH==100) HH=0; si(MM==60) MM=0; si(SS==60) SS=0; si(mSS==10) mSS=0; temporisateur[1] = (HH%10) +48; temporisateur[0] = (HH/10) +48; temporisateur[4] = (MM%10) +48; temporisateur[3] = (MM/10) +48; temporisateur[7] = (SS%10) +48; temporisateur[6] = (SS/10) +48; temporisateur[9] = mSS +48; lcdWriteText(2, 2, minuteur);

}

}

Conseillé: