Isi kandungan:

Jam Randik Digital CloudX M633 Sederhana: 4 Langkah
Jam Randik Digital CloudX M633 Sederhana: 4 Langkah

Video: Jam Randik Digital CloudX M633 Sederhana: 4 Langkah

Video: Jam Randik Digital CloudX M633 Sederhana: 4 Langkah
Video: 2 hour stopwatch digital workout clock 2024, Julai
Anonim
Jam Randik Digital CloudX M633 Sederhana
Jam Randik Digital CloudX M633 Sederhana

Dalam projek ini, kami akan membuat versi jam digital yang dapat menyimpan catatan jam, minit dan saat, seperti jam randik di telefon bimbit anda! Kami akan menggunakan LCD untuk memaparkan waktu

Langkah 1: Komponen Diperlukan

Komponen Diperlukan
Komponen Diperlukan
Komponen Diperlukan
Komponen Diperlukan
Komponen Diperlukan
Komponen Diperlukan
  • CloudX M633
  • CloudX SoftCard
  • Paparan LCD
  • Potensiometer
  • Tekan butang
  • Papan Roti
  • Kawat Jumper
  • Kabel USB V3
  • 10k

Anda boleh mendapatkan komponen anda di sini

Langkah 2: PERKAKASAN

PERKAKASAN
PERKAKASAN

Langkah 1: Betulkan paparan LCD di papan roti dan sambungkan ke Papan CloudX M633 seperti berikut

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

Selain itu, pasangkan periuk 10k ke + 5V dan GND, dengan pengelap (output) ke pin VO skrin LCD.

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

N. B: A adalah Anode, K adalah Katod

Langkah 2

  • Betulkan butang tekan pertama (Mula dan Berhenti) di papan roti dan sambungkan kaki pertama ke 10k dan Pin7 dari Papan CloudX dan kaki yang lain ke GND.
  • Betulkan butang tekan Kedua (set semula) di papan roti dan sambungkan kaki pertama ke 10k dan pin8 Papan CloudX dan kaki yang lain ke GND.

Langkah 3: KOD

Salin kod ini ke CloudX IDE anda

#sertakan #sertakan #sertakan

#tentukan START_PAUSE 7

#define RESET 8 #define MULAI 1 #define PAUSE 0

pemasa char = "00: 00: 00: 0";

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

mengganggu TimerOmSD () {

jika (INTCONbits. T0IF) {

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

persediaan () {

// persediaan di sini

pinMode (START_PAUSE, INPUT);

pinMode (RESET, INPUT); Pengaturan lcd (1, 2, 3, 4, 5, 6); lcdCmd (jelas); lcdCmd (kursorOff); lcdWriteText (1, 1, "CLOUDX STOPWATCH");

gelung () {

// Program di sini

jika (! readPin (START_PAUSE)) {

jika (S_PFlag == MULAI) {delayMs (200); INTCON = 0b00000000; PILIHAN_REG = 0b00000000; mSS--; }

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

kelewatanMs (200); INTCON = 0b11100000; PILIHAN_REG = 0b00000111; }

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

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

jika (! readPin (RESET)) {

kelewatanMs (200); HH = 0; MM = 0; SS = 0; mSS = 0; INTCON = 0b00000000; PILIHAN_REG = 0b00000000; mscount = 0; OmSF = 0; RFlag = 0; S_PFlag = Jeda;

}

jika (OmSF) {

OmSF = ~ OmSF; mSS ++; jika (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; jika (mSS == 10) mSS = 0; pemasa [1] = (HH% 10) +48; pemasa [0] = (HH / 10) +48; pemasa [4] = (MM% 10) +48; pemasa [3] = (MM / 10) +48; pemasa [7] = (SS% 10) +48; pemasa [6] = (SS / 10) +48; pemasa [9] = mSS +48; lcdWriteText (2, 2, pemasa);

}

}

Disyorkan: