Percobaan 8.doc

download Percobaan 8.doc

of 5

description

Praktikum

Transcript of Percobaan 8.doc

  • 5/23/2018 Percobaan 8.doc

    1/5

    ROTASI LED DENGAN PEMROGRAMAN C

    Menggunakan Microprocessor Board (68HC11)

    Membuat program dengan bahasa pemrograman C untuk menampilkan rotasi

    data pada peraga LED.

    Pada software microprocessor board 68HC !E" Micro# terdapat C compiler

    $ang berfungsi untuk menter%emahkan &'ource Code( dengan program C ke dalamkode mesin !He)adesimal#. Dengan fasilitas C compiler ini bisa dibuat beberapa

    program aplikasi diantaran$a adalah untuk men$alakan LED.

    Pemakaian C pada percobaan kali ini digunakan untuk merotasi data $ang akan

    ditampilkan pada peraga LED. Dimana alamat memori untuk men$alakan LED adalah

    *++,,. Dalam teknik pemrograman agar data $ang dirotasi dapat ditampilkan dan dapat

    diamati pada media peraga LED- salah satu caran$a adalah dengan memberikan waktu

    tundadela$.

    Sub Routine Delay

    Contoh penulisan program subroutine dela$ adalah sebagai berikut/

    void LCD_DELAY(void)

    {int m;m=0;while(m

  • 5/23/2018 Percobaan 8.doc

    2/5

    Pada contoh subroutine dela$ didalam program C diatas 0ariabel dela$

    mempun$ai %enis data integer dan mempun$ai nilai kurang dari ,,,- nilai ini bisa

    diubah1ubah tergantung kebutuhan berdasarkan pengamatan terhadap n$ala LED $ang

    tampil bisa diamati dengan %elas atau tidak. Penulisan fungsi delay()langsung dimulai

    dengan kepala fungsi dan diteruskan dengan statement1statement $ang membangun

    definisin$a.

    2enist$pe data $ang digunakan pada subroutine dela$ $aitu 3nteger !int#- $ang

    mempun$ai pan%ang data 4 b$te dengan %angkauan mulai dari 15468 sampai dengan

    5468. 7erikut ini contoh lain cara memberi waktu tunda dalam pemrograman C

    dengan menggunakan penambahan nilai sebuah 0ariabel satu demi satu hingga

    mencapai nilai batas $ang ditentukan.

    for(=0;

    Blok diagram

    ambar 8!1"7lok diagram s$stem CP 68HC beserta program C dengan LED!39# pada E"1M3C:9 ;;9:;Mboard.

    1 Microprocessor 7oard 68HC

    1 PC beserta software E"1M3C:9

    1

  • 5/23/2018 Percobaan 8.doc

    3/5

    1 Hubungkan C9M atau C9M4 pada PC dengan kabel serial ke board

    mikroprosesor 68HC

    1 Hubungkan catu data = ?olt

  • 5/23/2018 Percobaan 8.doc

    4/5

    - Program Menuliskan data pada LED menggunakan Pointer

    A. Rotasi Kiri

    #define LEDS 0x4400main(){

    char val;int i,a;

    for(;;){

    val=0x07;out(val,LEDS);for(a=0;a!"0000;a);val=0x0$;out(val,LEDS);for(a=0;a!"0000;a);val=0x0D;out(val,LEDS);for(a=0;a!"0000;a);val=0x0E;out(val,LEDS);for(a=0;a!"0000;a);

    %%

    B. Rotasi kanan

    #define LEDS 0x4400

    main(){ char val;

    int i,a; for(;;)

    { val=0x0E;out(val,LEDS);for(a=0;a!"0000;a);val=0x0D;out(val,LEDS);for(a=0;a!"0000;a);val=0x0$;out(val,LEDS);

    for(a=0;a!"0000;a);val=0x07;out(val,LEDS);for(a=0;a!"0000;a);

    %%

    C. Lompat 2 data (LED)

    #define LEDS 0x4400main(){

    char val;int &;

    6+

  • 5/23/2018 Percobaan 8.doc

    5/5

    for(;;){

    val=0x0E;out(val,LEDS);for(&=0;&!'"000;&);

    val=0x0$;out(val,LEDS);for(&=0;&!'"000;&);

    %%

    D. Penumla!an 2 data

    #define LED**SE+ 0x0400char exta-evoid main(){

    char val,val.,val";char /.;int i;.=exta-e;1hile(.){

    val.=0x0.;val"=0x0";val=val. val";for(i=0; i!=22; i=i.);/(.LED**SE+)=val;

    %

    %

    . 7uat program dalam bahasa C untuk men$alakan LED putar kiri dan kanan-

    dalam satu listing program dan t$pe datan$a adalah integer (int)- gunakan

    perintahfordan perintah outpuntuk men$alakan dan rotasi LED.

    4. Dua data dengan t$pe integer masing1masing disimpan pada 0ariable a dan b-

    dari kedua data tersebut buatlah program pen%umlahan- dan pengurangan

    menggunakan bahasa C dan hasiln$a ditampilkan pada LED D sampai dengan

    D+.

    6