Kazalo:

Preprosta digitalna štoparica CloudX M633: 4 koraki
Preprosta digitalna štoparica CloudX M633: 4 koraki

Video: Preprosta digitalna štoparica CloudX M633: 4 koraki

Video: Preprosta digitalna štoparica CloudX M633: 4 koraki
Video: Военные тактические часы-Топ-10 самых жестких военных ч... 2024, Julij
Anonim
Preprosta digitalna štoparica CloudX M633
Preprosta digitalna štoparica CloudX M633

V tem projektu bomo izdelali različico digitalne ure, ki lahko beleži ure, minute in sekunde, tako kot štoparica na vašem mobilnem telefonu! Za prikaz časa bomo uporabili LCD

1. korak: Potrebna komponenta

Potrebna komponenta
Potrebna komponenta
Potrebna komponenta
Potrebna komponenta
Potrebna komponenta
Potrebna komponenta
  • CloudX M633
  • CloudX SoftCard
  • LCD zaslon
  • Potenciometer
  • Pritisni gumb
  • Krušna deska
  • Mostična žica
  • V3 kabel USB
  • 10 tisoč

Svoje komponente lahko dobite tukaj

2. korak: HARDWARE

HARDWARE
HARDWARE

1. korak: pritrdite LCD zaslon na ploščo za kruh in se povežite s ploščo CloudX M633 na naslednji način

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

Dodatno priključite 10k lonec na +5V in GND s svojim brisalcem (izhodom) na VO pin LCD zaslonov.

  • priključite Vss in K na GND
  • priključite Vdd in A na +5v
  • priključite R/W na GND

Opomba: A je anoda, K je katoda

2. korak

  • Pritrdite prvi gumb (Start in Stop) na plošči za kruh in priključite prvo nogo na 10k in Pin7 plošče CloudX, drugo pa na GND.
  • Drugi gumb (ponastavitev) pritrdite na ploščo za kruh in prvo nogo priključite na 10k in pin8 plošče CloudX, drugo nogo pa na GND.

3. korak: KODIRANJE

Kopirajte to kodo v IDE CloudX

#include #include #include

#define START_PAUSE 7

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

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

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

prekini TimerOmSD () {

if (INTCONbits. T0IF) {

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

nastaviti(){

// nastavitev tukaj

pinMode (START_PAUSE, INPUT);

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

zanka () {

// Program tukaj

if (! readPin (START_PAUSE)) {

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

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

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

če (S_PFlag == PAUSE && RFlag == 0) {

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

if (! readPin (RESET)) {

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

}

if (OmSF) {

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

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

}

}

Priporočena: