Obsah:

Jednoduché digitálne stopky CloudX M633: 4 kroky
Jednoduché digitálne stopky CloudX M633: 4 kroky

Video: Jednoduché digitálne stopky CloudX M633: 4 kroky

Video: Jednoduché digitálne stopky CloudX M633: 4 kroky
Video: DaNang Vietnam in October (low season) | Prices for food, accommodation, mobile, bike rent 2024, November
Anonim
Jednoduché digitálne stopky CloudX M633
Jednoduché digitálne stopky CloudX M633

V tomto projekte urobíme verziu digitálnych hodín, ktoré dokážu zaznamenávať hodiny, minúty a sekundy, rovnako ako stopky na vašom mobilnom telefóne! Na zobrazenie času použijeme LCD

Krok 1: Potrebný komponent

Potrebný komponent
Potrebný komponent
Potrebný komponent
Potrebný komponent
Potrebný komponent
Potrebný komponent
  • CloudX M633
  • SoftCard CloudX
  • Displej LCD
  • Potenciometer
  • Tlačidlo
  • Chlebová doska
  • Prepojovací drôt
  • Kábel USB V3
  • 10 tis

Svoj komponent môžete získať tu

Krok 2: HARDWARE

HARDWARE
HARDWARE

Krok 1: Opravte LCD displej v doske na chlieb a pripojte ho k doske CloudX M633 podľa nasledujúceho postupu

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

Okrem toho zapojte 10k hrniec na +5V a GND pomocou stierača (výstupu) na pin VO LCD obrazovky.

  • pripojte Vss a K k GND
  • pripojte Vdd a A na +5v
  • pripojte R/W k GND

Poznámka: A je anóda, K je katóda

Krok 2

  • Upevnite prvé tlačidlo (Štart a Stop) na doske na chlieb a pripojte prvú nohu k 10k a Pin7 dosky CloudX a druhú nohu k GND.
  • Opravte druhé tlačidlo (reset) v zariadení breadBoard a pripojte prvú nohu k 10k a pin8 dosky CloudX a druhú nohu k GND.

Krok 3: KÓDOVANIE

Skopírujte tento kód do svojho CloudX IDE

#include #include #include

#define START_PAUSE 7

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

časovač znakov = "00: 00: 00: 0";

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

prerušiť TimerOmSD () {

ak (INTCONbits. T0IF) {

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

nastaviť(){

// nastavenie tu

pinMode (START_PAUSE, INPUT);

pinMode (RESET, VSTUP); lcdSetting (1, 2, 3, 4, 5, 6); lcdCmd (číry); lcdCmd (cursorOff); lcdWriteText (1, 1, "CLOUDX STOPWATCH");

slučka () {

// Program tu

if (! readPin (START_PAUSE)) {

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

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

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

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

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

if (! readPin (RESET)) {

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

}

ak (OmSF) {

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

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

}

}

Odporúča: