11. Antarmuka komparator analog 12. Port USART untuk komukasi serial
Secara umum, AVR dapat dikelompokkan mejadi 4 kelas, yaitu keluarga ATTiny, keluarga AT90Sxx, keluarga ATMega dan AT89RFxx. Pada dasarnya
yang membedakan masing-masing kelas adalah memori, peripheral dan fungsinya. Dari segi arsitektur dan instruksi yang digunakan, mereka bisa
dikatakan hampir sama. Oleh karena itu, dipergunakan salah satu AVR produk Atmel, yaitu ATMega8535. Selain mudah didapat dan lebih murah ATMega8535
juga memiliki fasilitas yang lengkap untuk tipe AVR ada 3 jeni yaitu ATTiny, AVR klasik, dan ATMega. Perbedaannya hanya pada fasilitas dengan IO yang
tersedia serta fasilitas lain seperti ADC, EEPROM, dan lain sebaginya. Salah satu contohnya adalah ATMega8535. Memiliki teknologi RICS dengan kecepatan
maksimal 16 MHz membuat ATMega 8535 lebih cepat bila dibandingkan dengan varian MCS 51. Dengan fasilitas yang lengkap tersebut menjadikan ATMega
8535 sebagai mikrokontroler yang powerfull.
2.4.1 Konfigurasi PIN ATMega8535
Gambar 2.6 Konfigurasi Pin ATMega8535
Mikrokontroler atmega8535 mempunyai jumlah pin sebangak 40 buah, dimana 32 pin digunakan untuk keperluan port IO yang dapat menjadi pin
inputoutput sesuai konfigurasi. Pada 32 pin tersebut terbagi atas 4 bagian port,
Universitas Sumatera Utara
yang masing-masingnya terdiri atas 8 pin. Pin-pin lainnya digunakan untuk keperluan rangkaian osilator, supply tegangan, reset,serta tegangan referensi
untuk ADC. Untuk lebih jelasnya, konfigurasi pin atmega8535 dapat dilihat pada gambar 2.6.
Berikut ini adalah susunan pin-pin dari atmega8535: 1. VCC merupakan pin yang berfungsi sebagai pin masukan catudaya
2. GND merupakan pin Ground 3. Port A PA0..PA7 merupakan pin IO dua arah dan pin masukan ADC
4. Port B PB0..PB7 merupakam pin IO dua arah dam pin fungsi khusus, yaitu TimerCounter, komparator analog, dan SPI
5. Port C PC0..PC7 merupakan pin IO dua arah dan pin fungsi khusus, yaitu TWI, komparator analog, dan Timer Osilator
6. Port D PD0..PD7 merupakan pin IO dua arah dan pin fungsi khusus, yaitu komparator analog, interupsi internal dan komunikasi serial USART
7. Reset merupakan pin yang digunakan untuk mereset mikrokontroller 8. XTAL1 dan XTAL2 merupakan pin masukkan clock eksternal osilator
menggunakan kriatal, biasanya dengan frekuensi 11,0592 MHz
2.4.2 Port –Port Pada ATMega8535 dan Fungsinya
2.4.2.1 Port A
Merupakan 8-bit directional port IO. Setiap pinnya dapat menyediakan internal pull-up resistor dapat diatur per bit . Output buffer Port A dapat memberi arus
20mA dan dapat mengendalikan display LED secara langsung. Data Direction Register port A DDRA harus disetting terlebih dahulu sebelum port A
digunakan. Bit-bit DDRA diisi 0 jika ingin menfungsikan pin-pin port A yang bersesuaian sebagai input, atau diisi 1 jika sebagai output selain itu, kedelaan pin
port A juga digunakan untuk masukan sinyal analog bagi AD converter.
2.4.2.2 Port B
Merupakan 8-bit directional port IO. Setiap pinnya dapat menyediakann internal pull-up resistor dapat diatur per bit. Output buffer Port B dapat memberi arus
20mA dan dapat mengendalikan display LED secara langsung. Data Direction
Universitas Sumatera Utara
Register port B DDRB harus di setting terlebih dahulu sebelum port B digunakan. Bit-bit DDRB diisi 0 jika ingin memfungsikan pin-pin port B yang
bersesuaian sebagai input, atau diisi 1 jika sebagai output. Pin-pin port B juga memiliki untuk fungsi-fungsi alternatif khusus seperti yang dapat dilihat dalam
tabel berikut: Tabel 2.1 Fungsi Pin-pin Port B
Port Pin Fungsi Khusus
PB0 T0 = timercounter 0 eksternal counter input
PB1 T1 = timercounter 0 eksternal counter input
PB2 AIN0= analog comparator positive input
PB3 AIN1= analog comparator negative input
PB4 SS = SPI slave select input
PB5 MOSI= SPI bus master outputslave input
PB6 MISO= SPI bus master inputs;ave output
PB7 SCK= SPI bus serial clock
2.4.2.3 Port C
Merupakan 8-bit direction port IO. Setiap pinnya dapat menyediakan internal pull-up resistor dapat diatur per bit. Output buffer Port C dapat memberi arus 20
mA dan dapat mengendalikan display LED secara langsung. Data Directin Register port C DDRC harus disettimg terlebih dahulu sebelum port C
digunakan. Bit-bit DDRC diisi 0 jika memfungsikan pin-pin port C yang bersesuaian sebagai input, atau diisi 1 jika sebagai output. selain itu, dua pin pirt
C PC6 dan PC7 juga memiliki fungsi alternatif sebagai osilator untuk timercounter.
2.4.2.4 Port D
Merupakan 8-bit direction port IO. Setiap pinnya dapat menyediakan internal pull-up resistor dapat diatur per bit. Output buffer Port D dapat memberi arus 20
mA dan dapat mengendalikan display LED secara langsung. Data Directin Register port D DDRD harus disettimg terlebih dahulu sebelum port D
digunakan. Bit-bit DDRC diisi 0 jika memfungsikan pin-pin port D yang bersesuaian sebagai input, atau diisi 1 jika sebagai output . selain itu, pin-pin port
Universitas Sumatera Utara
D juga memiliki untuk fungsi-fungsi alternatif khusus seperti yang dapat dilihat dalam tabel berikut:
Tabel 2.2 Fungsi Pin-pin Port D Port Pin
Fungsi Khusus
PD0 RDX UART input line
PD1 TDX UART output line
PD2 INT0 external 0 input
PD3 INT1 external 1 input
PD4 OCIB timercounter 1 output conpare B match output
PD5 OCIA timercounter 1 output compare A match output
PD6 ICP timercounter1 input capture pin
PD7 OC2 timercounter2 output conpare match output
RST pada pin merupakan reset dari AVR. Jika pada pin ini diberi masukan low selama minimal 2 machine cycle maka sistem akan di-reset.
2.4.2.5 XTAL1
XTAL1 adalah masukan ke inverting oscillator amplifier dan input ke internal clock operating circuit.
2.4.2.6 XTAL2
XTAL2 adalah output dari inverting oscillator amplifier
2.4.2.7 A Vcc
Avcc adalah kaki masukan tegangan bagi AD converter. Kaki ini harus secara eksternal terhubung ke Vcc melalui lowpass filter.
2.4.2.8 AREF
AREF adalah kaki masukan referensi bagi AD converter. Untuk operationalisasi ADC, suatu level tegangan antara AGND dan Avcc harus diberi ke kaki ini.
2.4.2.9 AGND
Universitas Sumatera Utara
AGND adalah kaki untuk analog ground. Hubungan kaki ini ke GND, kecuali jika broad memiliki analog ground yang terpisah.
2.4.3 Peta Memori ATMega853
ATMega8535 memiliki dua jenis memori yaitu Program Memory dan Data Memory ditambah satu fitur tambahan yaitu EEPROM memory untuk
penyimpana data.Wardhana,2006
2.4.3.1 Program Memory
ATMega8535 memiliki On-Chip In-System Reprogrammable Flash Memory untuk menyimpan program. Untuk alasam keamanan, program memory dibagi
menjadi dua bagian, yaitu Boot Flash Section dan Application Flash Section. Boot Flash Section digunakan untuk menyimpan Program Boot Loader, yaitu program
yang harus dijalankan pada saat AVR reset atau pertama kali diaktifkan. Application Flash Section digunakan untuk menyimpan program aplikasi
yang dibuat user. AVR tidak dapat menjalankan program aplikasi ini sebelum menjalankan program Boot Loader. Besarnya memori Boot Flash Section dapat
diprogram dari 128 word sampai 1024 word tergantung setting pada konfigurasi bit di register BOOTSZ. Jika Boot Loader diproteksi, maka program pada
application flash section juga sudah aman. Agus,2005
Gambar 2.7 Peta memori Program
Universitas Sumatera Utara
2.4.3.2 Data memory
Gambar 2.8 Peta Memori Data
Gambar berikut menunjukkan peta memori SRAM pada ATMEGA8535. Terdapat 608 lokasi address data memori 96 lokasi address digunakan untuk
register file dan IO memory sementara 512 lokasi address lainnya digunakan untuk internal data SRAM. Register file terdiri dari 32 general purpose working
register, IO register terdiri dari 64 register.
2.4.3.3 Status Register SREG
Status register adalah register berisi status yang dihasilkan pada setiap operasi yang dilakukan ketika suatu instruksi dieksekusi. SREG merupakan bagian dari
inti CPU mikrokontroller.
Gambar 2.9 Status Register ATMega8535
Universitas Sumatera Utara
Bit 7- I : Global Interrupt Enable Jika bit global interrupt enabel diset, maka g=fasilitas interupsi dapat
dijalankan. Bit ini akan clear ketika ada interupt yang dipicu dari hardware, setelah program interupt dieksekusi, maka bit ini harus di set kembali dengan
interuksi SEI Bit 6-T : Bit Copy Stroag
Interuksi bit copy BLD dan BST menggunakan bit T sebagai sumber atau tujuan dalam operasi bit.
Bit 5-H ; Half carry flag Bit 4-S : Sign Bit
Bit S merupakan hasil exklusive or dari negative flag N dan two’s complement overflow flag V
Bit 3- V : Two’s complement overflow flag
Digunakan dalam operasi aritmatika Bit 2-N : Negative flag
Jika operasi aritmatika menghasilkan bilangan negative maka bit ini akan set Bit 1- Z : Zero Flag
Jika operasi aritmatika menghasilkan bilangan nol, maka bit ini akan set Bit 0-C : Carry Flag
Jika suatu operasi menghasilkan Carry, maka bit ini akan set.
2.4.4 Komunikasi Serial
Komunikasi data serial ialah komunikasi dilakukan per bit dengan mengirim dan menerima data 8 bit secara satu per satu, sedsngkan komunikasi data paralel
dilakukan dengan mengirimkan dan menerima data 8 bit secara bersamaan atau sekaligus. Paralel adalah sistem pengiriman data digital, dimana beberapa bit data
dikirim pada suatu saat dengan jalur terpisah. Dikenal 2 cara komunikasi data serial, yaitu komunikasi data serial sinkron dan komunikasi serial asinkron. Pada
komunikasi data serial sinkron, clock dikirimkan bersama-sama dengan data serial tetapi clock tersebut dibangkitkan sendiri-sendiri baik pada sisi pengirim maupun
Universitas Sumatera Utara
sisi penerima. Sedangkan komunikasi data serial asinkron tidak diperlukan clock karena data dikirimkan dengan kecepatan tertentu. Baik pada pengirim maupun
penerima.
2.4.4.1 Komunikasi Serial pada ATMega8535
Peralatan komunikasi serial pada Atmega8535 sudah terintegrasi pada system chip. Dan masing-masing registernya baik data maupun kontrol dihubungkan
dengan register input-output atau port, sebagaimana peralatan lainnya. Sehingga user kita cukup hanya mengaskses register-register yang berhubungan dengan
serial inilah untuk mempengaruhi atau memanipu;asi peralatan tersebut. Data dikirim melalui bebrapa jalur data. Biasanya masing-masing dengan kabel
tersendiri. Pada prinsipnya register-register peralatan ini hanya 5 buah. UDR, UCSRA, UCSRB, dan UBRR.
USART merupakan komunikasi yang memiliki fleksibelitas tinggi, yang dapat digunakan untuk melakukan transfer data baik antar mikrokontroller
maupun dengan modul-modul eksternal termasuk PC yang memiliki fitur UART.Wardhana,2006
2.5 Modul Wireless
LAN nirkabel adalah suatu jaringan nirkabel yang menggunakan frekuensi radio untuk komunikasi antara perangkat komputer dan akhirnya titik akses yang
merupakan dasar dari transiver radio dua arah yang tipikalnya bekerja di bandwith 2,4 GHz 802.11b, 802.11g atau 5 GHz 802.11a. kebanyakan peralatan
mempunyaai kualifikasi Wi-Fi, IEEE 802.11b atau akomodasi IEEE 802.11g dan menawarkan beberapa level keamanan seperti WEP dan atau WPA. Teknologi
Wireless LAN menjadi sangat popular daat ini banyak aplikasi.Setelah evaluasi terhadap teknologi tersebut dilakukan, menjadikan para pengguna merasa puas
dan meyakini realiability teknologi ini dan siap untuk digunakan dalam skala luas dan komplek pada jaringan tanpa kabel.Mulyanta,2007
Adapun kelebihan wireless:
Universitas Sumatera Utara
Mobility, sistem wireless LAN bisa menyediakan user dengan informasi access yang real-time, dimana saja dalam suatu organisasi. Mobilitas
semacam ini sangat mendukung produktivitas dan peningkatan kualitas pelayanan apabila dibandingkan dengan jaringan kabel.
Installation speed and simplicity, instalasi sistem wireless LAN bisa cepat dan sangat mudah dan bisa mengeliminasi kebutuhan penarikan kabel yang
memalui atap atau pun tembok Installation flexibility, teknologi wireless memungkinkan suatu jaringan
untuk bisa mencapai tempat-tempat yang tidak dapat dicapai dengan jaringan kabel.
Reduced cost-of-ownership, meskipun investasi awal yang dibutuhkan oleh wireless LAN untuk membeli perangkat hardware bisa lebih tinggi daripada
biaya yang dibutuhkan oleh perangkat wire LAN hardware, namun bila di perhitungkan secara keseluruhan, instalasi dan life-cycle costnya, maka
secara signifikan lebih murah. Dan bila digunakan dalam lingkungan kerja yang dinamis yang sangat membutuhkan seringnya pergerakan dan
perubahan yang sering maka keuntungan jangka panjanganya pada suatu wireless LAN akan jauh kebih besar bila dibandingkan dengan wired LAN.
Scalability, sistem wireless LAN bisa dikonfigurasi dalam berbagai macam topologi untuk memenuhi kebutuhan pangguna yang beragam, konfigurasi
dapat dengan mudah diubah mulai dari jaringan peer-to-peer yang sesuai untuk jumlah pengguna yang kecil sampai ke full infrastructure network yang
mampu melayani ribuan user dan memungkinkan roaming dalam area yang luas.
2.6 Bahasa Pemograman Mikrokontroller dengan CodeVisionAVR
Bahasa poemograman CodeVisionAVR merupakan software C-cross compiler dimana program dapat ditulis dengan menggunakan bahasa C. Selain tersedia
dalam versi berbayar dengan lisensi, juga terdapat versi evalution yang bisa digunakan tanpa lisendi, namun dengan fungsi yang terbatas. CodeVisionAVR
memiliki IDE Intrgrated Development Environment yang lengkap, dimana
Universitas Sumatera Utara
penulisan program, compile, link, pembuatan kode mesin assembler dan download program ke chip AVR dapat dilakukan dengan CodeVision, selain itu
ada fasilitas terminal, yaitu melakukan komunikasi serial dengan mikrokontroller yang sudah di program. Proses download program ke IC mikrokontroller AVR
dapat mengggunakan System programmable Flash on-Chip mengizinkan memori program untuk diprogram ulang dalam sistem menggunakan hubungan serial SPI.
Salah satu keistinewaan bahasa pemograman CodeVision ini adalah memiliki library standart C dan library tertentu untuk keperluam sebagai berikut:
a. Modul LDC alphanumeric b. Bus I2C dari philips
c. Sensor suhu LM75 dari National Semiconductor d. Real-Time Clock: PCF8563, PCF8583 dari philips, DSI 302 dan DSI307 dari
maximdallas semiconductor e. Protokol 1-Wire dari maximdallas semiconductor
f. Sensor suhu DS1820, DS18S20, dan DS18B20 dari MaximDallas Semiconductor
g. TermometerTermostat DS1621 dari MaximDallas Semiconductor h. EEPROM DS2430 dan DS2433 dari MaximDallas Semiconductor
i. SPI j. Power management
k. Delay l. Konversi ke Kode Gray
CodeVisionAVR juga mempunyai Automatic Program Generator bernama CodeWizardAVR, yang dapat nenpermudah programmer dalam menulis kode-
kode program yang bersifat umum, antara lain: a. Set-up akses memori eksternal
b. Inisialisasi port inputoutput c. Inisialisasi interupsi eksternal
d. Inisialisasi timercounter e. Inisialisasi Watchdog-Timer
f. Inisialisasi UART USART dan komunikasi serial berbasis buffer yang digerakkan oleh interupsi
Universitas Sumatera Utara
g. Inisialisasi perbandingan analog h. Inisialisasi ADC
i. Inisialisasi Antarmuka SPI
j. Inisialisasi Antarmuka Two-Wire
k. Inisialisasi Antarmuka CAN l.
Inisialisasi Bus I2C, Sensor Suhu LM375, ThermometerThermostat DS1621 dan Real-Time Clock PCF8563, PCF8583, DS1307, dan DS1320
m. Inisialisasi Bus 1-Wire dan Sensor Suhu DS1820, DS18S20 n. Inisialisasi modul LCD. Setiawan,.2001
2.7 Delphi7
Delphi adalah sebuah bahasa pemrograman dan lingkungan pengembangan perangkat lunak. Produk ini dikembangkan oleh CodeGear sebagai divisi
pengembangan perangkat lunak milik Embarcadero, divisi tersebut sebelumnya adalah milik Borland. Bahasa Delphi, atau dikenal pula sebagai OBJECT
PASCAL pascal dengan ekstensi pemrograman berorientasi objek PBOOOP pada mulanya ditujukan hanya untuk Microsoft Windows, namun saat ini telah
mampu digunakan untuk mengembangkan aplikasi untuk Linux dan Microsoft .NET framework. Dengan menggunakan Free Pascal yang merupakan proyek
opensource, bahasa ini dapat pula digunakan untuk membuat program yang berjalan di sistem operasi Mac OS X dan Windows CE.
Delphi adalah sebuah perangkat lunak bahasa pemrograman untuk membuat program atau aplikasi komputer berbasis windows. Delphi merupakan
bahasa pemrograman berbasis obyek, artinya semua komponen yang ada merupakan obyek
– obyek. Ciri sebuah obyek adalah memiliki nama, properti, dan method prosedur
2.7.1 Lingkungan Kerja Delphi
Lingkungan pengembangan terpadu atau Integrated Development Environment IDE. IDE merupakan sebuah lingkungan dimana semua tombol perintah yang
Universitas Sumatera Utara
diperlukan untuk mendesain aplikasi, menjalankan dan menguji apakah sebuah aplikasi disajikan dengan baik untuk memudahkan pengembangan program
Madcoms, 2003. IDE Delphi terbagi menjadi enam bagian utama, yaitu Main Window, ToolBar, Component Palette, Form Designer, Code Editor, dan Object