22
0 RBL (RESEARCH BASED LEARNING) “NERACA DIGITAL DENGAN MENGGUNAKAN SENSOR EFEK HALLDisusun untuk memenuhi salah satu tugas akhir mata kuliah Elektronika Lanjut Disusun Oleh : 1. Adam Mubarak (10210036) 2. Aldi Rudianto (10210031) 3. Septia Eka Marsha Putra (10211022) 4. Tubagus Abid Alfarisi (1021071) 5. Husni Habil (10210067) 6. Meigara Juma (10210090) 7. Elvina Ayu Ratnasari (10211033) PROGRAM STUDI FISIKA FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM INSTITUT TEKNOLOGI BANDUNG 2013

Neraca Digital RBL Eljut Revisi

Embed Size (px)

Citation preview

  • 0

    RBL (RESEARCH BASED LEARNING)

    NERACA DIGITAL DENGAN MENGGUNAKAN SENSOR EFEK HALL

    Disusun untuk memenuhi salah satu tugas akhir mata kuliah Elektronika Lanjut

    Disusun Oleh :

    1. Adam Mubarak (10210036)

    2. Aldi Rudianto (10210031)

    3. Septia Eka Marsha Putra (10211022)

    4. Tubagus Abid Alfarisi (1021071)

    5. Husni Habil (10210067)

    6. Meigara Juma (10210090)

    7. Elvina Ayu Ratnasari (10211033)

    PROGRAM STUDI FISIKA

    FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM

    INSTITUT TEKNOLOGI BANDUNG

    2013

  • 1

    KATA PENGANTAR

    Segala puji hanya milik Allah SWT dengan limpahan rahmat dan hidayah-Nya sehingga dapat

    menyelesaikan RBL (Research Based Learning) ini dengan sebaik-baiknya. RBL ini berjudul Neraca

    Digital dengan menggunakan Sensor Efek Hall. RBL ini disusun untuk memenuhi salah satu tugas akhir

    mata kuliah Elektronika Lanjut. Dengan penuh harap semoga RBL ini dapat bermanfaat dan tak lupa

    mengharap kritik dan saran yang membangun demi perbaikan RBl ini.

    Bandung, Desember 2013

    Tim Penyusun

  • 2

    DAFTAR ISI

    Kata Pengantar ............................................................................................................................. 1

    Daftar Isi ........................................................................................................................................ 2

    BAB I PENDAHLUAN................................................................................................................. 3

    1.1 Latar Belakang ...................................................................................................................... 3

    1.2 Tujuan .................................................................................................................................... 3

    1.3 Metode ................................................................................................................................... 4

    1.4 Sistematika Laporan .............................................................................................................. 4

    BAB II KAJIAN PUSTAKA ........................................................................................................ 5

    2.1 Catu Daya ...............................................................................................................................5

    2.2 Sensor Efek Hall .............................................................................................................................. 6

    2.3 Mikrokontroler AVR Atmega 8 .............................................................................................8

    2.3.1 Konfigurasi Pin Atmega8 ..................................................................................................9

    BAB III DATA Dan PEMBAHASAN ........................................................................................11

    3.1 Data Kalibrasi dan Fungsi Transfer Sensor ......................................................................... 11

    3.2 Pembahasan ......................................................................................................................... 12

    BAB IV PENUTUP ..................................................................................................................... 14

    4.1 Kesimpulan .......................................................................................................................... 14

    4.2 Saran .................................................................................................................................... 14

    DAFTAR PUSTAKA .................................................................................................................. 15

    LAMPIRAN................................................................................................................................. 16

  • 3

    BAB I

    PENDAHULUAN

    1.1 Latar Belakang

    Neraca adalah salah satu alat ukur massa. Sekarang neraca memiliki banyak jenis, neraca digital dan

    neraca analog. Dalam berbagai bidang neraca digunakan sebagai alat ukur. Saat ini neraca yang

    digunakan belum mencapai presisi 100%. Saat ini neraca yang ada menggunakan pegas sebagai dasar

    pengukurannya, dan dari perubahan gaya pegas maka didapatkan massa benda yang diukur. Timbangan

    dapat dikelompokkan dalam beberapa kategori berdasarkan klasifikasinya. Jika dilihat dari cara kerjanya,

    jenis timbangan dapat dibedakan atas [1] :

    Timbangan Manual, yaitu jenis timbangan yang bekerja secara mekanis dengan sistem pegas.

    Biasanya jenis timbangan ini menggunakan indikator berupa jarum sebagai penunjuk ukuran

    massa yang telah terskala.

    Timbangan Digital, yaitu jenis timbangan yang bekerja secara elektronis dengan tenaga listrik.

    Umumnya timbangan ini menggunakan arus lemah dan indikatornya berupa angka digital pada

    layar bacaan.

    Timbangan Hybrit, yaitu timbangan yang cara kerjanya merupakan perpaduan antara timbangan

    manual dan digital. Timbangan Hybrid ini biasa digunakan untuk lokasi penimbangan yang tidak

    ada aliran listrik. Timbangan Hybrid menggunakan display digital tetapi bagian paltform

    menggunakan plat mekanik

    Untuk mempermudah pengukuran maka prinsip pegas digabung dengan sensor yang bisa mendeteksi

    perubahan pegas tersebut. Perubahan pegas yang dimanfaatkan adalah perubahan jarak pegas akibat

    pengaruh gaya luar. Untuk mendeteksi perubahan jarak ini digunakan sensor. Jenis sensor yang

    digunakan bermacan-macam, mulai dari sensor jarak, sensor magnet dan lainnya. Jenis sensor yang

    digunakan haruslah mendeteksi perubahan jarak. Oleh karena itu diperlukan sensor yang berbasiskan

    perubahan medan magnet yang sederhana yang dapat dibuat untuk keperluan sehari-hari.

    Pada RBL ini digunakan sensor efek hall yang berubah jika dikenai medan magnet yang tegak lurus.

    Medan magnet ini akan berubah bergantug dengan perubahan jarak antar sumber medan magnet dengan

    sensor.

    1.2 Tujuan

    Adapun tujuan yang ingin dicapai pada RBL ini adalah

    1. Memanfaatkan sifat kemagnetan untuk digunakan sebagai neraca

  • 4

    2. Menggunakan sensor efek hall sebagai neraca digital dengan memanfaatkan perubahan tegangan

    hall dibawah pengaruh medan magnet.

    3. Mendapatkan hasil tegangan terhadap peubahan massa pada sensor efek hall.

    1.3 Metode

    Metode yang digunakan dalam RBL ini adalah dengan membuat neraca digital dengan menggunakan

    sensor efek hall. Selain itu dilakukan kajian pustaka sebagai penunjang informasi mengenai topik

    yang dibahas pada RBL ini.

    1.4 Sistematika Makalah

    a. Bab 1 Pendahuluan

    b. Bab 2 Kajian Pustaka

    c. Bab 3 Analisis dan Pembahasan

    d. Bab 4 Penutup

  • 5

    BAB II

    KAJIAN PUSTAKA

    2.1 Catu Daya

    Pencatu Daya (Inggris: power supply) adalah sebuah piranti elektronika yang berguna sebagai

    sumber daya untuk piranti lain, terutama daya listrik. Pada dasarnya pencatu daya bukanlah sebuah alat

    yang menghasilkan energi listrik saja, namun ada beberapa pencatu daya yang menghasilkan energi

    mekanik, dan energi yang lain. Secara garis besar, pencatu daya listrik dibagi menjadi dua macam, yaitu

    pencatu daya tak distabilkan dan pencatu daya distabilkan. Pencatu daya tak distabilkan merupakan jenis

    pencatu daya yang paling sederhana. Pada pencatu daya jenis ini, tegangan maaupun arus keluaran dari

    pencatu daya tidak distabilkan, sehingga berubah-ubah sesuai keadaan tegangan masukan dan beban pada

    keluaran. Pencatu daya jenis ini biasanya digunakan pada peranti elektronika sederhana yang tidak

    sensitif akan perubahan tegangan. Pencatu jenis ini juga banyak digunakan pada penguat daya tinggi

    untuk mengkompensasi lonjakan tegangan keluaran pada penguat.

    Pencatu daya distabilkan pencatu jenis ini menggunakan suatu mekanisme loloh balik untuk

    menstabilkan tegangan keluarannya, bebas dari variasi tegangan masukan, beban keluaran, maupun

    dengung. Ada dua jenis kalang yang digunakan untuk menstabilkan tegangan keluaran, antara lain:

    Pencatu daya linier, merupakan jenis pencatu daya yang umum digunakan. Cara kerja dari pencatu

    daya ini adalah mengubah tegangan AC menjadi tegangan AC lain yang lebih kecil dengan

    bantuan Transformator. Tegangan ini kemudian disearahkan dengan menggunakan

    rangkaian penyearah tegangan, dan di bagian akhir ditambahkan kondensator sebagai penghalus

    tegangan sehingga tegangan DC yang dihasilkan oleh pencatu daya jenis ini tidak terlalu

    bergelombang. Selain menggunakan diode sebagai penyearah, rangkaian lain dari jenis ini dapat

    menggunakan regulator tegangan linier sehingga tegangan yang dihasilkan lebih baik daripada

    rangkaian yang menggunakan diode. Pencatu daya jenis ini biasanya dapat menghasilkan tegangan

    DC yang bervariasi antara 0 - 60 Volt dengan arus antara 0 - 10 Ampere.

    Pencatu daya Sakelar, pencatu daya jenis ini menggunakan metode yang berbeda dengan pencatu

    daya linier. Pada jenis ini, tegangan AC yang masuk ke dalam rangkaian langsung disearahkan oleh

    rangkaian penyearah tanpa menggunakan bantuan transformer. Cara menyearahkan tegangan tersebut

    adalah dengan menggunakan frekuensi tinggi antara 10KHz hingga 1MHz, dimana frekuensi ini jauh

    lebih tinggi daripada frekuensi AC yang sekitar 50Hz. Pada pencatu daya sakelar biasanya diberikan

    rangkaian umpan balik agar tegangan dan arus yang keluar dari rangkaian ini dapat dikontrol dengan

    baik.

    Pada dasarnya rangkaian catu daya ini digunakan untuk memberikan daya seta tegangan keluaran

    kepada alat elektronik lain. Rangkaian catu daya yang baik memiliki regulator pada rangkaian tersebut.

    Pemasangan regulator tersebut difungsikan untuk memberikan kestabilan pada tegangan yang keluar jika

    terjadi perubahan nilai tegangan yang diterima oelh rangkaian catu daya tersebut. IC regulator tegangan

    7805 dan 7905 merupakan salah satu jenis atau tipe dari regulator untuk tegangan tetap. Regulator 7805

    dan 7905 memiliki 3 terminal yaitu Vin, GND dan juga Vout.

  • 6

    Gambar 1. Konfigurasi pin LM 7805 dan 7905

    Sementara dari bentuknya, rangkaian catu daya juga dibagi menjadi 2 yaitu catu daya gelombang

    penuh dan catu daya setengah gelombang. Biasanya rangkaian catu daya gelombang penuh digunakan

    untuk memberikan suplai kepada power amplifier. Pada RBL ini digunakan catau daya bipolar dengan

    menggunakan IC regulator tegangan (jenis 7805 dan 7905). Catu daya ini akan menghasilkan tegangan

    keluaran +5 Volt dan -5 Volt. Rangkaian catu daya ini dapat dilihat pada gambar dibawah,

    Gambar 2. Rangkaian catu daya bipolar dengan keluran +5 Volt dan -5 Volt

    2.2 Sensor Efek Hall

    Pada RBL Neraca Digital ini menggunakan sensor Efek Hall sebagai sensor dasarnya. Sensor efek

    hall akan mendeteksi perubahan tegangan apabila dipengaruhi medan magnet. Maka jarak antara medan

    magnet dan sensor yang berubah akan menjadi dasar dalam pengukuran beban pada neraca ini.

    Perubahan jarak antara sumber medan magnetik dengan sensor sensor dipengaruhi oleh konstanta

    pegas. Perumusannya ditunjukkan oleh

    Gambar 3. Prinsip kerja neraca

  • 7

    Dengan menggunakan hukum II Newton

    Karena menggunakan pegas maka

    Sehingga didapatkan massa-nya adalah

    Dimana m adalah massa, k adalah konstanta pegas dan adalah percepatan (percepatan gravitasi g = 10

    m/s).

    Untuk sensor yang dibuat, tekanan yang diberikan kemudian digunakan untuk mengerakkan

    magnet permanen yang memiliki besar medan magnet berubah tergantung jarak mendekati sensor

    elektronik efek Hall. Efek Hall merupakan peristiwa munculnya tegangan pada tepi plat konduktor yang

    dialiri arus dan diberi medan magnet pada arah tegak lurus arus.

    Tekanan yang diberikan digunakan untuk mengerakkan magnet permanen yang memiliki besar

    medan magnet berubah tergantung jarak mendekati sensor elektronik efek Hall. Efek Hall merupakan

    peristiwa munculnya tegangan pada tepi plat konduktor yang dialiri arus dan diberi medan magnet pada

    arah tegak lurus arus.

    Gambar 4. Efek hall

    Dengan menggunakan sensor efek hall (jenis A3144) yang berpengaruh akan menghasilkan

    tegangan hall (VH) yang akan berubah bergantung dengan besarnya medan magnet yang diterimanya.

    Besarnya medan magnet yang diterima sensor akan bergantung pada jarak antara sumber medn magnet

    dengan sensor. Rangkaian sensor ini ditunjukkan oleh gambar berikut,

  • 8

    Gambar 5. Konfigurasi pin sensor efek hall, beserta blok diagramnya

    Gambar 6. Rangkaian sensor efek hall dan penguat diffresnisal

    Pada rangkaian sensor ini tegangan Hall yang dihasilkan akan diperkuat oleh penguat differensial,

    besar penguatan pada penguat differensial adalah,

    2.3 Mikrokontroler AVR Atmega 8

    AVR ATmega8 adalah mikrokontroler CMOS 8-bit berarsitektur AVRRISC yang memiliki 8K byte

    in-System Programmable Flash. Mikrokontroler dengan konsumsi daya rendah ini mampu

    mengeksekusi instruksi dengan kecepatan maksimum 16MIPS pada frekuensi 16MHz. Jika

    dibandingkan dengan ATmega8L perbedaannya hanya terletak pada besarnya tegangan yang

    diperlukan untuk bekerja. Untuk ATmega8 tipe L, mikrokontroler ini dapat bekerja dengan tegangan

    antara 2,7 - 5,5 V sedangkan untuk ATmega8 hanya dapat bekerja pada tegangan antara 4,5 5,5 V.

  • 9

    2.3.1 Konfigurasi Pin Atmega8

    Gambar 7. Konfigurasi pin ATmega8

    ATmega8 memiliki 28 Pin, yang masing-masing pin nya memiliki fungsi yang berbeda-beda baik sebagai

    port maupun fungsi yang lainnya. Berikut akan dijelaskan fungsi dari masing-masing kaki ATmega8.

    VCC

    Merupakan supply tegangan digital.

    GND

    Merupakan ground untuk semua komponen yang membutuhkan grounding.

    Port B (PB7...PB0)

    Didalam Port B terdapat XTAL1, XTAL2, TOSC1, TOSC2. Jumlah Port B adalah 8 buah pin, mulai

    dari pin B.0 sampai dengan B.7. Tiap pin dapat digunakan sebagai input maupun output. Port B

    merupakan sebuah 8-bit bi-directional I/O dengan internal pull-up resistor. Sebagai input, pin-pin yang

    terdapat pada port B yang secara eksternal diturunkan, maka akan mengeluarkan arus jika pull-up

    resistor diaktifkan. Khusus PB6 dapat digunakan sebagai input Kristal (inverting oscillator amplifier)

    dan input ke rangkaian clock internal, bergantung pada pengaturan Fuse bit yang digunakan untuk

    memilih sumber clock. Sedangkan untuk PB7 dapat digunakan sebagai output Kristal (output

    oscillator amplifier) bergantung pada pengaturan Fuse bit yang digunakan untuk memilih sumber

    clock. Jika sumber clock yang dipilih dari oscillator internal, PB7 dan PB6 dapat digunakan sebagai

    I/O atau jika menggunakan Asyncronous Timer/Counter2maka PB6 dan PB7 (TOSC2 dan TOSC1)

    digunakan untuk saluran input timer

    Port C (PC5 . . . PC0)

    Port C merupakan sebuah 7 bit bi directional I/O port yang didalam masing-masing pin terdapat pull-

    up resistor. Jumlah pin nya hanya 7 buah mulai dari pin C.0 sampai pin C.6. Sebabgai keluaran/output

  • 10

    port C memiliki karakteristik yang sama dalam hal menyerap arus (sink) ataupun mengeluarkan arus

    (source).

    Reset/PC6

    Jika RSTDISBL Fuse deprogram, maka PC6 akan berfungsi sebagai pin I/O. Pin ini memiliki

    karakteristik yang berbeda dengan pin-pin yang terdapat pada port C lainnya. Namun jika RSTDISBL

    Fuse tidak deprogram, maka pin ini akan berfungsi sebagai input reset. Dan jika level tegangan yang

    masuk ke pin ini rendah dan pulsa yang ada lebih pendek dari pulsa minimum, maka akan

    menghasilkan suatu kondisi reset mesikipun clock-nya tidak bekerja.

    Port D (PD7 . . . PD0)

    Port D merupakan 8-bit bi-drectional I/O dengan internal pull-up resistor. Fungsi dari port ini dama

    dengan port-port yang lain. Hanya saja pada port ini tidak terdapat kegunaan-kegunaan yang lain. Pada

    port ini hanya berfungsi sebagai masukan dan keluaran saja atau biasa disebut dengan I/O.

    AVcc

    Pin ini berfungsi sebagai supply tegangan untuk ADC. Untuk pin ini harus dihubungkan secara

    terpisah dengan VCC karena pin ini digunakan untuk analog saja. Bahkan jika ADC pada AVR tidak

    digunakan tetap saja disarankan untuk menghubungkannya secara terpisah dengan VCC. Jika ADC

    digunakan maka AVcc harus dihubungkan ke VCC melalui low pass filter.

    AREF

    Merupakan pin referensi jika menggunakan ADC.

    Hasil pembacaan massa/beban dari rangkaian menggunakan 2 cara, yaitu langsung melalui LCD

    dan melalui computer. Rangkaian interface nerac digital dengan komputer ditunjukkan oleh gambar

    berikut,

    Gambar 8. Rangkaian interface dari alat ke display

  • 11

    BAB III

    DATA DAN PENGOLAHAN

    3.1 Data Kalibrasi dan Fungsi Transfer Sensor

    Dengan menggunakan beban (yang sudah diketahi massanya), maka rangkaian neraca digital

    dapat dikalibrasi secara manual. Hasil dari kalibrasi ditunjukkan oleh data berikut,

    Tabel 1. Tabel Massa terhadap Tegangan

    No

    Massa

    (Kg) Tegangan (V)

    1 0.1 0.063

    2 0.2 0.1

    3 0.3 0.135

    4 0.5 0.22

    5 1 0.413

    6 1.1 0.475

    7 1.2 0.523

    8 1.5 0.685

    9 1.7 0.83

    Gambar 9. Kurva fungsi transfer Massa terhadap tegangan

  • 12

    Didapatkan fungsi transfer yang merupakan hubungan antara tegangan terhadap massa yang

    diberikan dengan melakukan regresi linear pada data. Sehingga didapatkan fungsi transfer sensor efek hall

    adalah (dengan R-square 0.989),

    Keluaran dari rangkaian neraca digitl ditampilkan dalam 2 bentuk yaitu melalui LCD, dan

    software di computer. Pada software juga dilakukan kalibrasi dengan cara yang sama sehingga hasil yang

    didaptkan adalah,

    Gambar 10. Kurva hasil yang ditunjukkan oleh keluran sistem

    Gambar 11. Keluaran dari program

  • 13

    Gambar 12. Keluaran kalibrasi dari alat

    3.1 Pembahasan

    Pada sensor yang digunakan adalah menggunakan penguat diffresnsial. Penguatan yang diatur 2

    kalinya. Penguat diffresnsial menggunakan tegangan refferensi sehingga pada saat tidak ada beban

    pembacaannya menjadi 0.

    Galat pengukuran sistem adalah sekitar 100 gram dari maksimal pengukuran 3 kg, atau sekitar

    3%. Hal ini diakibatkan maksimal perpanjangan pegas sudah mencapai maksimal. Galat yang dihasilkan

    oleh konsntanta pegas yang belum diketahui linearitasnya, posisi pegas tidak tepat berada pada pusat

    massa beban, dudukan massa pengukuran tidak stabil sehingga beban tidak tepat diam, fleksibilitas dari

    tiang penyangga pegas.

    Program interface computer dibuat menggunakan IDE Delphi 7. Pada gambar 12 interface

    digunakn untuk pencuplikan data. Data tersebut digunakan untuk kalibrasi. Hasil regresi linear merupakan

    fungsi transfer sistem sensor, hasil regresi tersebut digunakn untuk konversi data bit yang diperoleh

    kedalam besaran massa (gram). Gambar 10 merupakan interface massa yang diperoleh terhadap waktu.

    Hasil ditunjukkan oleh program menunjukkan data yang fluktuatif, diakibatkan oleh tegangan

    keluaran sensor yang masuk ke sensor tidak konstan, sehingga pembacaan dalam mikroontroler menjadi

    tidak stabil.

  • 14

    BAB IV

    PENUTUP

    4.1 Kesimpulan

    Sistem dapat menghasilkan keluaran berupa massa benda, grafik, dan hasil regresi. Kesalahan

    sistem mencapai 100 gram. Sistem tidak terlalu sensitif pada pengukuran massa beban yang kecil

    terutama dibawah 50 gram.

    4.2 Saran

    Diharapkan pengembangan pengukuran berat dengan menggunakan efek hall bisa dikembangkan

    untuk beban yang kecil. Sistem yang dirancang masih banyak memiliki kekurangan terutama presisi dan

    keakuratan alat.

  • 15

    DAFTAR PUSTAKA

    [1] http://id.wikipedia.org/wiki/Neraca_(timbangan) (akses tanggal 25 Desember 2013 )

    [2] http://id.wikipedia.org/wiki/Pencatu_daya (akses tanggal 25 Desember 2013 )

    [3] Sumber Gambar : Pin Atmega8www.robotplatform.com (akses tanggal 26 Desember 2013)

    [4] http://elib.unikom.ac.id/files/disk1/535/jbptunikompp-gdl-indrapurna-26711-5-unikom_i-i.pdf

    (akses tanggal 26 Desember 2013 )

    [5] Sumber Gambar : http://www.circuitstoday.com/wp-content/uploads/2012/02/atmega8-block-

    diagram.png (akses tanggal 26 Desember 2013 )

  • 16

    LAMPIRAN

    /*****************************************************

    This program was produced by the

    CodeWizardAVR V2.05.3 Standard

    Automatic Program Generator

    Copyright 1998-2011 Pavel Haiduc, HP InfoTech s.r.l.

    http://www.hpinfotech.com

    Project :

    Version :

    Date : 12/28/2013

    Author : ADAMMUBAROK

    Company : dammub

    Comments:

    Chip type : ATmega8

    Program type : Application

    AVR Core Clock frequency: 12.000000 MHz

    Memory model : Small

    External RAM size : 0

    Data Stack size : 256

    *****************************************************/

    #include

    #include

    // Alphanumeric LCD functions

    #include

    #ifndef RXB8

    #define RXB8 1

    #endif

    #ifndef TXB8

    #define TXB8 0

    #endif

    #ifndef UPE

    #define UPE 2

    #endif

    #ifndef DOR

    #define DOR 3

    #endif

    #ifndef FE

    #define FE 4

    #endif

    #ifndef UDRE

    #define UDRE 5

    #endif

    #ifndef RXC

    #define RXC 7

    #endif

  • 17

    #define FRAMING_ERROR (1

  • 18

    // USART Transmitter buffer

    #define TX_BUFFER_SIZE 8

    char tx_buffer[TX_BUFFER_SIZE];

    #if TX_BUFFER_SIZE

  • 19

    while ((ADCSRA & 0x10)==0);

    ADCSRA|=0x10;

    return ADCW;

    }

    // Declare your global variables here

    unsigned char buf[33];

    unsigned int temp1=0;

    void main(void)

    {

    // Declare your local variables here

    // 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: Timer1 Stopped

    // Mode: Normal top=0xFFFF

    // OC1A output: Discon.

    // OC1B output: Discon.

    // Noise Canceler: Off

    // Input Capture on Falling Edge

    // Timer1 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;

  • 20

    // Timer/Counter 2 initialization

    // Clock source: System Clock

    // Clock value: Timer2 Stopped

    // Mode: Normal top=0xFF

    // 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;

    // USART initialization

    // Communication Parameters: 8 Data, 1 Stop, No Parity

    // USART Receiver: On

    // USART Transmitter: On

    // USART Mode: Asynchronous

    // USART Baud Rate: 9600

    UCSRA=0x00;

    UCSRB=0xD8;

    UCSRC=0x86;

    UBRRH=0x00;

    UBRRL=0x4D;

    // Analog Comparator initialization

    // Analog Comparator: Off

    // Analog Comparator Input Capture by Timer/Counter 1: Off

    ACSR=0x80;

    SFIOR=0x00;

    // ADC initialization

    // ADC Clock frequency: 750.000 kHz

    // ADC Voltage Reference: AVCC pin

    ADMUX=ADC_VREF_TYPE & 0xff;

    ADCSRA=0x84;

    // SPI initialization

    // SPI disabled

    SPCR=0x00;

    // TWI initialization

    // TWI disabled

    TWCR=0x00;

    // Alphanumeric LCD initialization

    // Connections are specified in the

    // Project|Configure|C Compiler|Libraries|Alphanumeric LCD menu:

    // RS - PORTB Bit 0

    // RD - PORTB Bit 1

    // EN - PORTB Bit 2

    // D4 - PORTD Bit 4

    // D5 - PORTD Bit 5

    // D6 - PORTD Bit 6

    // D7 - PORTD Bit 7

    // Characters/line: 16

  • 21

    lcd_init(16);

    // Global enable interrupts

    #asm("sei")

    while (1)

    {

    // Place your code here

    temp1= read_adc(0);

    lcd_gotoxy(0,0);

    sprintf(buf, "RBL Elka Lanjut");

    lcd_puts(buf);

    lcd_gotoxy(0,1);

    sprintf(buf, "data bit = %d",temp1);

    lcd_puts(buf);

    printf("xa%dby\n\r",temp1);

    delay_ms(1);

    }

    }

    Kode program interface Delphi tidak dapat dilmpirkan