Skip to main content

Antarmuka Mikrokontroler dengan Keypad

Waaaaaaahhhh....
baru kesampaian ni posting soal mikrokontroler......
kali ini saya akan membahas tentang bagaimana cara menggunakan dan memrogram untuk antarmuka keypad dengan mikrokontroler....

langsung saja, keypad merupakan tombol push button yang disusun sebagai baris dan kolomsehingga membentuk matriks. Keypad banyak digunakan sebagai piranti masukan dalam piranti elektronik.

untuk lebih jelasnya perhatikan gambar di bawah ini.

Gambar diatas merupakan rangkaian keypad 4x4. Terlihat bahwa terdapat 2 bagian yaitu baris dan kolom, baris dan kolom inilah yang nantinya akan disambungkan pada mikrokontroler untuk sistem scanning pada keypad.



pada rangkaian diatas terlihat bahwa baris pada keypad disambungkan dengan PORTB.0-PORTB.3 sedangkan bagian kolom PORT.4-PORT.7.
ketika salah satu tombol keypad ditekan, maka LCD akan menampilkan karakter sesuai dengan nama tombol tersebut.
untuk program rangkaian diatas sebagai berikut:

#include <mega8535.h>
#include <stdio.h>
#include <delay.h>

// Alphanumeric LCD Module functions
#include <alcd.h>

// Declare your global variables here
int hasil;
unsigned char buff[33];
unsigned char keypad()
{
PORTB = 0b11111110;  //aktifkan baris1 (memberi logika 0 ke baris1)
delay_ms(10);
if(PINB.7==0) return (10);
if(PINB.6==0) return (3);
if(PINB.5==0) return (2); 
if(PINB.4==0) return (1);
//========================
PORTB = 0b11111101;  //aktifkan baris2
delay_ms(10);
if(PINB.7==0) return (11);
if(PINB.6==0) return (6);
if(PINB.5==0) return (5);
if(PINB.4==0) return (4);
//========================
PORTB = 0b11111011;  //aktifkan baris3
delay_ms(10);
if(PINB.7==0) return (12);
if(PINB.6==0) return (9);
if(PINB.5==0) return (8);
if(PINB.4==0) return (7);
//========================
PORTB = 0b11110111;  //aktifkan baris4
delay_ms(10);
if(PINB.7==0) return (13);
if(PINB.6==0) return (15);
if(PINB.5==0) return (0);
if(PINB.4==0) return (14);
}

void main(void)
{
// Declare your local variables here
PORTB=0xFF;
DDRB=0x0F;

PORTD=0x00;
DDRD=0x00;

ACSR=0x80;
SFIOR=0x00;

// Alphanumeric LCD initialization
// Connections specified in the
// Project|Configure|C Compiler|Libraries|Alphanumeric LCD menu:
// RS - PORTD Bit 0
// RD - PORTD Bit 1
// EN - PORTD Bit 2
// D4 - PORTD Bit 4
// D5 - PORTD Bit 5
// D6 - PORTD Bit 6
// D7 - PORTD Bit 7
// Characters/line: 16
lcd_init(16);

while (1)
      {
      // Place your code here 
      hasil=keypad();
      lcd_clear();
      lcd_gotoxy(0,0);
      sprintf(buff,"hasil = %d",hasil);
      lcd_puts(buff);
      }
}

pada program diatas dapat kita ketahui bahwa untuk membuat keypad bekerja sesuai dengan tombol yang ditekan, memerlukan sistem scanning. Proses scanning tersebut memiliki prinsip kerja, pada baris secara bergantian diberi logika 0 (mulai baris pertama/ PORTB.0 sampai baris paling bawah PORTB.3). dan kolom pada PORTB4-PORTB.7 diberi logika 1. ketika salah satu kolom berlogika 0 pada baris tertentu maka pada function akan menghasilkan nilai balikan sesuai dengan nilai yang telah di set.
Contoh saja ketika menekan baris ke 2 (PORTB.2) berlogika 0 dan nilai masukkan dari kolom ke 2 (PINB.5) juga berlogika 0 maka nilai balikan pada function adalah 5. Nilai inilah yang nantinya akan ditampilkan pada LCD pada program diatas.

sekian dari saya...........semoga bermanfaat ^^



http://news.chivindo.com/231/antarmuka-mikrokontroler-dengan-keypad.html

Comments

Popular posts from this blog

SketchUp Pro 2020 v20.1.235 Full Version

BAGAS31 – SketchUp Pro 2020 v20.1.235 Full Version  merupakan software yang dirancang untuk membantu sobat membuat dan mengedit model 3D. Dengan desain tampilan yang ‘clean’ dan simple, menjadikan software ini mudah untuk digunakan. Software ini hadir dengan editor bawaan yang memungkinkan sobat mendesain objek 3D dari awal, Layout designer untuk menggabungkan model 3D serta Style Builder untuk menyesuaikan model dengan gaya yang berbeda. Software ini juga memiliki fitur untuk mengimpor data dari format lain, seperti 3DS, DWG, KMZ, JPG, PNG, PSD, TIF, TGA dan sebagainya. Tanpa berpanjang lebar, silakan download  Sketch Up Pro  versi terbaru 2020 v20.1.235 Full Version   melalui link yang disediakan. SketchUp Pro 2020 v20.1.235 Full Version Screenshots : Download : SketchUp Pro 2020 v20.1.235 Installer | Size: 128 MB [ FileUp ] | [ up4ever ] JAMU SketchUp Pro 2020 v20.1.235 Full Version | Size: 14.5 MB [ FileUp ] | [ ...

Assembly ducting

Kode Konversi Digital

Angka dikodekan dalam bentuk lain, mewakili atau menggunakannya sesuai kebutuhan. Misalnya, Angka ‘Sembilan’ dikodekan dalam simbol Desimal (9)d, dalam Natural-Binary (1001)b. Komputer Digital berurusan bilangan biner. Metode mengkonversi kode dari satu format ke  format  lain  ➤ Biner ke BCD  (Binary Coded Decimal)  ➤ BCD ke Seven Segmen                       ➤  BCD ke Grey Code                              ➤  Grey Code ke BCD                              ➤ BCD ke  Excess-3                                ➤  Excess-3  ke BCD                ...

Skematik dan PCB Layout Rangkaian Adaptor (Power Supply) AC to DC output 5 Volt

Software Proteus 8 Professional merupakan salah satu software elektronik yang digunakan untuk membantu para designer dalam merancang dan mensimulasikan suatu rangkaian elektronik. Software ini memiliki dua fungsi sekaligus dalam satu paket, yaitu sebagai software untuk menggambar skematik dan digunakan sebagai merancang gambar Printed Circuit Board (PCB). Pada tulisan kali ini saya akan memberikan sedikit tutorial cara membuat rangkaian Adaptor (Power Supply) AC to DC untuk keluaran tegangan 5 volt. Aplikasi yang akan digunakan disini adalah Proteus 8 Profesional. Alasan saya menggunakan aplikasi ini karena inilah salah satu aplikasi paling popular digunakan para desainer. Selain itu aplikasi ini juga mudah didapat dan kompatibel dengan banyak platform. Sedangkan alasan saya mengangkat tema ini karena ini juga salah satu tugas mata kuliah saya di semester 4, yaitu mata kuliah Elektronika Dasar. Di mata kuliah ini banyak dijelaskan bagaimana membuat rangkaian elektronika dan praktik pem...

Studi Peralatan Pembangkit dan Penggerak Mula

Gangguan pada Pusat-pusat Listrik secara garis besar dapat dibagi atas 4 kelompok, yaitu : a. Gangguan pada sirkit listrik generator b. Gangguan pada mesin penggerak mula c. Gangguan pada instalasi yang berhubungan dengan lingkungan seperti instalasi air pendingin dan saluran air terbuka pada PLTA . d. Gangguan pada sirkit kontrol . Dalam instalasi yang dijaga oleh operator seperti Pusat Listrik dan Gardu Induk ada gangguan yang tidak atau belum dilihat oleh Relai , tapi dilihat oleh operator yang kemudian berinisiatif men-trip-kan atau membuka Pemutus Tenaga ( PMT )/ circuit breaker demi keselamatan instalasi , maka dalam hal ini operator bertindak sebagai relai. Gangguan pada Sirkit Listrik Generator yang menyebabkan tripnya PMT, pada umumnya disebabkan oleh : a. Gangguan diluar seksi generator tetapi PMT generator ikut trip sebagai akibat kurang selektifnya relai generator b. Ada gangguan dalam seksi generator yang disebabkan karena: " Kerusakan generator atau alat ...