Sadržaj:

Jednostavna CloudX M633 digitalna štoperica: 4 koraka
Jednostavna CloudX M633 digitalna štoperica: 4 koraka

Video: Jednostavna CloudX M633 digitalna štoperica: 4 koraka

Video: Jednostavna CloudX M633 digitalna štoperica: 4 koraka
Video: Ремонт на балконе Ошибки монтажа теплого пола. #37 2024, Studeni
Anonim
Jednostavna CloudX M633 digitalna štoperica
Jednostavna CloudX M633 digitalna štoperica

U ovom projektu napravit ćemo verziju digitalnog sata koji može bilježiti sate, minute i sekunde, baš poput štoperice na vašem mobitelu! Koristit ćemo LCD za prikaz vremena

Korak 1: Potrebna komponenta

Potrebna komponenta
Potrebna komponenta
Potrebna komponenta
Potrebna komponenta
Potrebna komponenta
Potrebna komponenta
  • CloudX M633
  • CloudX SoftCard
  • LCD zaslon
  • Potenciometar
  • Pritisnite gumb
  • Ploča za kruh
  • Kratkospojna žica
  • V3 USB kabel
  • 10.000

Svoju komponentu možete nabaviti ovdje

Korak 2: HARDVER

HARDVER
HARDVER

Korak 1: Učvrstite LCD zaslon na ploču za kruh i spojite ga na CloudX M633 ploču prema sljedećem

  • R/S na pin1
  • ENA na pin2
  • D4 na pin3
  • D5 na pin4
  • D6 na pin5
  • D7 na pin6

Dodatno, spojite 10k lonac na +5V i GND, s njegovim brisačem (izlazom) na VO pin LCD zaslona.

  • spojite Vss i K na GND
  • spojite Vdd i A na +5v
  • spojite R/W na GND

Napomena: A je anoda, K je katoda

Korak 2

  • Učvrstite prvi gumb (Start i Stop) na ploči za kruh i spojite prvu nogu na 10k i Pin7 CloudX ploče, a drugu nogu na GND.
  • Popravite drugi gumb (reset) na ploči za kruh i spojite prvu nogu na 10k i pin8 CloudX ploče, a drugu nogu na GND.

Korak 3: KODIRANJE

Kopirajte ovaj kôd u svoj CloudX IDE

#include #include #include

#define START_PAUSE 7

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

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

nepotpisani znak HH, MM, SS, mSS, mscount, RFlag = 0; bit OmSF = 0, S_PFlag = 0;

prekinuti TimerOmSD () {

if (INTCONbits. T0IF) {

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

postaviti(){

// postavljanje ovdje

pinMode (START_PAUSE, INPUT);

pinMode (RESET, INPUT); lcdSetting (1, 2, 3, 4, 5, 6); lcdCmd (jasno); lcdCmd (cursorOff); lcdWriteText (1, 1, "CLOUDX STOPWATCH");

petlja(){

// Program ovdje

if (! readPin (START_PAUSE)) {

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

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

kašnjenjeMs (200); INTCON = 0b11100000; OPTION_REG = 0b00000111; }

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

kašnjenjeMs (200); INTCON = 0b11100000; OPTION_REG = 0b00000111; TMR0 += 60; mscount = 0; OmSF = 0; } S_PFlag = ~ S_PFlag; RFlag = 1; }

if (! readPin (RESET)) {

kašnjenjeMs (200); HH = 0; MM = 0; SS = 0; mSS = 0; INTCON = 0b00000000; OPTION_REG = 0b00000000; mscount = 0; OmSF = 0; RFlag = 0; S_PFlag = PAUZA;

}

if (OmSF) {

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

ako je (HH == 100) HH = 0; ako (MM == 60) MM = 0; ako je (SS == 60) SS = 0; ako je (mSS == 10) mSS = 0; mjerač vremena [1] = (HH%10) +48; mjerač vremena [0] = (HH/10) +48; mjerač vremena [4] = (MM%10) +48; mjerač vremena [3] = (MM/10) +48; mjerač vremena [7] = (SS%10) +48; mjerač vremena [6] = (SS/10) +48; mjerač vremena [9] = mSS +48; lcdWriteText (2, 2, mjerač vremena);

}

}

Preporučeni: