Sisällysluettelo:

Yksinkertainen CloudX M633 digitaalinen sekuntikello: 4 vaihetta
Yksinkertainen CloudX M633 digitaalinen sekuntikello: 4 vaihetta

Video: Yksinkertainen CloudX M633 digitaalinen sekuntikello: 4 vaihetta

Video: Yksinkertainen CloudX M633 digitaalinen sekuntikello: 4 vaihetta
Video: DaNang Vietnam in October (low season) | Prices for food, accommodation, mobile, bike rent 2024, Marraskuu
Anonim
Yksinkertainen CloudX M633 digitaalinen sekuntikello
Yksinkertainen CloudX M633 digitaalinen sekuntikello

Tässä projektissa aiomme tehdä digitaalisen kellon version, joka voi tallentaa tuntien, minuuttien ja sekuntien tiedot aivan kuten sekuntikello matkapuhelimessasi! Käytämme LCD -näyttöä ajan näyttämiseen

Vaihe 1: Tarvittava komponentti

Komponentti tarvitaan
Komponentti tarvitaan
Komponentti tarvitaan
Komponentti tarvitaan
Komponentti tarvitaan
Komponentti tarvitaan
  • CloudX M633
  • CloudX SoftCard
  • LCD -näyttö
  • Potentiometri
  • Paina nappia
  • Leipälauta
  • Hyppyjohdin
  • V3 USB -kaapeli
  • 10k

Komponentin saat täältä

Vaihe 2: LAITTEISTO

LAITTEISTO
LAITTEISTO

Vaihe 1: Kiinnitä LCD -näyttö leipätauluun ja muodosta yhteys CloudX M633 -levyyn seuraavalla tavalla

  • R/S nastaan 1
  • ENA pin2: een
  • D4 - nasta 3
  • D5 - pin4
  • D6 - nasta 5
  • D7 - nasta 6

Kytke lisäksi 10k: n potti +5V ja GND, pyyhkimellä (lähtö) LCD -näyttöjen VO -nastaan.

  • liitä Vss ja K GND: hen
  • kytke Vdd ja A +5v
  • kytke R/W GND: hen

Huom.: A on anodi, K on katodi

Vaihe 2

  • Kiinnitä leipätaulun ensimmäinen painike (Käynnistä ja Pysäytä) ja yhdistä ensimmäinen jalka CloudX Boardin 10 k: n ja Pin7: n ja toinen jalka GND: hen.
  • Kiinnitä toinen painike (nollaus) leipätaulussa ja yhdistä ensimmäinen jalka CloudX Boardin 10 k: n ja nastan 8 kanssa ja toinen jalka GND: hen.

Vaihe 3: KOODAUS

Kopioi tämä koodi CloudX IDE -laitteeseesi

#Sisällytä #Sisällytä #Sisällytä

#define START_PAUSE 7

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

char timer = "00: 00: 00: 0";

allekirjoittamaton merkki HH, MM, SS, mSS, mscount, RFlag = 0; bitti OmSF = 0, S_PFlag = 0;

keskeyttää TimerOmSD () {

jos (INTCONbits. T0IF) {

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

perustaa(){

// asetukset täällä

pinMode (START_PAUSE, INPUT);

pinMode (NOLLAUS, TULO); lcdSetting (1, 2, 3, 4, 5, 6); lcdCmd (kirkas); lcdCmd (kohdistin pois päältä); lcdWriteText (1, 1, "CLOUDX STOPWATCH");

silmukka () {

// Ohjelma täällä

if (! readPin (START_PAUSE)) {

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

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

delayMs (200); INTCON = 0b11100000; OPTION_REG = 0b00000111; }

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

delayMs (200); INTCON = 0b11100000; OPTION_REG = 0b00000111; TMR0 += 60; mscount = 0; OmSF = 0; } S_PFlag = ~ S_PFlag; RF -lippu = 1; }

if (! readPin (RESET)) {

delayMs (200); HH = 0; MM = 0; SS = 0; mSS = 0; INTCON = 0b00000000; OPTION_REG = 0b00000000; mscount = 0; OmSF = 0; RF -lippu = 0; S_PFlag = PAUSE;

}

jos (OmSF) {

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

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

}

}

Suositeltava: