Anda di halaman 1dari 24

About

Service

Webmail Contact Portfolio


Portfolio 2009 Portfolio 2010 Portfolio 2011

Order RSS for Entries Subscribe by Email


Top of Form

Search in s
Bottom of Form

Home Article

Electronics Microcontroller

Download Product

Jam Digital Scoreboard Jadwal Sholat Bel Cerdas Cermat Prototype Bel Sekolah Otomatis Moving Sign Digit Counter

Project

Application Gallery

Penerjemah dan Pembuah Sandi Morse Pramuka


Written by Shato Media Application Jun 7, 2010 Penerjemah dan Pembuat Sandi Morse Pramuka Berbasis Mikrokontroler AT89C51 ini dapat dilihat pada gambar 4.1.

Gambar 1 Rangkaian alat keseluruhan Diagram Kotak Perangkat Keras Sistem penerjemah dan pembuat sandi morse pramuka ini menggunakan mikrokontroler AT89C51. Gambar 2 menunjukkan blok diagram dari alat ini.

Gambar 2 Blok diagram sistem Pada Gambar 2 ditunjukkan diagram kotak sistem secara keseluruhan. Mikrokontroler AT89C51 berfungsi sebagai pembaca masukan data keyboard yang ditekan, dengan sistem komunikasi

serial. Mikrokontroler membandingkan data keyboard dengan metode melihat tabel ASCII yang sudah dikonversi, setelah itu dikonversi lagi ke dalam bentuk sandi pramuka (morse). Penampil LCD M1632 ini yang akan menampilkan karakter huruf atau angka yang ditekan pada keyboard, dan menampilkan hasil konversi huruf atau angka ke dalam sandi pramuka (morse). Sistem Perangkat Keras Perancangan perangkat keras dilakukan dengan mengacu pada sistem yang telah direncanakan pada diagram kotak. Masing-masing sistem dijabarkan sebagai berikut. Mikrokontroler Mikrokontroler merupakan komponen utama yang mengendalikan seluruh sistem. Mikrokontroler yang digunakan pada penelitian ini adalah mikrokontroler keluaran Atmel dengan seri AT89C51. Untuk bekerja dengan mikrokontroler ini diperlukan beberapa komponen tambahan yang sering disebut dengan sistem minimum. Syarat-syarat tersebut antara lain, sistem clock atau osilator, dan sistem reset. Pada penelitian ini sistem minimum disajikan pada Gambar 3.

Gambar 3 Sistem minimum mikrokontroler

Pada Gambar 3 disajikan skema rangkaian minimum mikrokontroler AT89S51/52. Sistem pendukung yang pertama yaitu sistem osilator yang terdiri dari x-tal senilai 12 MHz dan dua buah kapasitor senilai 33pF. Sistem pendukung yang berikutnya adalah sistem reset. Sistem reset terdiri dari sebuah kapasitor senilai 10uF dan resistor senilai 10K. Proses reset akan otomatis terjadi saat sumber tegangan pertama kali diberikan. Adapun prosesnya adalah, saat pertama kali sumber tegangan Vcc masuk ke rangkaian reset maka kapasitor akan terisi sampai penuh. Pada saat kondisi kapasitor penuh dan nilai tegangan kapasitor senilai Vcc maka logika 1 akan diberikan pada pin RST dari mikrokontroler ini, sehingga secara otomatis mikrokontroler akan reset. Setelah kapasitor akan penuh muatan dalam kapasitor berangsur-angsur akan dibuang melalui resistor 10K sampai kondisi kapasitor kosong dan logika pada pin RST bernilai 0. Antarmuka Mikrokontroler dengan Keyboard PS/2 Antarmuka mikrokontroler dengan keyboard konektor PS/2 ini hanya membutuhkan 2 buah jalur yaitu jalur clock dan jalus data keyboard. Jalur clock ini dihubungkan dengan P3.3 (INT.1), sedangkan jalur data dihubungkan pada P3.2 (INT.0). Untuk mengetahui data yang dikirimkan oleh keyboard mikrokontroler terus-menerus mendeteksi apakah pin clock berlogika 0 volt, kemudian menunggu urutan pengiriman data keyboard yang berjumlah 11 bit. Berikut ini adalah Gambar 4 Antarmuka mikrokontroler dengan keyboard konektor PS/2.

Gambar 4 Antarmuka mikrokontroler dengan keyboard konektor PS/2

Pada Gambar 4 bahwa P3.3 dan P3.2 mikrokontroler dihubungkan ke konektor PS/2 keyboard. Pada port ini diberikan dioda IN4148 dan juga resistor pull-up sebesar 10K yang terhubung dengan Vcc. Resitor pull-up ini berfungsi menstabilkan port mikrokontroler agar tegangan tidak mengambang di antara logika 0 dan logika 1. Keyboard juga memerlukan Vcc input yaitu sebesar 5 Vdc yang dapat diambilkan dari sistem minimum mikrokontroler. Liquid Crystal Display (LCD)

LCD merupakan pinmpil yang digunakan untuk memberikan informasi bagi pengguna alat. LCD ada yang mempunyai satu baris dan ada yang dua baris, LCD satu baris disebut LCD 1 x 16 dan LCD dua baris biasa disebut LCD 2 x 16, 16 menunjukkan banyaknya karakter yang dapat ditampilkan dalam setiap baris. Pada sistem penerjemah huruf abjad dan angka ke sandi morse, LCD digunakan untuk menampilkan karakter dan hasil konversi sandi morse. Pada Gambar 5 merupakan antarmuka LCD 216 M1632 dengan menggunakan mode antarmuka 8 bit. Berikut beberapa hal yang perlu diperhatikan: LCD selalu berada pada kondisi tulis (write), dengan menghubungkan pin R/W ke ground. Hal ini dimaksudkan agar LCD tersebut tidak pernah mengeluarkan data (kondisi baca) yang mana data tersebut akan bertabrakan dengan data komponen lain di jalur bus.

Gambar 5 Antarmuka Liquid Crystal Display Pin RS pada LCD terhubung dengan P2.0, di mana pin ini berfungsi sebagai register data atau register perintah ke LCD maupun dari LCD. Register data adalah data yang akan ditampilkan dari mikrokontroler, sedangkan register perintah adalah perintah mikrokontroler untuk mengkondisikan LCD. Untuk pin E pada LCD terhubung dengan P2.1 dari mikrokontroler, digunakan sebagai pemberi clock dari mikrokontroler ke LCD setiap kali pengiriman atau pembacaan data. Potensio 10K yang tampak pada Gambar 5 berfungsi untuk mengatur tegangan pada pin VLCD. Besarnya tegangan pada pin tersebut akan mempengaruhi ketajaman yang tampak pada LCD. Pada pin A terhubung dengan dioda IN4002 yang berfungsi untuk menjaga ada bias balik dari sumber daya, pin A ini berfungsi sebagai backlight pada pinmpil LCD, dan grounding dari backlight terhubung pada pin K. Backlight ini berfungsi sebagai pembangkit cahaya yang timbul dibelakang LCD, sehingga tampilan dari LCD tersebut akan semakin jelas. Rangkaian Keseluruhan Setelah rangkaian untuk keyboard, sistem minimum mikrokontroler, dan rangkaian pinmpil LCD diketahui dengan benar. Tahap berikutnya adalah menggabungkan keseluruhan rangkaian tersebut sehingga membentuk sistem penerjemah kode morse. Gambar 6 memperlihatkan rangkaian secara keseluruhan.

Gambar 6 Rangkaian keseluruhan Sistem Perangkat Lunak Perancangan Flow chart Perancangan perangkat lunak untuk menangani sistem penerjemah kode morse, disusun berdasarkan flow chart yang disajikan pada Gambar 7 berikut.

Perancangan Perangkat Lunak Perangkat lunak yang dibangun menggunakan bahasa asembler, didasarkan pada flow chart yang telah disusun pada Gambar 7. Beberapa potongan program yang digunakan untuk menangani sistem adalah sebagai berikut. Untuk memberikan proses inisialisasi LCD, potongan program berikut mengilustrasikan pengiriman data tersebut. ;====================================================== ; Subrutin Inisialisasi LCD ;====================================================== Init_lcd: mov r1,#00000001b acall acall write_inst ;Function set, Data 8 bit,2 line font 57 ;Display on, ;cursor off,cursor blink off write_inst mov r1,#00111000b mov r1,#00001100b ;Display clear

acall acall ret

write_inst ;Entry mode, Set increment write_inst

mov r1,#00000110b

Setelah itu proses berikutnya adalah mengambil data keyboard yang ditekan, dan menyimpan pada RAM mikrokontroler AT89C51. Berikut ini adalah potongan programnya. ;============================================ ;Subrutine AmbilKeyboard ;=========================================== AmbilKeyboard: call ambil_scancode; panggil ambil scan code rutin tunggu_tombol_dilepas: cjne a,#0F0h,kybd_tidakLepas; cek a = 0f0h ? jika tidak lompat ; ke sub kybd_tidaklepas JB KbdClock,$ call Setb call ret Kybd_tidakLepas: Clr ret Isi dari RAM mikrokontroler akan dibandingkan apakah merupakan angka dan huruf abjad yang akan dikonversikan ke dalam sandi pramuka (morse). mov a,DataKeyboard mov r3,#16 mov scan_A: jmp scan_B: jmp scan_C: jmp scan_D: r1,#0c0h cjne a,#A',scan_B awalan cjne a,#B',scan_C awalan cjne a,#C',scan_D awalan cjne a,#D',scan_E C C ; tunggu bit kbdclock hingga 0 ; panggil sub ambil scan kode ;c=1 ambil_Scancode

Konversi_Scancode ; panggil sub konversi scan kode

call TUlis_char_A

call TUlis_char_B

call TUlis_char_C

call TUlis_char_D jmp scan_E: jmp awalan cjne a,#E',scan_F awalan

call TUlis_char_E Data Tabel Konversi Sandi Morse Untuk mempermudah pemrograman konversi huruf dan angka ke dalam sandi morse, pertama kali sandi tersebut dibuat tabel agar tidak terjadi kekeliruan saat mengambil data dan menampilkannya ke LCD Tabel 1 Tabel sandi morse No 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 Simbol Program h_a h_b h_c h_d h_e h_f h_g h_h h_i h_j h_k h_l h_m h_n h_o h_p h_q h_r h_s h_t h_u h_v h_w h_x h_y h_z h_0 h_1 h_2 h_3 h_4 h_5 h_6 Huruf / angka A B C D E F G H I J K L M N O P Q R S T U V W X Y Z 0 1 2 3 4 5 6 Konversi morse A = .B = - C = -.-. D = -.. E=. F = ..-. G = . H = . I = .. J = . K = -.L = .-.. M= N = -. O= P = .. Q = .R = .-. S= T=U = ..V = W = . X = -..Y = -. Z = .. 0 = 1 = .2 = .. 3 = 4 = .5 = .. 6 = -.

34 35 36

h_7 h_8 h_9

7 8 9

7 = 8 = .. 9 = -.

Pada Tabel 1 di atas menunjukkan isi tabel konversi huruf dan angka yang bisa dikonversi ke sandi morse. Mikrokontroler membaca data masukan keyboard setelah itu membandingkan dengan isi tabel, dan menampilkan hasil konversi ke LCD.

DOWNLOAD PROGRAM
Related Posts
1. Line Follower III 2. Line Follower II 3. Line Follower I 4. Antarmuka Keyboard Sebagai Masukan Data LED Matriks 7 baris x 32 Kolom (2) 5. Antarmuka Keyboard Sebagai Masukan Data LED Matriks 7 baris x 32 Kolom

Comments are closed

Product

Bel Cerdas Cermat Bel Sekolah Otomatis Jadwal Sholat Jam Digital Moving Sign Scoreboard

Gallery Product

New Product

Bel Cerdas Cermat

Bel Cerdas Cermat (BCC-02)


SPESIFIKASI: - Dapat Membedakan dan Mengunci Penekanan Tombol Tercepat Display Kontrol Menggunakan...

Jadwal Sholat

Jadwal Sholat (JWS-04)

Penampil jadwal waktu sholat digital untuk menampikan waktu sholat fardlu (5 waktu)...

Product

Moving Sign (MS-2DM1B)


Spesifikasi: DOT MATRIX Pack kualitas Bright Dimensi modul 2 Inch Warna Tampilan Merah...

Jam Digital

Jam Digital (JD-LD1x4)


Buikt in realtimeclock yang dilengkapi dengan tampilan Jam : Menit atau Menit...

Count per Day


365Reads today: 83303Total visitors:

Subscribe in a reader

JOINT US

Tags

Application Article
jam download jam digiral

ASCII Bel sekolah Otomatis Cahaya Digital

digital jam Dotmatriks download

Electronics Gallery harga jam digital industrial counter Inframerah ispu Jam Jam

Digital Jam Digital 3 Warna jam digital blog JAM DIGITAL LED jam dinding digital jual jam digital Komponen Led Light Dipendent Resistor membuat jam digital Microcontroller moving sign moving sign display kurs valas Penampil
Dotmatiks (1)

Product program jam digital Project Radio Rangkaian rangkaian jam digital Referensi

Schematic Sistem Pengendali Dotmatrix Sistem Scanning Dotmatriks sms Suara Susunan LED Matriks Waktu

ADVERTISEMENT

Log in - BlogNews Theme by Gabfire themes Loading...

About

Nita Gici's Blog


^^trusted information found here^^
Embedded system: Interfacing ps/2 pc keyboard to AVR ATMega8535 microcontroller June 15, 2010
Filed under: electronics nitagici @ 2:23 am

Sebuah keyboard seperti miniatur komputer. Keyboard mempunyai prosesor sendiri dan rangkaian sirkuit yang membawa informasi menuju dan dari prosesor tersebut. Bagian terbesar dari rangkaian keyboard berupa key matrix. Key matrix adalah sebuah kisi rangkaian dibawah tombol-tombol keyboard. Di dalam keyboard, tiap rangkaiannya terputus (seperti saklar)

Gambar 1. Prosesor dalam keyboard Untuk interfacing dari PS/2 PC keyboard ke mikrokontroler AVR ATMega8535 seperti gambar berikut:

Gambar 2. Pin out PS/2 Cara kerja keyboard:

-Keyboard melakukan scanning lokasi tombol yg ditekan.


-Setiap penekanan tombol, keyboard mengirim data F0 diikuti kode scan masingmasing tombol(gambar 3).

-Transmisi data, dari keyboard ke sistem, dilakukan dengan frame 11 bit. Bit pertama adalah bit start ( logika 0 ), diikuti dengan 8 bit data ( LSB first ), satau bit paristas ( paritas ganjil ) dan bit stop ( logika 1 ). Setiap bit harus dibaca pada sisi turun dari clock.

Gambar 3. Scan Code

Ilustrasi pengiriman data adalah sebagai berikut:

Gambar 4. Sinyal clock dan data

Data yang dikirim dari keyboard ke mikro ditampilkan ke LCD yang dihubungkan ke portB:

Gambar 5. Koneksi LCD ke mikro

Algoritma: Clock masuk pada PortD.2 (INT0) yang akan mengeksekusi clock dan data disimpan saat falling edge (dari 1 menjadi 0). Setelah semua bit diterima maka data diterjemahkan ke karakter ASCII dengan metode lookup table. Source code (CodeVision AVR):
/***************************************************** This program was produced by the CodeWizardAVR V1.25.8 Professional Automatic Program Generator Copyright 1998-2007 Pavel Haiduc, HP InfoTech s.r.l. http://www.hpinfotech.com Project : Version : Date : 5/14/2010 Author : F4CG Company : F4CG Comments: Chip type : ATmega8535 Program type : Application Clock frequency : 4.000000 MHz Memory model : Small External SRAM size : 0 Data Stack size : 256 *****************************************************/ #include <mega8535.h>

#include <delay.h> #include <stdio.h> // Alphanumeric LCD Module functions #asm .equ __lcd_port=0x18 ;PORTB #endasm #include <lcd.h> /*---------------------------------------------------------------define mouse pin ----------------------------------------------------------------*/ #define indata PIND.3 #define otdata PORTD.3 #define inclk PIND.2 #define otclk PORTD.2 /*---------------------------------------------------------------*/ // Standard Input/Output functions #include <stdio.h> /**************************************** * Baca data dari PS2 * *****************************************/ char Read_ps2data(void) { char data = 0x00; int i=0; char dt = 0x01; //start the clock //gohi(MCLK); DDRD.2=0; otclk=1; //gohi(MDATA); DDRD.3=0; otdata=1; delay_us(50); //while (digitalRead(MCLK) == HIGH); //DDRD.2=0; while (inclk==1); delay_us(5); //while (digitalRead(MCLK) == LOW); // eat start bit while (inclk==0); // eat start bit for (i=0; i < 8; i++) { //while (digitalRead(MCLK) == HIGH); while (inclk==1); //if (digitalRead(MDATA) == HIGH) //DDRD.3=0; //putchar(indata); if (indata==1) { data = data | dt;

} //while (digitalRead(MCLK) while (inclk==0); dt = dt << 1; } //eat parity bit, which we //while (digitalRead(MCLK) //while (digitalRead(MCLK) while (inclk==1); while (inclk==0);

== LOW);

ignore == HIGH); == LOW);

//eat stop bit while (inclk==1); while (inclk==0); //put a hold on the incoming data. //golo(MCLK); DDRD.2=1; PORTD.2=0; return data;

void main(void) { // Declare your local variables here unsigned int even; char buff[33]; unsigned char kbd; bit flag; // Input/Output Ports initialization // Port B initialization // Func7=In Func6=In Func5=In Func4=In Func3=In Func2=In Func1=In Func0=In // State7=T State6=T State5=T State4=T State3=T State2=T State1=T State0=T PORTB=0x00; DDRB=0x00; // Port C initialization // Func6=In Func5=In Func4=In Func3=In Func2=In Func1=In Func0=In // State6=T State5=T State4=T State3=T State2=T State1=T State0=T PORTC=0x00; DDRC=0x00; // Port D initialization // Func7=In Func6=In Func5=In Func4=In Func3=In Func2=In Func1=In Func0=In // State7=T State6=T State5=T State4=T State3=T State2=T State1=T State0=T PORTD=0x00; DDRD=0x00; // Timer/Counter 0 initialization // Clock source: System Clock // Clock value: Timer 0 Stopped TCCR0=0x00; TCNT0=0x00; // Timer/Counter 1 initialization // Clock source: System Clock // Clock value: Timer 1 Stopped

// Mode: Normal top=FFFFh // OC1A output: Discon. // OC1B output: Discon. // Noise Canceler: Off // Input Capture on Falling Edge // Timer 1 Overflow Interrupt: Off // Input Capture Interrupt: Off // Compare A Match Interrupt: Off // Compare B Match Interrupt: Off TCCR1A=0x00; TCCR1B=0x00; TCNT1H=0x00; TCNT1L=0x00; ICR1H=0x00; ICR1L=0x00; OCR1AH=0x00; OCR1AL=0x00; OCR1BH=0x00; OCR1BL=0x00; // Timer/Counter 2 initialization // Clock source: System Clock // Clock value: Timer 2 Stopped // Mode: Normal top=FFh // OC2 output: Disconnected ASSR=0x00; TCCR2=0x00; TCNT2=0x00; OCR2=0x00; // External Interrupt(s) initialization // INT0: Off // INT1: Off MCUCR=0x00; // Timer(s)/Counter(s) Interrupt(s) initialization TIMSK=0x00; // Analog Comparator initialization // Analog Comparator: Off // Analog Comparator Input Capture by Timer/Counter 1: Off ACSR=0x80; SFIOR=0x00; // Global enable interrupts #asm("sei") lcd_init(16); while (1) { even=Read_ps2data(); //huruf kecil if (even==0x1c){kbd='a';} if (even==0x32){kbd='b';} {kbd='c';} if (even==0x23){kbd='d';} //huruf kecil

if (even==0x21)

if (even==0x24){kbd='e';} {kbd='g';} if (even==0x33){kbd='h';} if (even==0x43){kbd='i';} {kbd='k';} if (even==0x4b){kbd='l';} if (even==0x3a){kbd='m';} {kbd='o';} if (even==0x4d){kbd='p';} if (even==0x15){kbd='q';} {kbd='s';} if (even==0x2c){kbd='t';} if (even==0x3c){kbd='u';} {kbd='w';} if (even==0x22){kbd='x';} if (even==0x35){kbd='y';} //angka if (even==0x16){kbd='1';} {kbd='3';} if (even==0x25){kbd='4';} if (even==0x2e){kbd='5';} {kbd='7';} if (even==0x3e){kbd='8';} if (even==0x46){kbd='9';} if (even==0x4e){kbd='-';} if (even==0x54){kbd='[';} {kbd=';';} if (even==0x52){kbd=',';} if (even==0x29){kbd=' ';} {kbd='.';} if (even==0x4a){kbd='/';} if (even==0x0e){kbd='~';} {kbd='+';} if (even==0xe0){kbd='?';} {kbd='>';} if if if if if if if if if if if if if if if if if

if (even==0x2b){kbd='f';} if (even==0x3b){kbd='j';} if (even==0x31){kbd='n';} if (even==0x2d){kbd='r';} if (even==0x2a){kbd='v';} if (even==0x1a){kbd='z';} if (even==0x1e){kbd='2';} if (even==0x36){kbd='6';} if (even==0x45){kbd='0';} if (even==0x55){kbd='=';} if (even==0x5b){kbd=']';} if (even==0x41){kbd=',';} if (even==0x7b){kbd='-';} if (even==0x7c){kbd='<';}

if (even==0x34) if (even==0x42) if (even==0x44) if (even==0x1b) if (even==0x1d)

if (even==0x26) if (even==0x3d)

//simbol tanpa shift if (even==0x4c) if (even==0x49) if (even==0x79) if (even==0x71)

(even==0x05){lcd_putsf("F1");} if (even==0x06){lcd_putsf("F2");} (even==0x04){lcd_putsf("F3");} if (even==0x0c){lcd_putsf("F4");} (even==0x03){lcd_putsf("F5");} if (even==0x0b){lcd_putsf("F6");} (even==0x83){lcd_putsf("F7");} if (even==0x0a){lcd_putsf("F8");} (even==0x01){lcd_putsf("F9");} if (even==0x09){lcd_putsf("F10");} (even==0x78){lcd_putsf("F11");} if (even==0x07){lcd_putsf("F12");} (even==0x76){kbd='';lcd_gotoxy(0,0);} //esc (even==0x0d){kbd='`';lcd_gotoxy(15,1);}//tab (even==0x5a){kbd='';lcd_gotoxy(0,1);} //enter (even==0x66){kbd='';lcd_clear();} //backspace (even==0x12){kbd='';flag=1;} //shift ((flag==1)&(even==0x1c)) {kbd='A';flag=0;} //Huruf besar ((flag==1)&(even==0x32)) {kbd='B';flag=0;} ((flag==1)&(even==0x21)) {kbd='C';flag=0;} ((flag==1)&(even==0x23)) {kbd='D';flag=0;} ((flag==1)&(even==0x24)) {kbd='E';flag=0;} ((flag==1)&(even==0x2b)) {kbd='F';flag=0;}

if if if if if if if if if if if if if if if if if if if if if if if if if if if if if if if if if if if if if if if if

((flag==1)&(even==0x34)) ((flag==1)&(even==0x33)) ((flag==1)&(even==0x43)) ((flag==1)&(even==0x3b)) ((flag==1)&(even==0x42)) ((flag==1)&(even==0x4b)) ((flag==1)&(even==0x3a)) ((flag==1)&(even==0x31)) ((flag==1)&(even==0x44)) ((flag==1)&(even==0x4d)) ((flag==1)&(even==0x15)) ((flag==1)&(even==0x2d)) ((flag==1)&(even==0x1b)) ((flag==1)&(even==0x2c)) ((flag==1)&(even==0x3c)) ((flag==1)&(even==0x2a)) ((flag==1)&(even==0x1d)) ((flag==1)&(even==0x22)) ((flag==1)&(even==0x35)) ((flag==1)&(even==0x1a)) ((flag==1)&(even==0x16)) ((flag==1)&(even==0x1e)) ((flag==1)&(even==0x26)) ((flag==1)&(even==0x25)) ((flag==1)&(even==0x2e)) ((flag==1)&(even==0x36)) ((flag==1)&(even==0x3d)) ((flag==1)&(even==0x3e)) ((flag==1)&(even==0x46)) ((flag==1)&(even==0x45)) ((flag==1)&(even==0x41)) ((flag==1)&(even==0x49)) ((flag==1)&(even==0x4a)) ((flag==1)&(even==0x55)) ((flag==1)&(even==0x5d)) ((flag==1)&(even==0x4e)) ((flag==1)&(even==0x52)) ((flag==1)&(even==0x4c)) ((flag==1)&(even==0x54)) ((flag==1)&(even==0x5b))

{kbd='G';flag=0;} {kbd='H';flag=0;} {kbd='I';flag=0;} {kbd='J';flag=0;} {kbd='K';flag=0;} {kbd='L';flag=0;} {kbd='M';flag=0;} {kbd='N';flag=0;} {kbd='O';flag=0;} {kbd='P';flag=0;} {kbd='Q';flag=0;} {kbd='R';flag=0;} {kbd='S';flag=0;} {kbd='T';flag=0;} {kbd='U';flag=0;} {kbd='V';flag=0;} {kbd='W';flag=0;} {kbd='X';flag=0;} {kbd='Y';flag=0;} {kbd='Z';flag=0;} {kbd='!';flag=0;} {kbd='@';flag=0;} {kbd='#';flag=0;} {kbd='$';flag=0;} {kbd='%';flag=0;} {kbd='^';flag=0;} {kbd='&';flag=0;} {kbd='*';flag=0;} {kbd='9';flag=0;} {kbd='0';flag=0;} {kbd='<';flag=0;} {kbd='>';flag=0;} {kbd='?';flag=0;} {kbd='+';flag=0;} {kbd='|';flag=0;} {kbd='_';flag=0;} {kbd='"';flag=0;} {kbd=':';flag=0;} {kbd='{';flag=0;} {kbd='}';flag=0;} //Simbol diatas angka

//Simbol lain

sprintf(buff,"%c",kbd); lcd_puts(buff); delay_ms(10); }; }

//tampilkan lcd

Like Be the first to like this post.

Leave a Comment

Leave a Reply
Top of Form

Enter your comment here...

Fill in your details below or click an icon to log in:


Email (required) (Address never made public)

Name (required)

Website

Notify me of follow-up comments via email.


Bottom of Form

Categories

electronics Programming Uncategorized

Archives
September 2010 June 2010 April 2010 February 2010 January 2010

Blogroll
Blog at WordPress.com. Blog at WordPress.com.

Searching
Top of Form

Bottom of Form

Blog at WordPress.com. Theme: Rounded by Release. RSS Comments RSS WP

Follow

Follow Nita Gici's Blog


Top of Form

Get every new post delivered to your Inbox.


Enter your

Bottom of Form

Powered by WordPress.com

Anda mungkin juga menyukai