Kontak Kami

( pcs) Checkout

Grand Opening Cahaya LED Selamat Datang di Cahaya LED
Beranda » Artikel Terbaru » Jam Digital P10 Dengan Menggunakan DMDuino

Jam Digital P10 Dengan Menggunakan DMDuino

Diposting pada 4 October 2017 oleh cahayaled

Intro

Jam digital merupakan alat bantu kita untuk menuntukan waktu, dan tekadang juga menuntukan hari dan tanggal. Semakin majunya teknogoli digital semain banyak pula model-model jam digital. Mulai menggunakan LCD, 7 Segmen, dan LED Display. Pada artikel ini akan diberikan project pembuatan dan permrograman jam digital menggunakan arduino dengan tampilan module Dotmatrik LED P10.

Pada artikel ini saya tidak menggunakan arduino board, melainkan DMDuino yang sudaah dibuat dengan tujuan memudahkan project DMD 10.  Berikut ini beberapa fitur dari DMDuino.

  • Tegangan Kerja 5V
  • ATMEGA328 (Board Arduino Uno)
  • Terintegrasi CH340 Usb TTL (Downloader support Arduino IDE = Uno)
  • Terintegrasi DMD Connector
  • Terintegrasi RTC Module DS3231
  • Terintegrasi EEPROM 24C64
  • Connector Serial (bisa digunakan dengan bleutooth)
  • Connector Tombol (Button Module, OK, Up, Down)

Part

DMDuino

P10 Module

Power Supply

 

Tutorial Pemrograman

Sebelum masuk dalam tutorialnya, jika anda menggunakan arduino biasa, disini kita wajib menhubungkan setiap pin arduino dengan display P10, dengan acuan skematik dibawah ini.

Jika menggunakan DMDuino anda tinggal menghubungkan pada konektor yang sudah tersedia. Setelah masing masing komponen terhubung dengan baik, kemudian upload program dibawah ini.

///////////////////////////////// Menyertakan File Library ////////////////////////////////////////
#include <SPI.h>                                                      // SPI Library
#include <TimerOne.h>                                                 // Timer1 Library
#include <DMD.h>                                                      // dmd Library
#include <RTClib.h>                                                   // Real Time Clock Library
#include <BigNumber.h>                                                // Font Libary
/////////////////////////////////////// Global Varible /////////////////////////////////////////////
int Hari, Tanggal, Bulan, Tahun, Jam, Menit, Detik;
int s, i, x;
char dmdBuff[10];
String sBuff;
double old;
boolean BigTTK = false;

RTC_DS3231 RTC;
DMD dmd(1, 1);

//////////////////////////////////////// Fungsi Setup //////////////////////////////////////////////
void setup() {
  RTC.begin();                                                   // Initialize RTC Modul
  Timer1.initialize(2000);                                       // Initialize Timer 1
  Timer1.attachInterrupt(ScanDMD);                               // Interrupts Timer 1
  dmd.clearScreen(true);                                         // Hapus Tampilan P10
  //RTC.adjust(DateTime(F(__DATE__), F(__TIME__)));
}

////////////////////////////////// Fungsi Looping/Pengulagan ///////////////////////////////////////
void loop() {
  DateTime now = RTC.now();                                      // Baca Data RTC Sekarang
  BigTTK = true;                                                 // Big Titik Aktif
  dmd.selectFont(BigNumber);                                     // Font Select "BigNumber"

  // Display JAM
  sBuff = Convert(now.hour());                                   // Covert Int to String Jam
  s = sBuff.length() + 1;                                        // Panjang Karakter String
  dmdBuff[s];                                                    // Deklarasi variable Array
  sBuff.toCharArray(dmdBuff, s);                                 // Conver String to Char Array
  dmd.drawString(1, 0, dmdBuff, s, 0);                           // Tampilkan Nilai Char Array pada P10

  // Display Menit
  sBuff = Convert(now.minute());                                 // Covert Int to String Menit
  s = sBuff.length() + 1;                                        // Panjang Karakter String
  dmdBuff[s];                                                    // Deklarasi variable Array
  sBuff.toCharArray(dmdBuff, s);                                 // Conver String to Char Array
  dmd.drawString(18, 0, dmdBuff, s, 0);                          // Tampilkan Nilai Char Array pada P10
}

////////////////////////////////////// Interrupt Timer 1 ///////////////////////////////////////////
void ScanDMD() {
  dmd.scanDisplayBySPI();                                        // Timer Scanning untuk P10
  if (BigTTK) {                                                  // Fungsi aktifkan Big Titik pada interrupt
    if ((millis() > (old + 500))) {
      dmd.drawFilledBox( 15, 4, 16, 5, GRAPHICS_OR );
      dmd.drawFilledBox( 15, 10, 16, 11, GRAPHICS_OR );
    }
    if (( millis() < (old + 1000)) && (millis() > (old + 500))) {
      dmd.drawFilledBox( 15, 4, 16, 5, GRAPHICS_NOR );
      dmd.drawFilledBox( 15, 10, 16, 11, GRAPHICS_NOR );
    }
    if (millis() > (old + 1000) ) {
      old = millis();
    }
  }
}

///////////////////////////////////// Fungsi Convert 2 Digit  ///////////////////////////////////////
String Convert(int Num) {                                        // Variable String Convert nilai Int
  if (Num < 10) {                                                     // Jika Num kurang dari 10
    return "0" + String(Num);                                         // Tambahkan Angka '0' diawal variable, dan convert String
  }
  else {                                                              // Jika Num lebih dari 10
    return String(Num);                                               // Convert String
  }
}

Dari prorgram diatas, p10 akan menampilkan Jam digital dengan ukuran besar, untuk merubah settingan jam, klik tombol OK, kemudian gunakan tombol kanan dan kiri untuk merubah masing masing nilai. Kemudian klik OK untuk menyimpan dan kembali pada tampilan utama.

OK Sekian dulu tutorial kali ini, semoga bermanfaat.

 

 

Bagikan informasi tentang Jam Digital P10 Dengan Menggunakan DMDuino kepada teman atau kerabat Anda.

Jam Digital P10 Dengan Menggunakan DMDuino | Cahaya LED

Belum ada komentar untuk Jam Digital P10 Dengan Menggunakan DMDuino

Silahkan tulis komentar Anda

Your email address will not be published. Required fields are marked *

*

Mungkin Anda tertarik produk berikut ini:
SIDEBAR