Home >Documents >program lcd di atmega 128

program lcd di atmega 128

Date post:05-Dec-2015
Category:
View:229 times
Download:2 times
Share this document with a friend
Description:
pemrograman dan elektronika
Transcript:
  • 1

    Praktek 6

    Display Data Pada LCD

    Tujuan:

    Mahasiswa mengerti cara membuat program C pada mikrokontroller AVR untuk melakukan pemrograman pada modul LCD

    Peralatan yang digunakan:

    modul AVR

    Modul LCD

    Deskripsi/ Dasar Teori:

    Gambar 1. Rangkaian Modul AT Mega 128

  • 2

    Gambar 2. LCD Karakter 20x2

  • 3

    Gambar 3. Daftar Kode Karakter yang bisa ditampilkan di LCD karakter

  • 4

    PERCOBAAN 1 #include

    #include "lcd.h"

    void main(void)

    {

    PORTA=0xff; // semua bit jadi output

    DDRA=0xff;

    lcd_init();

    lcd_putchar('s');

    lcd_putchar('t');

    while(1)

    {}

    }

    Hasilnya:

    PERCOBAAN 2 #include

    #include "lcd.h"

    void main(void)

    {

    PORTA=0xff; // semua bit jadi output

    DDRA=0xff;

    lcd_init();

    lcd_putchar('s');

    lcd_gotoxy(5,0); //untuk meletakkan karakter yang ada di baris

    // berikutnya

    lcd_putchar('t');

    lcd_gotoxy(3,1);

    lcd_putchar('t');

    while(1)

    {}

    }

  • 5

    Hasilnya:

    PERCOBAAN 3

    #include

    #include "lcd.h"

    void main(void)

    {

    PORTA=0xff; // semua bit jadi output

    DDRA=0xff;

    lcd_init();

    lcd_putchar('s');

    lcd_putchar(0x30);

    lcd_putchar(' ');

    lcd_putchar(0xc0);

    lcd_putchar(65);

    while(1)

    {}

    }

    Hasilnya:

  • 6

    PERCOBAAN 4 #include

    #include

    #include "lcd.h"

    void main(void)

    {

    PORTA=0xff; // semua bit jadi output

    DDRA=0xff;

    lcd_init();

    lcd_putsf("hallo");

    delay_ms(1000);

    lcd_clear();

    lcd_putsf("apa kabar..");

    while(1)

    {}

    }

    PERCOBAAN 5 Animasi garis yang berputar.

    #include

    #include

    #include "lcd.h"

    void main(void)

    {

    PORTA=0xff; // semua bit jadi output

    DDRA=0xff;

    lcd_init();

    lcd_putsf ("Loading.. ");

    while (1)

    {

    lcd_gotoxy(10,0);

    lcd_putchar('-');

    delay_ms(100);

    lcd_gotoxy(10,0);

    lcd_putchar('|');

    delay_ms(100);

    lcd_gotoxy(10,0);

    lcd_putchar('/');

    delay_ms(100);

    };

    }

  • 7

    Hasilnya:

    D7

    14D

    613

    D5

    12D

    411

    D3

    10D

    29

    D1

    8D

    07

    E6

    RW

    5R

    S4

    VS

    S1

    VD

    D2

    VE

    E3

    LCD1LM032L

    PERCOBAAN 6 Bandingkan dengan percobaan 5 diatas:

    #include

    #include

    #include "lcd.h"

    void main(void)

    {

    PORTA=0xff; // semua bit jadi output

    DDRA=0xff;

    lcd_init();

    lcd_putsf ("Loading.. ");

    lcd_cursoroff();

    while (1)

    {

    lcd_gotoxy(10,0);

    lcd_putchar('-');

    delay_ms(100);

    lcd_gotoxy(10,0);

    lcd_putchar('|');

    delay_ms(100);

    lcd_gotoxy(10,0);

    lcd_putchar('/');

    delay_ms(100);

    };

    }

    Hasilnya:

  • 8

    PERCOBAAN 7 #include

    #include

    #include "lcd.h"

    void main(void)

    {

    int a;

    PORTA=0xff; // semua bit jadi output

    DDRA=0xff;

    lcd_init();

    lcd_cursoroff();

    while (1)

    {

    lcd_putsf ("Loading.. ");

    lcd_gotoxy(0,1);

    for (a=1;a

  • 9

    PERCOBAAN 8

    Menampilkan angka desimal dari 0 sampai 199 dan berulang.

    #include

    #include

    #include "lcd.h"

    ///////////////////////////////

    void H2BCD(int bilangan)

    {

    int ratusan,puluhan,satuan;

    ratusan= bilangan/100; // misal bilangan=231

    // 231/100= 2

    puluhan = (bilangan - (ratusan*100))/10; // (231-(2*100))/10

    // (231-200)/10 = 31/10 = 3

    satuan = bilangan - (puluhan*10) - (ratusan*100);

    lcd_putchar(ratusan+0x30);

    lcd_putchar(puluhan+0x30);

    lcd_putchar(satuan+0x30);

    }

    void main(void)

    {

    int a;

    PORTA=0xff; // semua bit jadi output

    DDRA=0xff;

    lcd_init();

    lcd_cursoroff();

    while (1)

    {

    for(a=0;a

  • 10

    PERCOBAAN 9

    Menampilkan tulisan tes lcd scroll dari kiri ke kanan. #include

    #include

    #include "lcd.h"

    /////////////////////////

    void main(void)

    { int a,i;

    flash unsigned char *pesan;

    PORTA=0xff; // semua bit jadi output

    DDRA=0xff;

    lcd_init();

    lcd_cursoroff();

    // 47=20+ jmlh karakter + 20 (20 jmlh barisnya LCD)

    // 12345678901234567890123456789012345678901234567

    pesan=" tes lcd ";

    while (1)

    {

    for(a=0;a

  • 11

    PERCOBAAN 10

    Menampilkan tulisan tes lcd scroll dari kiri ke kanan (2).

    #include

    #include

    #include "lcd.h"

    /////////////////////////

    void main(void)

    { int a,i;

    flash unsigned char *pesan;

    PORTA=0xff; // semua bit jadi output

    DDRA=0xff;

    lcd_init();

    lcd_cursoroff();

    // 12345678901234567890123456789012345678901234567

    pesan=" tes lcd ";

    lcd_gotoxy(0,1);

    // 12345678901234567890

    lcd_putsf("********************");

    while (1)

    {

    for(a=0;a

  • 12

    .

Click here to load reader

Embed Size (px)
Recommended