Thursday, February 15, 2018
Jadwal Sholat Digital 7 Segment Gratis
Spesification :
1.Seven Segment CA (Common Anoda).
2. Led Driver dengan menggunakan IC Shift Register 74HC595 untuk tiap segment.
3. Bahasa Pemrograman menggunakan IDE Arduino.
4. Tidak banyak menggunakan Lib, hanya standard RTC dan Perhitungan Waktu Sholat. Selebihnya cuma teknik shift register saja
5. Koneksi Bluetooth (wifi kalo ada request).
6. Melalui aplikasi android untuk setting : tampilan ( 5 waktu sholat + imsak atau termasuk Syuruq dan Dhuha). update jam dan kalender, Lokasi, Safe mode, koreksi waktu sholat dan kalender hijriah, jeda iqomah.
Firmware menyusul, nunggu mood.
Salam, Chellotech
Sunday, August 6, 2017
(RAKIT) Jadwal Sholat Digital (arduino P10)
Dalam rangka menepati janji saya yang pernah saya tuliskan di FB saya, dibawah ini akan saya posting mengenai Jadwal Sholat Digital.
- Arduino Uno/minimum sistem atmega 328p 16MHz
- RTC pilih salah satu DS1307 atau DS3231
- Bluetooth pilih salah satu HC05 atau HC06
- Panel P10 Single Color, bebas mo warna apa aja, ASALKAN type scan 1/4, jangan lupa kabel data IDC 2x8 sejumlah 3 pcs + kabel power jumpper antar panel
- Power Supply, pakai aja yg 5v 10A. klo adanya 5v 5A ya udah gpp deh ama temen sendiri.
- Handphone Android, saya sarankan minimum OS kitkat.
- Peralatan standard solder menyolder jika mau rakit minimum sistem atmega328. Kalau pakai board aeduino uno sediakan kabel header male-female.
- Usbasp / Usbisp. bebas beli jadi atau rakitan sendiri.
- Komputer sebagai sarana untuk Flashing Program dan stel lagu dangdut biar ga spaneng.
Pembuatan board/Controller :
Skematik Minimum System Atmega328 |
Skematik hubungan antara minsis dengan port DMD P10 |
Modul RTC Ds1307 |
Modul RTC DS3231 |
Skematik RTC DS1307 |
Hubungan Minimum System ke HC05 |
Versi Chellotech bisa dilihat pada gambar berikut :
File program dan aplikasi android bisa di donlod gratis pada link di bawah ini :
- File Hex Atmega328 (tanpa bootloader) : LINK DOWNLOAD
- File Hex Atmega328 (bootloader) : LINK DOWNLOAD
- Aplikasi Android : LINK DOWNLOAD
- Update Time and Date dengan HP
- Update lokasi dengan HP
- Koreksi Tiap Waktu Sholat. Rekomendasi Kemenag +2 menit.
- Jeda Iqomah Count Down untuk masing2 waktu sholat.
- Text Masjid : 17 Karakter
- Running text : 75-100 karakter, dengan speed bisa diatur.
- Auto Dim display (mode hemat)
- Setting kecerahan.
- dan.......saya nitip bonus pd programnya :v (simbiosis mutualisme).
Salam
Chellotech #LearnFromCopas
Wednesday, October 21, 2015
Gelar Lapak Chellotech
biar kayak lainnya. custom order via inbox wae.
yg ada pricenya ikutin yg udh pesen.
mo murah, dtg bawa kopi.
#note : pcb home made tanpa silkscreen/masking.
Thursday, September 24, 2015
Menanam” Bootloader ” Arduino
- · Apa itu bootloader ?
- · Saya baru beli chip mikro baru (gress alias kinyis2 masih perawan). Apakah bisa langsung berkomunikasi dengan IDE Arduino?
- Kalo udah punya board Arduino Uno. Bisa dipakai untuk menge”burn” bootloader ke chip baru. Simak caranya dibawah ini. Ada 2 cara yang bisa dipilih (dipilih-dipilih silahkan dipilih) :Bumbu-bumbu yang diperlukan yaitu :
- Pilih menu File, Pilih Sub Menu Examples, Pilih ArduinoIsp.
- Setelah itu Klik menu Tool - Board dan pilih Arduino Uno.
- Next pilih menu Tool - Serial port, sesuaikan pemakain portnya.
- Next pilih menu File dan UPLOAD !
Saturday, September 19, 2015
USB TO TTL dengan atmega8
Langkah- Langkah :
- Langkah Pertama.
- Langkah Kedua
- Langkah Ketiga
- Langkah Keempat
- Langkah Kelima
Saturday, August 8, 2015
Running Text 8x32
Spesifikasi :
- Dot matrix yang saya pakai dengan susunan led 3mm (silakan jika mau pakai 3 x modul 8x8 dot matrix)
- MCU bisa pakai minimum sistem atmega8 atau pakai arduino uno/pro mini/nano dkk
- IC driver kolom dan baris memakai 74hc595
- pada skema tidak saya gambar Resistor, sebaiknya dipasang pada output 74hc595
- Coding memakai format C++ untuk IDE Arduino (kalo belum punya download aja gratis di ww*.arduino.cc
(pertanyaan mengenai modif coding ayo dibahas bareng, maklum coding dpt dr google silakan dioprek bareng2)
CODE :
int x;
int y;
int latchPin1 = 5; //Arduino pin connected to blue 12 RCLK of 74HC595
int clockPin1 = 6; //Arduino pin connected to green 11 SRCLK of 74HC595
int dataPin1 = 7; //Arduino pin connected to violet 14 SER of 74HC595
//-- Rows (Positive Anodes) --
int latchPin2 = 9; //Arduino pin connected to yellow Latch 12 RCLK of 74HC595
int clockPin2 = 10; //Arduino pin connected to white Clock 11 SRCLK of 74HC595
int dataPin2 = 8; //Arduino pin connected to grey Data 14 SER of 74HC595
//=== B I T M A P ===
//Bits in this array represents one LED of the matrix
// 8 is # of rows, 7 is # of LED matrix we have
byte bitmap[8][7]; // Change the 7 to however many matrices you want to use.
int numZones = sizeof(bitmap) / 8;
int maxZoneIndex = numZones-1;
int numCols = numZones * 8;
byte alphabets[][5] = {
{0,0,0,0,0},
{31, 36, 68, 36, 31},//A
{127, 73, 73, 73, 54},//B
{62, 65, 65, 65, 34},//C
{127, 65, 65, 34, 28},
{127, 73, 73, 65, 65},
{127, 72, 72, 72, 64},
{62, 65, 65, 69, 38},
{127, 8, 8, 8, 127},
{0, 65, 127, 65, 0},
{2, 1, 1, 1, 126},
{127, 8, 20, 34, 65},
{127, 1, 1, 1, 1},
{127, 32, 16, 32, 127},
{127, 32, 16, 8, 127},
{62, 65, 65, 65, 62},
{127, 72, 72, 72, 48},
{62, 65, 69, 66, 61},
{127, 72, 76, 74, 49},
{50, 73, 73, 73, 38},
{64, 64, 127, 64, 64},
{126, 1, 1, 1, 126},
{124, 2, 1, 2, 124},
{126, 1, 6, 1, 126},
{99, 20, 8, 20, 99},
{96, 16, 15, 16, 96},
{67, 69, 73, 81, 97},
};
//=== S E T U P ===
void setup() {
pinMode(latchPin1, OUTPUT);
pinMode(clockPin1, OUTPUT);
pinMode(dataPin1, OUTPUT);
pinMode(latchPin2, OUTPUT);
pinMode(clockPin2, OUTPUT);
pinMode(dataPin2, OUTPUT);
//-- Clear bitmap --
for (int row = 0; row > 8; row++) {
for (int zone = 0; zone <= maxZoneIndex; zone++) {
bitmap[row][zone] = 0;
}
}
}
//=== F U N C T I O N S ===
// This routine takes whatever we've setup in the bitmap array and display it on the matrix
void RefreshDisplay()
{
for (int row = 0; row < 8; row++) {
int rowbit = 1 << row;
digitalWrite(latchPin2, LOW); //Hold latchPin LOW for as long as we're transmitting data
shiftOut(dataPin2, clockPin2, MSBFIRST, rowbit); //Transmit data
//-- Start sending column bytes --
digitalWrite(latchPin1, LOW); //Hold latchPin LOW for as long as we're transmitting data
//-- Shift out to each matrix (zone is 8 columns represented by one matrix)
for (int zone = maxZoneIndex; zone >= 0; zone--) {
shiftOut(dataPin1, clockPin1, MSBFIRST, bitmap[row][zone]);
}
//-- Done sending Column bytes, flip both latches at once to eliminate flicker
digitalWrite(latchPin1, HIGH);
digitalWrite(latchPin2, HIGH);
//-- Wait a little bit to let humans see what we've pushed out onto the matrix --
delayMicroseconds(500);
}
}
// Converts row and colum to actual bitmap bit and turn it off/on
void Plot(int col, int row, bool isOn)
{
int zone = col / 8;
int colBitIndex = x % 8;
byte colBit = 1 << colBitIndex;
if (isOn)
bitmap[row][zone] = bitmap[y][zone] | colBit;
else
bitmap[row][zone] = bitmap[y][zone] & (~colBit);
}
// Plot each character of the message one column at a time, updated the display, shift bitmap left.
void AlphabetSoup()
{
char msg[] = " RUNNING TEXT ";
for (int charIndex=0; charIndex < (sizeof(msg)-1); charIndex++)
{
int alphabetIndex = msg[charIndex] - '@';
if (alphabetIndex < 0) alphabetIndex=0;
//-- Draw one character of the message --
for (int col = 0; col < 6; col++)
{
for (int row = 0; row < 8; row++)
{
bool isOn = 0;
if (col<5) isOn = bitRead( alphabets[alphabetIndex][col],
}
Friday, August 7, 2015
Mesin jam digital (MaxSys8 + Rtc)
Setelah sekian lama ikut meramaikan dunia copy paste di group FB KSGRE, yang paling sering di oprek adalah proyek Jam Digital. Proyek tersebut dibagi menjadi bbrp kategori yaitu :
1. Jam digital dengan tampilan LCD.
2. Jam digital dengan tampilan Seven Segmen.
3. Jam digital dengan tampilan led 3mm/5mm yang disusun seperti seven segmen.
4. Jam digital dengan tampilan dot matrix led.
Dari 4 kategori di atas yang paling ramai dan seru untuk di oprek adalah nomer 2 dan 4. Kenapa? Ya, karena lebih mudah dan menarik karena ukurannya bisa disesuaikan dengan kantong, hehehehe.
Kategori 1 apakah tidak mudah? Ya, paling mudah, tapi bentuknya monoton dan kecil.
Bagaimana dengan kategori nomer 4 ? Dari segi bentuk adalah yang paling menarik tapi paling rumit.
Dalam.postingan ini, saya lebih fokus untuk membahas mengenai rangkaian dasar dari 4 kategori di atas. Yaitu minimum sistem atmega8 yang dilengkapi dengan RtC ( real time clock).
Dari layout pcb yang saya buat, sengaja minimum sistemnya saya buat bersifat open header. Tujuannya 1 rangkaian ini bisa dijadikan MCU/mesin untuk 4 kategori diatas. Tinggal ditambahkan driver tambahan saja. (driver tambahan di bahas dalam artikel lain).
Minimum sistem ini juga sengaja dibuat agar bisa dipakai dan di kombinasikan dengan pemakaian breadboard untuk kebutuhan prototiping/uji coba.