Агуулгын хүснэгт:

Энгийн CloudX M633 дижитал секундомер: 4 алхам
Энгийн CloudX M633 дижитал секундомер: 4 алхам

Видео: Энгийн CloudX M633 дижитал секундомер: 4 алхам

Видео: Энгийн CloudX M633 дижитал секундомер: 4 алхам
Видео: Ремонт на балконе Ошибки монтажа теплого пола. #37 2024, Арваннэгдүгээр
Anonim
Энгийн CloudX M633 дижитал секундомер
Энгийн CloudX M633 дижитал секундомер

Энэхүү төсөлд бид гар утсан дээрх секундомер шиг цаг, минут, секундын бүртгэл хөтлөх боломжтой дижитал цагийн хувилбарыг хийх гэж байна! Бид LCD дэлгэц ашиглан цагийг харуулах болно

Алхам 1: Шаардлагатай бүрэлдэхүүн хэсэг

Шаардлагатай бүрэлдэхүүн хэсэг
Шаардлагатай бүрэлдэхүүн хэсэг
Шаардлагатай бүрэлдэхүүн хэсэг
Шаардлагатай бүрэлдэхүүн хэсэг
Шаардлагатай бүрэлдэхүүн хэсэг
Шаардлагатай бүрэлдэхүүн хэсэг
  • CloudX M633
  • CloudX SoftCard
  • LCD дэлгэц
  • Потенциометр
  • Дарах товчлуур
  • Талхны самбар
  • Холбогч утас
  • V3 USB кабель
  • 10к

Та өөрийн бүрэлдэхүүн хэсгийг эндээс авах боломжтой

Алхам 2: ТОНОГ ТӨХӨӨРӨМЖ

ТОНОГ ТӨХӨӨРӨМЖ
ТОНОГ ТӨХӨӨРӨМЖ

Алхам 1: LCD дэлгэцийг талхны тавцан дээр засаад дараах байдлаар CloudX M633 самбарт холбоно уу

  • R/S -ээс 1 -р зүү рүү
  • ENA -ийг pin2 руу оруулна уу
  • D4 -ээс pin3 хүртэл
  • D5 -аас pin4 хүртэл
  • D6 -аас 5 хүртэл
  • D7 -оос 6 хүртэл

Нэмж дурдахад 10к савыг +5V ба GND руу холбож, арчигч (гаралт) ашиглан LCD дэлгэцтэй VO зүү хийнэ.

  • Vss ба K -ийг GND руу холбоно уу
  • Vdd ба A -ийг +5v руу холбоно уу
  • R/W -ийг GND руу холбоно уу

Н. Б: А бол анод, К бол катод юм

Алхам 2

  • Талхны тавцан дээрх эхний товчлуурыг (Эхлэх ба зогсоох) засаад эхний хөлийг CloudX Board -ийн 10k, Pin7, нөгөө хөлийг GND -тэй холбоно уу.
  • BreadBoard дахь хоёр дахь товчлуурыг (дахин тохируулах) засаад эхний хөлийг CloudX Board -ийн 10k ба pin8, нөгөө хөлийг GND -тэй холбоно уу.

Алхам 3: Кодлох

Энэ кодыг CloudX IDE руу хуулна уу

#оруулах #оруулах #оруулах

#тодорхойлох START_PAUSE 7

#дахин тохируулах 8 #тодорхойлох START 1 #тодорхойлох PAUSE 0

char таймер = "00: 00: 00: 0";

гарын үсэггүй тэмдэг HH, MM, SS, mSS, mscount, RFlag = 0; бит OmSF = 0, S_PFlag = 0;

тасалдах TimerOmSD () {

хэрэв (INTCONbits. T0IF) {

INTCONbits. T0IF = 0; TMR0 += 60; хэрэв (mscount ++ == 10) {mscount = 0; OmSF = 1; }}}

тохируулах(){

// энд тохируулна уу

pinMode (START_PAUSE, INPUT);

pinMode (дахин тохируулах, оруулах); lcdSetting (1, 2, 3, 4, 5, 6); lcdCmd (тодорхой); lcdCmd (cursorOff); lcdWriteText (1, 1, "CLOUDX STOPWATCH");

давталт () {

// Програм энд байна

хэрэв (! readPin (START_PAUSE))) {

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

хэрэв (S_PFlag == PAUSE && RFlag == 1) {

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

хэрэв (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; ММ = 0; SS = 0; mSS = 0; INTCON = 0b00000000; OPTION_REG = 0b00000000; mscount = 0; OmSF = 0; RFlag = 0; S_PFlag = PAUSE;

}

хэрэв (OmSF) {

OmSF = ~ OmSF; mSS ++; хэрэв (mSS == 10) SS ++; хэрэв (SS == 60) MM ++; хэрэв (MM == 60) HH ++; }

хэрэв (HH == 100) HH = 0; хэрэв (MM == 60) MM = 0; хэрэв (SS == 60) SS = 0; хэрэв (mSS == 10) mSS = 0; таймер [1] = (HH%10) +48; таймер [0] = (HH/10) +48; таймер [4] = (MM%10) +48; таймер [3] = (ММ/10) +48; таймер [7] = (SS%10) +48; таймер [6] = (SS/10) +48; таймер [9] = mSS +48; lcdWriteText (2, 2, таймер);

}

}

Зөвлөмж болгож буй: