• Arduino
    • Sensor
    • program Arduino
  • Project
  • Produk
  • IOT
Jumat, Juni 20, 2025
mikroavr.com
No Result
View All Result
  • Login
  • Arduino
    • Sensor
    • program Arduino
  • Project
  • Produk
  • IOT
  • Arduino
    • Sensor
    • program Arduino
  • Project
  • Produk
  • IOT
No Result
View All Result
mikroavr
No Result
View All Result
Home Arduino

Cara membuat Stopwatch Arduino 7 Segment dengan Fungsi Millis

Jimmi Sitepu by Jimmi Sitepu
Februari 25, 2022
0 0
0
stoptwatch Arduino seven segment

stoptwatch Arduino seven segment

17
SHARES
5.8k
VIEWS
Share on FacebookShare on Twitter

Stop Watch

Stop watch banyak di gunakan dalam beberapa acara, itu sih yang saya lihat, seperti acara olah raga, cerdas cermat atau mungkin fungsi pewaktu lain nya. Stop watch ini sebenar nya alat pewaktu saja, biasanya secara sederhana memiliki 3 control, atau input push button, pertama adalah fungsi start untuk memulai stopwatch, kedua adalah stop untuk menghentikan stopwatch dan yang terakhir adalah reset yaitu untuk mengembalikan nilai waktu menjadi 0.

modul seven segment arduino top
modul seven segment arduino top

Stopwatch yang terlihat sederhana ini sangat sedikit sekali refrensi nya, saya sadar ketika ada teman yang coba minta saya buatkan program stopwatch arduino di proteus dan data waktu nya di tampilkan di 4 digit 7 segment. Coba cari refrensi, rata-rata tutorial nya tidak menggunakan millis dan tidak menggunakan 7 segment. Nah sekarang bagaimana kah cara membuat nya? apakah mudah cara memprogram nya? Yuk kita coba satu satu.

READ ALSO

4G GSM Modul Arduino SIM7600 Cocok Untuk ESP32, STM32 atau Arduino Mega

Tutorial Menggunakan Weather Station DFRobot SEN0186 dengan Arduino ESP32

Rangkaian 4 Digit 7 Segment Stopwatch

Rangkaian stopwatch ini sudah ada pada artikel cara membuat counter seven segment, bisa teman-teman lihat pada artikel di bawah ini.

Membuat counter arduino dengan 7 segment

Untuk lebih jelas nya bagaiman rangkaian nya, bisa teman-teman lihat pada gambar di bawah ini.

counter arduino seven segment
counter arduino seven segment

Counter di atas di kendalikan oleh Arduino uno dengan 3 input button active low. Seven segment nya di kendalikan oleh ic geser 74HC595. Setiap seven segment di kendalikan oleh 74HC595. Umum nya rangkaian ini di sebut 74HC595 static.

ingat hal penting, jika menggunakan seven segment besar seperti di atas 2.3 inch, 3 inch atau bahkan 5 inch common anoda, maka perlu ic penguat seperti ULN2803

Untuk rangkaian seven segment yang di drive oleh 74HC595 dan ULN2803 bisa teman teman lihat pada link di bawah ini

Seven Segment dengan ULN2803 dan 74HC595

Nah sampai di sini dulu ni tentang rangkaian Stopwatch Arduino kita, selanjut nya adalah bagaimana kah cara program nya? yuk kita lihat di bawah ini.

Coding Stopwatch dengan Millis

Program stopwatch ini akan memanfaat kan fungsi millis pada arduino, sebuah timer yang bekerja sendiri atau terpisah dari coding arduino. Ketika start kita akan mengambil waktu pada millis, ketika stop kita akan menahan data millis terakhir yang tersimpan kemudian ketika di tekan lagi start maka akan melanjutkan timer stop watch lagi. Nah bagaiaman kah program nya, yuk kita lihat list program di bawah ini, oh sebelum nya download dulu library 7 segment nya di link berikut ini,

library mikro7 seven segment


//created by Jimmi Kardo Sitepu
//Founder of https://mikroavr.com
//make easy project seven segment with modul mikro7
//contact me any qustion to +6282165062273 -- whatsapp, SMS
#include <mikro7.h>
// Arduino pin configuration to modul mikro7
// D7 connected to Data Pin
// D8 connected to latch pin
// DS connected to clock pin
mikro7 mikro(7, 8, 9); // dis(data, latch, clock
int i;
char hold0 = 0;
char hold1 = 0;
char hold2 = 0;
char data0, data1, data2;

#define READY 0
#define START 1
#define STOP 2
#define RESET 3
#define TIPE_TIME 500 // speed of stop watch

char state = 0;
unsigned long get_time, get_time2;
unsigned long cur_time0;
unsigned long cur_time1;
unsigned long hold_time, hold_time2, run_time;

void setup() {
  // put your setup code here, to run once:
  pinMode(A0, INPUT_PULLUP);
  pinMode(A1, INPUT_PULLUP);
  pinMode(A2, INPUT_PULLUP);
  mikro.off();
}
void loop() {
  // put your main code here, to run
  Serial.begin(9600);
  key();
  display7();
}
void key(){
  data0 = digitalRead(A0);
  data1 = digitalRead(A1);
  data2 = digitalRead(A2);
  if ( data0 == 0){
    if(hold0 == 0){
    hold0 = 1;
    state = START;
  }
  }
  else{
    hold0 = 0;
  }

  if ( data1 == 0){
    if(hold1 == 0){
    hold1 = 1;
    state = STOP;
  }
  }
  else{
    hold1 = 0;
  }

  if ( data2 == 0){
    if(hold2 == 0){
    hold2 = 1;
    state = RESET;
  }
  }
  else{
    hold2 = 0;
  }
}

void get_clock(){
  switch(state){
    case READY:
      get_time = 0;
      hold_time = 0;
    break;

    case START:
      cur_time0 = millis()/TIPE_TIME;
      run_time = (cur_time0 - cur_time1);
      hold_time = run_time;
      get_time = hold_time + hold_time2;
    break;

    case STOP:
      cur_time1 = millis()/TIPE_TIME;
      hold_time2 = get_time;
    break;   

    case RESET:
      cur_time1 = millis()/TIPE_TIME;
      get_time = 0; hold_time = 0; hold_time2 = 0;
      //state = READY;
    break;
  }
}

void display7(){
  get_clock();
  switch(state){
    case READY:
      mikro.display(get_time,NOT);
    break;

    case START:
      mikro.display(get_time,NOT);
    break;

    case STOP:
      mikro.display(get_time,NOT);
    break;

    case RESET:
      mikro.display(get_time,NOT);
    break;
  }
}

Program di atas sudah kami uji langsung di proteus nya, dan berjalan dengan normal dan baik. Jika teman-teman tertarik dengan dengan modul sevent segment yang support dengan library di atas bisa teman teman klik tombol di bawah ini

Download Proteus

Selanjut nya adalah yang kita bahas bagaimana cara merubah file library seven segment sesuai dengan desain anda? yuk kita bahas di pembahasan selanjut nya.

Thanks

Video pengujian nya menyusul ^_^ Thanks

Tags: 7 segment
Share17Tweet
Previous Post

Membuat Counter Arduino Seven Segment lengkap Library dan Proteus

Next Post

Cara Mudah Progam LCD dengan Auto scan Address lcd i2c Pada Arduino

Jimmi Sitepu

Jimmi Sitepu

Hobbyist Embedded System, Robotic, IOT and write all about them. So we have nice quote "Learning and Sharing"

Related Posts

4G GSM Modul Arduino SIM7600 Cocok Untuk ESP32, STM32 atau Arduino Mega
Arduino

4G GSM Modul Arduino SIM7600 Cocok Untuk ESP32, STM32 atau Arduino Mega

Juni 13, 2022
Tutorial Menggunakan Weather Station DFRobot SEN0186 dengan Arduino ESP32
Arduino

Tutorial Menggunakan Weather Station DFRobot SEN0186 dengan Arduino ESP32

Maret 9, 2022
ethernet arduino
Arduino

Arduino Ethernet Tutorial, Project dengan Arduino Uno dan Mega

Februari 24, 2022
solder i2c arduino lcd
Arduino

Tutorial Program Arduino Lcd i2c dan Library nya

Februari 24, 2022
tft lcd arduino shield
Arduino

Tutorial Mudah TFT lcd Arduino untuk Membuat Jam Digital

Februari 24, 2022
jangka sorong arduino
Arduino

Sensor Pengukur Jarak dengan Jangka Sorong Digital Presisi 0.01mm

Februari 24, 2022
Next Post
autoscan lcd arduino

Cara Mudah Progam LCD dengan Auto scan Address lcd i2c Pada Arduino

menghidupkan kendaraan dengan sidik jari

Cara Mudah Menghidupkan Motor bahkan Mobil dengan Sidik Jari, Relay dan Arduino

Please login to join discussion

Tulisan Terbaru

sensor URM14 Arduino

Membaca Sensor URM14 RS485 dengan ESP32 Arduino

Juli 7, 2022
4G GSM Modul Arduino SIM7600 Cocok Untuk ESP32, STM32 atau Arduino Mega

4G GSM Modul Arduino SIM7600 Cocok Untuk ESP32, STM32 atau Arduino Mega

Juni 13, 2022
Mendapatkan Waktu Akurat dengan NTP GPS

Mendapatkan Waktu Akurat dengan NTP GPS

Mei 8, 2022
Custome GPS Logger Arduino dengan Akeses Internet SIM7600 4G

Custome GPS Logger Arduino dengan Akeses Internet SIM7600 4G

April 14, 2022
Tutorial Menggunakan Weather Station DFRobot SEN0186 dengan Arduino ESP32

Tutorial Menggunakan Weather Station DFRobot SEN0186 dengan Arduino ESP32

Maret 9, 2022
ethernet arduino

Arduino Ethernet Tutorial, Project dengan Arduino Uno dan Mega

Februari 24, 2022

Browse by Category

  • Arduino
  • Ebook
  • ESP32
  • IOT
  • jasa
  • Komponen
  • PCB
  • Produk
  • program Arduino
  • Project
  • Rangkaian
  • Sensor
  • Tips
  • Uncategorized

Recent News

sensor URM14 Arduino

Membaca Sensor URM14 RS485 dengan ESP32 Arduino

Juli 7, 2022
4G GSM Modul Arduino SIM7600 Cocok Untuk ESP32, STM32 atau Arduino Mega

4G GSM Modul Arduino SIM7600 Cocok Untuk ESP32, STM32 atau Arduino Mega

Juni 13, 2022
  • About US
  • Blog
  • MIKROAVR

© 2020 mikroavr.com - Learning and sharing.

Welcome Back!

Sign In with Google
OR

Login to your account below

Forgotten Password?

Retrieve your password

Please enter your username or email address to reset your password.

Log In

Add New Playlist

No Result
View All Result
  • About US
  • Blog
  • MIKROAVR

© 2020 mikroavr.com - Learning and sharing.