Daftar Isi:

Stopwatch Digital CloudX M633 Sederhana: 4 Langkah
Stopwatch Digital CloudX M633 Sederhana: 4 Langkah

Video: Stopwatch Digital CloudX M633 Sederhana: 4 Langkah

Video: Stopwatch Digital CloudX M633 Sederhana: 4 Langkah
Video: CloudX LED Chaser Project 2024, November
Anonim
Stopwatch Digital CloudX M633 Sederhana
Stopwatch Digital CloudX M633 Sederhana

Dalam proyek ini, kami akan membuat versi jam digital yang dapat mencatat jam, menit, dan detik, seperti stopwatch di ponsel Anda! Kami akan menggunakan LCD untuk menampilkan waktu

Langkah 1: Diperlukan Komponen

Komponen yang Dibutuhkan
Komponen yang Dibutuhkan
Komponen yang Dibutuhkan
Komponen yang Dibutuhkan
Komponen yang Dibutuhkan
Komponen yang Dibutuhkan
  • CloudX M633
  • CloudX SoftCard
  • Layar LCD
  • Potensiometer
  • Tekan tombol
  • Papan Roti
  • Kawat jumper
  • Kabel USB V3
  • 10k

Anda bisa mendapatkan komponen Anda di sini

Langkah 2: PERANGKAT KERAS

PERANGKAT KERAS
PERANGKAT KERAS

Langkah 1: Perbaiki layar LCD di papan roti dan sambungkan ke Papan CloudX M633 seperti berikut:

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

Selain itu, sambungkan pot 10k ke +5V dan GND, dengan penghapus (output) ke layar LCD pin VO.

  • hubungkan Vss dan K ke GND
  • sambungkan Vdd dan A ke +5v
  • sambungkan R/W ke GND

N. B: A adalah Anoda, K adalah Katoda

Langkah 2

  • Perbaiki tombol tekan pertama (Mulai dan Berhenti) di papan roti dan sambungkan kaki pertama ke 10k dan Pin7 dari Papan CloudX dan kaki lainnya ke GND.
  • Perbaiki tombol tekan Kedua (reset) di papan tempat memotong roti dan sambungkan kaki pertama ke 10k dan pin8 dari Papan CloudX dan kaki lainnya ke GND.

Langkah 3: KODE

Salin kode ini ke IDE CloudX Anda

#sertakan #sertakan #sertakan

#define START_PAUSE 7

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

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

unsigned char HH, MM, SS, mSS, mscount, RFlag=0; bit OmSF=0, S_PFlag=0;

interupsi TimerOmSD(){

if (INTCONbits. T0IF) {

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

mempersiapkan(){

//setup disini

pinMode(START_PAUSE, INPUT);

pinMode(ATUR ULANG, INPUT); lcdSetting (1, 2, 3, 4, 5, 6); lcdCmd (jelas); lcdCmd(kursorMati); lcdWriteText(1, 1, "CLOUDX STOPWATCH");

lingkaran(){

//Program di sini

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; mshitung=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; mshitung=0; OmSF = 0; RFlag = 0; S_PFlag = JEDA;

}

jika (OmSF){

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

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

}

}

Direkomendasikan: