Kaskus

Hobby

ahocoolAvatar border
TS
ahocool
Hobby Elektronika Digital, MicroController & solder Menyolder gabung sini Yuks
DIGITAL ELECTRONICS HOBBY FORUM

Hobby Elektronika Digital, MicroController & solder Menyolder gabung sini Yuks


Spoiler for apa aja sih yang dibahas?:


Spoiler for "Hobby Microcontroller Itu Mahal ? Kreativitasmu Itu yg Mahal Gan !":




UPDATE 8/JUNI/2014

DUKUN FUSEBIT AKAN MENGHIDUPKAN IC MU YANG MATI !

Hobby Elektronika Digital, MicroController & solder Menyolder gabung sini Yuks

Selengkapnya dibahas di sini gan !!

CLINOMETER SEDERHANA MEMANFAATKAN ADC

Hobby Elektronika Digital, MicroController & solder Menyolder gabung sini Yuks

Selengkapnya dibahas di post berikut




Spoiler for Buka Jika Mau Paket Belajar:


Proyek2 micro yg sudah jadi
Quote:



I.N.D.E.X F.O.R.U.M

Quote:




Biar ngiler, ane kasih contoh hasil karya TS...






Spoiler for Contact TS lewat dimari yahh:



.
Diubah oleh ahocool 14-06-2025 11:27
0
1M
8.6K
GuestAvatar border
Komentar yang asik ya
Mari bergabung, dapatkan informasi dan teman baru!
Hobby & Community
Hobby & Community
KASKUS Official
10.5KThread7KAnggota
Tampilkan semua post
ahocoolAvatar border
TS
ahocool
#4327
Quote:



mau diramein ? ayo deh bahas yang gampang2 aja...keypad 3x4


kaskus-image


ayo posting coding agan mengenai keypad...bisa cara apa aja...


kalo ane skematiknya pake ini :

kaskus-image

ane pull up di Column nya ..., jadi 3 input Col , 4 output Row


listingnya :

Code:


uint8_t tombol(void)
{

uint8_t key=100; //nilai default (tidak ada penekanan)

// scanning row 1
PORTD &= ~_BV(PD3);
PORTD |= _BV(PD4)|_BV(PD5)|_BV(PD6);
_delay_ms(1);


if(bit_is_clear(PIND, PIND0) ) key= 1;
else if(bit_is_clear(PIND, PIND1) ) key= 2;
else if(bit_is_clear(PIND, PIND2)) key= 3;


// scanning row 2
PORTD &= ~_BV(PD4);
PORTD |= _BV(PD3)|_BV(PD5)|_BV(PD6);
_delay_ms(1);

if(bit_is_clear(PIND, PIND0) ) key= 4;
else if(bit_is_clear(PIND, PIND1) ) key= 5;
else if(bit_is_clear(PIND, PIND2) ) key= 6;


// scanning row 3
PORTD &= ~_BV(PD5);
PORTD |= _BV(PD4)|_BV(PD3)|_BV(PD6);
_delay_ms(1);

if(bit_is_clear(PIND, PIND0) ) key= 7;
else if(bit_is_clear(PIND, PIND1) ) key= 8;
else if(bit_is_clear(PIND, PIND2) ) key= 9;


// scanning row 4
PORTD &= ~_BV(PD6);
PORTD |= _BV(PD4)|_BV(PD5)|_BV(PD3);
_delay_ms(1);


if(bit_is_clear(PIND, PIND1) ) key= 0;
else if(bit_is_clear(PIND, PIND2) ) key= 21; //*
else if(bit_is_clear(PIND, PIND0) ) key= 20; //#



return key;



}





bagaimana punya agan ?
0
Ikuti KASKUS di
© 2025 KASKUS, PT Darta Media Indonesia. All rights reserved.