bab iii perancangan sistem 3.1 prinsip kerja sistem

33
Laporan Tugas Akhir BAB III STT Telematika Telkom Purwokerto D308064 52 BAB III PERANCANGAN SISTEM 3.1 PRINSIP KERJA SISTEM Prinsip kerja sistem pengukur ketinggian air ini secara umum adalah memberikan informasi kepada Operator (user) pada setiap ketinggian air mengalami perubahan dengan Handphone sebagai indikator dan akan memberikan informasi panggilan (auto dial) beserta Alarm (Buzzer) apabila ketinggian air sudah mencapai ketinggian maksimum yang telah ditetapkan. Dalam pembuatan sistem pengukur ketinggian air pada tugas akhir ini terdiri dari beberapa blok rangkaian penyusun utama sistem yaitu rangkaian Mikrokontroler ATMega8, rangkaian catudaya, sensor Ultrasonik, indikator LED dan Handphone berfungsi sebagai indikasi pengirim kepada user. Hal ini ditunjukkan pada Gambar 3.1 diagram blok sistem berikut: Gambar 3.1 Diagram Blok Sistem

Upload: others

Post on 14-Mar-2022

13 views

Category:

Documents


0 download

TRANSCRIPT

Laporan Tugas Akhir BAB III

STT Telematika Telkom Purwokerto D308064

52

BAB III

PERANCANGAN SISTEM

3.1 PRINSIP KERJA SISTEM

Prinsip kerja sistem pengukur ketinggian air ini secara umum adalah memberikan

informasi kepada Operator (user) pada setiap ketinggian air mengalami perubahan

dengan Handphone sebagai indikator dan akan memberikan informasi panggilan (auto

dial) beserta Alarm (Buzzer) apabila ketinggian air sudah mencapai ketinggian

maksimum yang telah ditetapkan.

Dalam pembuatan sistem pengukur ketinggian air pada tugas akhir ini terdiri dari

beberapa blok rangkaian penyusun utama sistem yaitu rangkaian Mikrokontroler

ATMega8, rangkaian catudaya, sensor Ultrasonik, indikator LED dan Handphone

berfungsi sebagai indikasi pengirim kepada user. Hal ini ditunjukkan pada Gambar 3.1

diagram blok sistem berikut:

Gambar 3.1 Diagram Blok Sistem

53 Laporan Tugas Akhir BAB III

STT Telematika Telkom Puwokerto D308064

Flowchart dari cara kerja sistem pendeteksi ketinggian air berbasis Mikrokontroller

ATMega8 dapat dilihat pada Gambar 3.2 di bawah ini:

Mulai

Aktifkan Sensor

Ping

Ukur Tinggi Air

Apakah Tinggi Air

0-15 Cm

Apakah Tinggi Air

16-20 Cm

Apakah Tinggi Air

21-30 Cm

Hidupkan Indikator

Aman

Hidupkan Indikator

Siaga

Hidupkan Indikator

Awas

Kirimkan SMS Kondisi

Aman

Kirimkan SMS Kondisi

Siaga

Kirimkan SMS Kondisi

Awas

Telpon No Tujuan

1 kali

Tidak Tidak Tidak

SelesaiTombol On/Off

Tidak

Ya

Ya Ya Ya

Gambar 3.2 Flowchart Cara Kerja Sistem

Dari flowchart terlihat cara kerja alat dimulai dengan terlebih dahulu mengaktifkan

sensor Ping yaitu sensor yang digunakan untuk mengukur ketinggian air. Sensor ini

54 Laporan Tugas Akhir BAB III

STT Telematika Telkom Puwokerto D308064

bekerja dengan memancarkan gelombang ultrasonik sebesar 40 Khz. Cara pembacaan

data dari sensor ini yaitu dengan menghitung waktu tempuh ketika pulsa ultrasonik

40KHz ditransmisikan sampai pulsa tersebut diterima lagi.[2] Dari waktu tempuh

tersebut bisa diketahui jarak yang ditempuh, jarak inilah yang nantinya digunakan untuk

menentukan tinggi air. Untuk indikasinya seperti berikut :

Data jarak ini kemudian dibandingkan untuk mendapatkan nilai tinggi air, dari hasil

perbandingan jika tinggi air yang terukur mempunyai rentang 0 – 15 Cm, sistem akan

mengaktifkan LED sebagai tanda ketinggian air pada level aman kemudian sistem

akan mengirimkan SMS ke Handphone tujuan sebagai informasi kondisi air pada

level aman.

Jika tinggi air yang terukur mempunyai rentang 16 – 20 Cm, sistem akan

mengaktifkan LED sebagai tanda ketinggian air pada kondisi siaga kemudian sistem

akan mengirimkan SMS ke Handphone tujuan sebagai informasi kondisi air pada

level siaga.

Apabila tinggi air yang terukur mempunyai rentang 21 – 30 Cm, sistem akan

mengaktifkan LED sebagai tanda ketinggian air pada level awas dan buzzer sebagai

alarm tanda bahaya. Pada level ini sistem juga akan mengirimkan SMS ke

Handphone tujuan sebagai informasi kondisi air pada level awas dan melakukan

panggilan (Dial) sebanyak 1 kali. Begitu seterusnya sensor akan memantau ketingian

air secara terus menerus dan berakhir pada saat panggilan kondisi awas.

Secara umum blok perancangan seperti ditunjukkan pada Gambar 3.3 berikut :

Gambar 3.3 Blok Perancangan

55 Laporan Tugas Akhir BAB III

STT Telematika Telkom Puwokerto D308064

+ 5 V

SENSOR PING

Ke Port D.7.

Pada blok perencangan Gambar 3.3 dapat dilihat sebuah bak penampungan air, pipa

paralon dan sensor untuk sistem kerjanya seperti penjelasan diatas, setelah sisi pengirim

(Transmitter) mengirimkan gelombang dan sampai kepada objek (Air) maka gelombang

Ultrasonik akan memantul dan diterima pada sisi terima (Receiver) sensor.

3.2 PERANCANGAN PERANGKAT KERAS (HARDWARE)

3.2.1 Rangkaian Sensor Ultrasonik

Sensor yang digunakan untuk mengukur ketinggian air yaitu sensor jarak

Ultrasonik PING produksi parallax. Sensor ini mampu mengukur dengan rentang

antara 2 cm sampai 300 cm. Sensor Ultrasonik Ping Parallax terdiri dari sebuah

chip pembangkit sinyal 40KHz, sebuah speaker Ultrasonik dan sebuah mikropon

Ultrasonik. Speaker ultrasonik mengubah sinyal 40 KHz menjadi suara sementara

mikropon ultrasonik berfungsi untuk mendeteksi pantulan suaranya[3]. Sensor

Ping terhubung dengan port D.7 berikut adalah Gambar rangkaian sensor

Ultrasonik Ping.

Gambar 3.4 Rangkaian Sensor Ping

Prinsip kerja sensor ping ini adalah :

1. Port D.7 yang digunakan sebagai jalur data sensor dijadikan output.

56 Laporan Tugas Akhir BAB III

STT Telematika Telkom Puwokerto D308064

2. Mikrokontroler memberikan pulsa trigger (pulsa high) dengan tOUT

selama 2 µs sampai 5 µs).

3. Kemudian setelah memberikan trigger, Port D.7 tersebut dijadikan input.

4. Sensor memancarkan gelombang Ultrasonik sebesar 40 KHz selama 200 µs

(tBURST).

5. Gelombang Ultrasonik ini akan merambat diudara dengan kecepatan 344

meter/detik atau 1 cm setiap 29.034 µs.

6. Jadi waktu yang dibutuhkan sensor untuk 1 cm adalah 58 µs, hal ini

dipengaruhi kondisi 2 kali jarak ukur yaitu waktu untuk mengirimkan

gelombang Ultrasonik dan waktu untuk menerima gelombang Ultrasonik.

7. Gelombang tersebut akan mengenai objek kemudian terpantul kembali ke

sensor.

8. Selama menunggu pantulan, sensor akan menghasilkan sebuah pulsa (High)

9. Pulsa ini akan berhenti (Low) ketika gelombang suara pantulan terdeteksi

oleh sensor.

10. Lebar pulsa tersebutlah yang yang dipresentasikan sebagai jarak antara

sensor Ping dengan objek.

11. Untuk perhitungan lebar pulsa (𝑡𝑖𝑛) didapat dari kecepatan suara dan

perbandingan jarak tempuh pada saat receiver (RX) memencarkan

gelombang suara ke objek pantulan dan akan diterima pada transmitter (TX)

sensor.

12. Kecepatan suara normal diudara ialah 344 meter/detik, dengan

menggunakan persamaan 2.1 maka jarak (S) yang diukur akan dikalian 2

karena pada saat sensor memancarkan gelombang suara dengan lebar pulsa

(𝑡𝑖𝑛) 29.034 µs maka akan kembali diterima sensor dengan lebar pulsa (𝑡𝑖𝑛)

58.068 µs.

3.2.2 Rangkaian Pengendali Mikrokontoller ATMega8

Pada perencanaan dan pembuatan sistem pengukur ketinggian air ini,

pengendalinya menggunakan mikrokontroler keluaran ATMEL yaitu ATMega8

AVR. Mikrokontroler ATMega8 memiliki sejumlah pin atau kaki yang memiliki

57 Laporan Tugas Akhir BAB III

STT Telematika Telkom Puwokerto D308064

fungsi masing-masing sehingga hanya beberapa pin saja yang digunakan pada

pembuatan sistem pendeteksi ketinggian air ini yang sesuai dengan kebutuhan kerja

sistem. Sistem minimum ATMega 8 ini merupakan pusat dan sebagai pengatur

kerja dari keseluruhan sistem pendeteksi ketinggian air. Fungsi sistem minimum ini

antara lain :

1. Pengolahan data sensor ping

2. Menghidupkan indicator

3. Mengaktifkan Buzzer sebagai alarm

4. Mengatur kerja Handphone untuk mengirimkan informasi berupa SMS dan

Telepon (Dial).

Fungsi masing-masing kaki tersebut dapat dilihat pada Gambar 3.5 sebagai

berikut :

Gambar 3.5 Sistem Minimum ATMega 8

+ 5 V

7

22pF

2

22pF

3

11,0592 Mhz C4C3

R8 220

139

Ke

Handphone

R210K

22nF

22

10

R9 220

8

24

26

25

27

28

X'TAL

C3

IC 2

ATMEGA 8

1

OUTPUT KE RANGKAIAN

INDIKATOR DAN BUZZER

DARI SENSOR PING PORT D.7

PORT C.5

PORT C.4

PORT C.3

PORT C.2

PORT C.1PORT D.0(RXD)

PORT D.1(TXD)

.

.

.

.

..

.

.

58 Laporan Tugas Akhir BAB III

STT Telematika Telkom Puwokerto D308064

Penjelasan fungsi kaki (pin) Mikrokontroler ATMega8 pada pembuatan alat

ini, antara lain :

Tabel 3.1 Fungsi pin Mikrokontroler ATMega8 yang digunakan

No Pin Port Fungsi

1 RST Masukan untuk tombol reset

2 RX.D Sebagai Receiver

3 TX.D Sebagai Transmitter

7 VCC Masukan tegangan (power supply)

8 & 22 GND Ground

9 XTAL1 Osilator

10 XTAL2 Osilator

13 AIN1 Sebagai masukan Sensor Ultrasonik

24 PC.1 Sebagai masukan dari buzzer

25 PC.2 Sebagai tanda LED

26 PC.3 Sebagai tanda LED (kondisi awas)

27 PC.4 Sebagai tanda LED (kondisi siaga)

28 PC.5 Sebagai tanda LED (kondisi aman)

Sistem kerja dari sistem minimum Atmega 8 yaitu mengaktifkan terlebih

dahulu sensor Ping dengan cara membuat Pin D.7 berlogika 1 (High) sehingga

sensor Ping aktif dan memancarkan frekuensi sebesar 40Khz. Gelombang tersebut

akan mengenai objek kemudian terpantul kembali ke sensor. Selama menunggu

pantulan, sistem akan menghitung nilai jarak yang terukur dengan cara meng-

increment register setiap 58us, karena sensor membutuhkan waktu 58us untuk

mengukur 1 Cm.

Gelombang Ultrasonik tersebut akan mengenai objek kemudian terpantul

kembali ke sensor. Selama menunggu pantulan, sistem akan menghitung nilai jarak

yang terukur dengan cara mengincrement register setiap 58us, karena sensor

membutuhkan waktu 58us untuk mengukur 1 Cm. ketika gelombang suara

pantulan terdeteksi oleh sensor Pin D.7 Berlogika 0 (Low), maka sistem akan

membandingan nilai yang tersimpan pada register yang merupakan nilai jarak yang

diukur.

59 Laporan Tugas Akhir BAB III

STT Telematika Telkom Puwokerto D308064

Kemudian sistem akan mengaktifkan LED indikator dengan cara memberi

logika 0 (Low) pada salah satu port C.3 untuk kondisi air pada level awas, portC.4

untuk kondisi air pada level siaga dan Port C.5 untuk kondisi air pada level aman.

Sistem juga akan mengirim perintah ke Handphone melalui port serial Port

D.1(TXD) dan Port D.0(RXD) agar Handphone mengirimkan SMS sesuai kondisi

ketinggian air yang diukur.

1. Rangkaian Oscillator

Rangkaian oscillator merupakan rangkaian yang digunakan sebagai

pembangkit pulsa clock, atau kecepatan. Pada rangkaian oscillator terdapat

komponen crystal dan capacitor polar. Crytal adalah resonator mekanik yang

bergetar menstabilkan getaran elektronis[11]. Jadi, dengan menggunakan kristal

maka akan didapatkan frekuensi clock yang stabil. Kapasitor polar pada alat ini

berfungsi untuk menyimpan muatan listrik. Pada kapasitor polar tegangan

kerjanya dinyatakan dalam satuan Volt dan untuk mengetahui nilai kapasitas

sebuah kapasitor polar satuan yang digunakan adalah µF (MikroFarad).

Kapasitor polar yang digunakan sebesar 22 pF dan frekuensi crystal yang

digunakan sebesar 11,592 Mhz seperti pada Gambar 3.6 berikut :

Gambar 3.6 Rangkaian Oscillator

C3 C4

22pF 22pF

X'TAL

11,0592 Mhz

1

7

28

27

26

25

24

8

22

10913

23

IC 2

ATMEGA 8

60 Laporan Tugas Akhir BAB III

STT Telematika Telkom Puwokerto D308064

Frekuensi crystal yang digunakan sebesar 11,592 Mhz , maka dapat

dihitung dengan menggunakan persamaan 2.1 :

𝟏 𝑴𝑪 =𝟏𝟐

𝒇𝒓𝒆𝒌𝒖𝒆𝒏𝒔𝒊 𝒄𝒓𝒚𝒕𝒂𝒍

=𝟏𝟐

𝟏𝟏, 𝟓𝟗𝟐𝑴𝒉𝒛

= 𝟏, 𝟎𝟑𝟓 𝐮𝐒

Untuk mengetahui berapa kecepatan Mikrokontroler ATMega8 pada saat

mengeksekusi sebuah instruksi dapat dihitung dengan menggunakan persamaan

2.2 :

𝑻𝒊𝒏𝒔𝒕 =𝟏, 𝟎𝟑𝟓 × 𝟏𝟐

𝟏𝟏, 𝟓𝟗𝟐= 𝟏, 𝟎𝟕𝟏 𝐬

Maka kecepatan Mikrokontoller ATMega8 untuk melakukan eksekusi

program adalah 1,071 s.

3.2.3 Rangkaian Indikator

Rangkaian ini difungsikan untuk mengindikasikan 3 kondisi ketinggian air

yang akan diukur. Rangkaian indikator ini terdiri dari 3 LED, yaitu LED merah

untuk mengindikasikan kondisi awas dimana pada kondisi ini ketinggian air antara

21 – 30 Cm, LED kuning untuk mengindikasikan kondisi siaga dimana pada kondisi

ini ketinggian air antara 16 – 20 Cm dan LED hijau untuk mengindikasikan kondisi

aman dimana pada kondisi ini ketinggian air antara 0 - 15 Cm. Berikut adalah

Gambar rangkaian indikator yang dipakai pada sistem ini

Gambar 3.7 Rangkaian Indikator

DC 5 Volt

R3 220

D2 (Kondisi Awas)

D3 (Kondisi Siaga)

D4 (Kondisi Aman)

R4 220

R5 220

Dari Port C.5

Dari Port C.4

Dari Port C.3

61 Laporan Tugas Akhir BAB III

STT Telematika Telkom Puwokerto D308064

Dari Gambar 3.7 di atas nilai Resistor yang digunakan untuk membatasi arus

pada LED yaitu sebesar 220 Ω. Karena arus forward LED sebesar 15 mA dengan

tegangan kerja LED sebesar 1,7 Volt, sedangkan untuk sumber tegangannya adalah

5 Volt maka nilai hambatannya dapat dihitung dengan persamaan 2.29 :

Maka nilai Resistansi untuk LED adalah:

𝑹𝑳𝑬𝑫=

𝑽𝑪𝑪−𝑽𝑳𝑬𝑫𝑰𝒇(𝑳𝑬𝑫)

𝑹𝑳𝑬𝑫=

𝟓 𝒗𝒐𝒍𝒕−𝟏,𝟕 𝒗𝒐𝒍𝒕

𝟎,𝟎𝟏𝟓 𝑨

𝑹𝑳𝑬𝑫=

𝟑,𝟑 𝑽𝒐𝒍𝒕

𝟎,𝟎𝟏𝟓 𝑨

𝑹𝑳𝑬𝑫=𝟐𝟐𝟎 Ώ

Jadi besarnya Resistor yang terpasang pada LED sebesar 220 Ohm.

3.2.4 Rangkaian Buzzer

Buzzer berfungsi untuk Alarm yang digunakan sebagai tanda ketika sensor Ping

mendeteksi ketinggian air 21 Cm sampai dengan 30 Cm, karena pada ketinggian ini

merupakan kondisi air pada level awas. Buzzer akan bekerja ketika pin 24 (PC.1)

IC Atmega 8 kondisinya aktif (berlogika 1) .

Gambar 3.8 Rangkaian Buzzer

+ 5 VOLT

R7 1KC9013

Q1

BUZZER

Ke PIN 24 (PC.1)

62 Laporan Tugas Akhir BAB III

STT Telematika Telkom Puwokerto D308064

Pada Gambar 3.8 penggunaan transistor C9013 dimana transistor berguna

sebagai saklar , transistor tipe NPN C9013 yang akan bekerja apabila mendapat bias

positif. Sehingga apabila mendapat logika 0 (low) dari Mikrokontoller maka Buzzer

tidak akan menghantarkan arus dan tegangan ke transistor (transistor off), sehingga

tegangan keluaran transistor akan menjadi 0 Volt.

Ketika ketinggian air mencapai kondisi awas, maka Mikrokontoller menerima

dan menyebabkan Buzzer mengeluarkan logika 1 (high) dan dapat menghantarkan

arus dan tegangan ke transistor (transistor on), sehingga tegangan keluaran

transistor akan menjadi ± 5 Volt.

3.2.5 Rangkaian Regulator

Agar alat yang dibuat mudah dibawa kemana-mana (Portable) maka sumber

tegangannya menggunakan sebuah Baterai 9 Volt, karena Mikrokontoller yang

dipakai ATMega8 dan beberapa komponen lain membutuhkan tegangan 5 Volt

maka diperlukan rangkaian penurun tegangan dari 9 Volt menjadi 5 Volt. Rangkaian

ini sekaligus sebagai Regulator. Gambar 3.9 dibawah ini adalah rangkaian

Regulator yang digunakan pada sistem ini.

Gambar 3.9 Rangkaian Regulator

9 VOLT

+

ON/OFF D11N4002 IC 1

LM7805In Out

ComC1 C2

R1470

D1

470uF/25V

1000uF/10V

1 3

2

Output DC5 Volt

+

-+ +

63 Laporan Tugas Akhir BAB III

STT Telematika Telkom Puwokerto D308064

Adapun bagian – bagaian pada rangkaian regulator di atas yaitu :

1. Tegangan Sumber (Vcc)

Tegangan sumber menggunakan sebuah Baterai 9 Volt.

2. Penyearah tegangan (rectifier)

Dioda 1N4002 difungsikan sebagai penyearah tegangan (rectifier) sehingga

apabila terjadi pemasangan polaritas Baterai yang terbalik rangkaian tidak

akan tetap aman karena arus tidak dapat mengalir pada rangkaian.

3. Penapis filter

Rangkaian penapis filter berupa Kapasitor yang dipasang sebelum dan

sesudah IC Regulator, Kapasitor yang digunakan adalah Kapasitor 470

uF/25 Volt dan 1000 uF/10 Volt. Untuk rangkaian ini kapasitor berfungsi

sebagai penahan arus listrik (isolator).

4. IC Regulator

Sementara untuk menjaga tegangan agar berada pada nilai tegangan yang di

kehendaki maka diperlukan IC Regulator tegangan, karena tegangan yang

dikehendaki 5 Volt maka IC Regulator yang dipakai IC LM 7805.

3.2.6 Rangkaian Komunikasi Serial

Komunikasi serial digunakan supaya Mikrokontoller ATMega8 dapat

terhubung dengan Handphone, dengan mengirimkan report pada saat air dalam

keadaan Aman, Siaga, Awas, serta memanggil (dial) user apabila ketinggian air

sudah mencapai batas maksimum (Awas). Mikrokontroler Atmega8 memiliki Port

USART pada Pin 2 (RX.D) dan Pin 3 (TX.D) untuk melakukan komunikasi data

antara Mikrokontroler dengan Mikrokontroler ataupun Mikrokontroler dengan

Handphone. USART dapat difungsikan sebagai transmisi data sinkron, dan

asinkron. Sinkron berarti clock yang digunakan antara transmitter (TX) dan

receiver (RX) satu sumber clock. Sedangkan asinkron berarti transmiter dan

receiver mempunyai sumber clock sendiri-sendiri[11].

64 Laporan Tugas Akhir BAB III

STT Telematika Telkom Puwokerto D308064

Supaya Mikrokontoller ATMega8 terhubung dengan Handphone maka

digunakan kabel komunikasi serial Handphone yang memiliki pin transmitter (TX)

dan receiver (RX) sama seperti Mikrokontoller ATMega8, penggunaan dua buah

resistor bernilai 220 Ω hanya sebatas pengaman untuk tegangan yang masuk dari

Mikrokontoller ATMega8 ke Handphone ataupun sebaliknya, seperti Gambar 3.10

berikut :

Gambar 3.10 Rangkaian Serial Antara Mikrokontoller ATMega8 dan

Handphone

3.2.7 Rangkaian Keseluruhan Pendeteksi Ketinggian Air

Setelah perancangan tiap rangkaian pada sistem selesai dibuat maka dapat

dibuat rancangan sistem secara keseluruhan. Perancangan rangkaian sistem

keseluruhan pada pembuatan tugas akhir ini dapat dilihat pada Gambar 3.11

berikut:

R9 220

Kabel Serial

Handphone

1

7

28

27

26

25

24

8

22

10913

23

IC 2

ATMEGA 8

R8 220

1234

65 Laporan Tugas Akhir BAB III

STT Telematika Telkom Puwokerto D308064

Gam

bar

3.1

1 R

angk

aian

Kes

eluru

han

Pen

det

eksi

Ket

inggia

n A

ir

66 Laporan Tugas Akhir BAB III

STT Telematika Telkom Puwokerto D308064

3.3 PERANCANGAN PERANGKAT LUNAK (SOFTWARE)

3.3.1 Prosedur Penggunaan Program

Dalam tugas akhir ini bahasa pemrograman yang penulis gunakan yaitu bahasa

assembly. Untuk editornya menggunakan software AVR studio versi 4 dimana

software ini sekaligus sebagai kompailernya yang akan mengubah program

assembly menjadi program objek maupun bahasa hexa. AVR studio 4 menyediakan

area kerja dan toolbar yang memudahkan pengguna melakukan berbagai operasi

sesuai yang diinginkan. Pada saat pertama kali membuka program AVR Studio 4,

tampilan akan terlihat seperti yang ditunjukan pada Gambar 3.12 berikut .

Gambar 3.12 Tampilan AVR Studio 4 Saat Pertama Kali Dibuka.

Tampilan pada gambar tersebut tidak aktif pada saat pertama menjalankan

AVR Studio 4 karena secara otomatis sebuah tampilan pembuka (wizard start-up

AVR studio 4) akan muncul. Tampilan pembuka tersebut akan memberikan pilihan

untuk membuat suatu proyek baru atau membuka proyek yang pernah dibuat.

Tampilan tersebut akan terlihat seperti Gambar 3.13.

67 Laporan Tugas Akhir BAB III

STT Telematika Telkom Puwokerto D308064

Gambar 3.13 Wizard Start-Up Dari AVR Studio 4

3.3.2 Membuat Sebuah Proyek

Untuk membuat proyek baru, langkah-langkahnya adalah sebagai berikut :

a. Create New Project baru ketika pertama kali jendela welcome terbuka.

b. Project name. Nama file sumber pada kolom di bawahnya akan secara

otomatis mengikuti. Apabila diinginkan nama yang berbeda tinggal

merubahnya. File sumber akan memiliki ekstensi asm.

c. Create Initial File.

d. Menentukan lokasi tempat menyimpannya program. Lakukan dengan browse

pada tombol di sebelah kanan Location.

e. Tombol next.

68 Laporan Tugas Akhir BAB III

STT Telematika Telkom Puwokerto D308064

Gambar 3.14 Tampilan Proyek Baru

f. Platform debug yang ingin digunakan. Apabila tidak menggunakan

perangkat emulator, AVR simulator. Selanjutnya, memilih tipe

Mikrokontroler yang digunakan.

Gambar 3.15 Platform Debug Dan Tipe AVR

69 Laporan Tugas Akhir BAB III

STT Telematika Telkom Puwokerto D308064

g. Finish

Pada layar monitor akan muncul tampilan seperti pada Gambar di bawah ini

kemudian lakukan penulisan program assemblynya.

Gambar 3.16 Tampilan Untuk Menulis Program Assembler AVR

Setelah selesai menulis program assembler kemudian File→Save Program.

Setelah itu, Project→Build. Jika pesan yang dihasilkan menunjukan tidak adanya

error, maka proyek tersebut telah berhasil di bangun. Langkah terakhir adalah

Project→save project.

Pada proses pembangunan proyek dapat ditentukan jenis file tambahan yang

ingin dibangkitkan. Caranya, project→AVR Assembler Setup. Dari kotak dialog

tersebut dapat ditentukan file.map maupun file.list.

70 Laporan Tugas Akhir BAB III

STT Telematika Telkom Puwokerto D308064

Gambar 3.17 Options Untuk Membangkitkan File Map dan List

File.list merupakan file laporan hasil assembly program sumber (file.asm) yang

berisi informasi mengenai versi assembler, tanggal, baris, alamat memori program,

kode yang dihasilkan, keterangan error dan informasi lainnya.

3.3.3 Memasukan Program ke Mikrokontroler

Setelah proses kompailer berhasil dan tidak menemukan error dengan

menggunakan program PROGISP Version 1.68, kemudian downloader

dihubungkan dengan computer melalui port USB. Untuk mengambil file HEX yang

akan dituliskan pada IC dengan menggunakan perintah File→Load Flash (cari

letak file.hex tersimpan)→Open.

71 Laporan Tugas Akhir BAB III

STT Telematika Telkom Puwokerto D308064

Gambar 3.18 Tampilan Program PROGISP (Ver 1.68)

Untuk menuliskan kode program ke dalam IC dengan menekan tombol menu

Command→Write Flash). Program akan sekaligus memverifikasi kode program

yang dituliskan. Untuk menghapus tekan tombol erase.

3.3.4 Perancangan Program Dengan Bahasa Assembler

Sebelum melakukan perancangan program, maka dibuat dulu garis besar

program dari sistem yang akan dibuat, yang biasanya dikenal dengan flowchart.

Berikut adalah flowchart dari program untuk bagian pemancar dan penerima yang

penulis buat.

72 Laporan Tugas Akhir BAB III

STT Telematika Telkom Puwokerto D308064

1. Flowchart dan Program Assembler

Mulai

Inisialisasi Mikrokontoller

Inisialisasi Port Serial

Hapus SMS Pada Inbox

Aktifkan Sensor Ultrasonik

(SBI PortD,7)

Apakah

PinD,7 = 0

Bandingkan Jarak Sensor

(Tinggi Air)

Apakah Tinggi Air

0-15 Cm

Hidupkan Indikator Aman

(Port C, 5)

Kirim SMS Kondisi

Aman

Delay 58 uS (1cm)Naikan 1 Nilai Sensor

(Jarak Sensor)

Apakah Tinggi Air

16-20 Cm

Apakah Tinggi Air

21-30 Cm

Hidupkan Indikator Siaga

(Port C, 4)

Kirim SMS Kondisi

Siaga

Hidupkan Indikator Awas

(Port C, 3) & Buzzer (Port C,1)

Kirim SMS Kondisi

Awas

Telpon (Dial) No Tujuan 1 Kali

Tidak

Tidak Tidak Tidak

SelesaiTombol On/Off

Ya Ya Ya

Tidak

Ya

Gambar 3.19 Flowchart Sistem Pengukur Ketinggian Air

73 Laporan Tugas Akhir BAB III

STT Telematika Telkom Puwokerto D308064

Flowchart di atas adalah flowchart untuk system pengukur ketinggian air. Dari

flowchart di atas sudah begitu jelas gambaran program yang akan dibuat. Untuk itu

dibuat program satu persatu untuk masing-masing menu flowchart. Flowchart

dimulai dengan menginisialisasi Mikrokontroler dan Port serialnya, menghapus

SMS pada inbox dan kemudian sistem mengaktikan Port yang digunakan untuk

sensor untuk selanjutnya mengerjakan rutin - rutin percabangannya. Berikut adalah

beberapa program yang dipakai.

.include "m8def.inc"

.def nilai_sensor =r22

.def jarak_sensor =r24

.org 0x0000

rjmp inisialisasi

Program di atas adalah untuk inisialisasi Mikrokontroler .Include

"m8def.inc" kode tersebut berguna untuk mengincludekan file m8def.inc ke

dalam program .asm. File m8def.inc yang berisi file definisi dari Mikrokontroler

Atmega8. Dengan menyertakan file tersebut, program assembly yang dibuat lebih

dapat dimengerti dan dipahami. Instruksi .def nilai_sensor =r22 instruksi ini

difungsikan untuk mendefinisikan Register 22 (R22) sebagai tempat menyimpan

nilai waktu yang dihitung oleh sensor ping. .def jarak_sensor=r24 perintah ini

difungsikan untuk mendefinisikan Register 24 (R24) sebagai tempat menyimpan

hasil perbandingan antara nilai waktu sensor dengan data langsung yang hasilnya

merupakan jarak sensor dengan air (tinggi air yang diukur). .org 0x0000 perintah

ini membuat program dimulai dari alamat awal 00 Hexadesimal. Setelah semua

instruksi dikerjakan program memanggil rutin inisialisasi untuk menginisialisasi

Mikrokontroller.

inisialisasi:

ldi tmp,low(ramend)

out spl,tmp

ldi tmp,high(ramend)

out sph,tmp

ldi tmp,0xff

out ddrc,tmp

74 Laporan Tugas Akhir BAB III

STT Telematika Telkom Puwokerto D308064

cbi portc,1

cbi portc,2

sbi portc,3

sbi portc,4

sbi portc,5

rcall timer1d

rcall init_usart

rcall hapus_inbox

Program di atas berfungsi untuk menginisialisasi stack pointer, port serial dan

port-port yang mau digunakan dengan peripheral yaiutu LED dan Buzzer. Instruksi

ldi tmp,low(ramend) sampai instruksi out sph,tmp instruksi ini digunakan untuk

inisialisasi stack pointer. Stack pointer merupakan suatu bagian dari AVR yang

berguna untuk menyimpan data sementara, variable lokal dan alamat kembali dari

suatu interupsi ataupun subrutin. Stack pointer diwujudkan sebagai dua buah

register, yaitu SPH dan SPL. Pada awalnya, SPH dan SPL akan bernilai 0 sehingga

setiap program harus terdapat inisialisasi ini agar setiap pemanggilan subrutin

ataupun interupsi program dapat kembali ke rutin program semula.

Intruksi ldi tmp,0xff dan out ddrc,tmp akan membuat Port C sebagai keluaran

(output) dimana Port C ini yang digunakan untuk mengaktifkan maupun

menonaktifkan LED dan Buzzer. Instuksi cbi portc,1 digunakan untuk

menonaktifkan Buzzer sedangkan instruksi cbi portc,2 digunakan untuk

menonaktifkan LED yang digunakan untuk indikator SMS. Instruksi sbi portc,3 ,

sbi portc,4 dan sbi portc,5 instruksi ini berfungsi mengeset agat port C.3, C4

dan C5 berlogika 1 (high) sehingga dengan diberi logika 1 maka LED indikator

untuk kondisi aman, kondisi siaga dan kondisi awas akan padam. Selanjutnya

program akan memanggil rutin delay 1 detik yaitu dengan perintah rcall timer1d

rutin ini digunakan untuk menunda program selama 1 detik. Setelah penundaan 1

detik tercapai program akan menjalankan instruksi rcall init_usart, instruksi ini

merupakan perintah untuk mengatur Port serial dari Mikrokontroller agar dapat

berkomunikasi dengan Handphone. Setelah port serial disetting selanjutnya adalah

menghapus isi SMS yang terdapat pada inbox Handphone yaitu dengan perintah

rcall hapus_inbox. Rutin ini akan menghapus 1 sms yang terdapat pada inbox

75 Laporan Tugas Akhir BAB III

STT Telematika Telkom Puwokerto D308064

setiap kali alat dihidupkan. Dengan instruksi rcall program akan memamanggil

rutin tersebut. Setelah semua instruksi inisialisasi dikerjakan maka program akan

mengaktifkan sensor ping dan membaca hasil pengukurannya berikut adalah

perintah-perintahnya.

START:

rcall delay_200uS

clr nilai_sensor

ser tmp

out ddrd,tmp

cbi portd,7

sbi portd,7

rcall delay_3uS ;3us

cbi portd,7

rcall delay_750uS ;750us

sbi portd,7

clr tmp

out DDRD,tmp

Program di atas adalah kumpulan instruksi-instruksi yang digunakan untuk

mengaktifkan agar sensor ping bekerja sesuai dengan cara kerja dari sensor ping.

Instruksi rcall delay_200uS, instruksi ini digunakan pertama kali sebelum sensor

digunakan dalam hal ini untuk memanggil rutin penundaan sebesar 200uS setelah

instruksi ini selesai selajutnya program akan mengclearkan register yang akan

digunakan untuk menyimpan nilai pembacaan sensor yaitu dengan instruksi

clr.nilai_sensor. Sistem menyiapkan port d.7 yang digunakan untuk output, agar

dapat mengaktifkan sensor ping dalam hal ini dengan perintah ser tmp, out

ddrd,tmp dan cbi portd,7. Selanjutnya port d.7 dibuat high dengan instruksi sbi

port d,7 dan menjaga port d,7 agar high selama 3uS dengan perintah rcall

delay_3uS kemudian port d,7 dibuat berlogika low dan ditahan agar low selama

750uS yaitu dengan perintah cbi portd,7 dan rcall delay_750uS. Langkah

selanjutnya adalah menyiapkan port d.7 agar dapat menjadi port input karena sensor

76 Laporan Tugas Akhir BAB III

STT Telematika Telkom Puwokerto D308064

akan berlogika low ketika sensor mendeteksi benda yang diukur dengan instruksi

clr tmp dan out DDRD,tmp.

wait:

rcall delay_58us

inc nilai_sensor

sbic PIND,7

rjmp wait

clr jarak_sensor

mov jarak_sensor,nilai_sensor

Program di atas digunakan untuk membaca jarak sensor dengan benda yang

diukur. Pertama-tama program memanggil sub rutin delay_58uS, delay 58uS ini

merupakan waktu yang dibutuhkan untuk sinyal Ultrasonik memancar dan diterima

kembali oleh sensor untuk jarak 1 cm kemudian program akan mengerjakan

perintah inc nilai_sensor, perintah ini akan mengincrement atau menambah nilai

1 data yang tersimpan pada nilai_sensor selanjutnya program menunggu adanya

sinyal pantulan yang ditandai berubahnya logika pada Pin D.7 menjadi logika low

untuk memantaunya dengan perintah sbic PIND,7, jika pin d.7 masih berlogika 1

artinya belum ada sinyal pantulan maka perintah dibawahnya akan dikerjakan yaitu

akan memanggil label wait untuk mengerjakan tundaan selama 58uS kemudian

menambah 1 data yang tersimpan pada nilai_sensor begitu seterusnya sampai

logika pada pin d.7 menjadi low. Jika pin pada D.7 berubah menjadi low maka

program akan meloncat 1 step dibawahnya dalam hal ini program langsung

mengerjakan instruksi clr jarak_sensor, instruksi ini agar register yang nantinya

digunakan untuk menyimpan nilai jarak dari sensor bernilai 0. Selanjutnya program

menyimpan jarak sensor dengan perintah mov jarak_sensor,nilai_sensor, dari

instruksi tersebut nilai sensor dipindah ke jarak_sensor agar nantinya dapat

dibandingkan dengan data langsung. Setelah jarak_sensor didapat langkah

selanjutnya adalah membandingkan dengan data langsung untuk mengetahui tinggi

air yang diukur yang nantinya digunakan untuk membedakan masing-masing

kondisi. 3 kondisi pada ketinggian air yang diukur yaitu :

77 Laporan Tugas Akhir BAB III

STT Telematika Telkom Puwokerto D308064

a. Kondisi Aman

Kondisi aman yaitu jika tinggi air yang diukur mempunyai rentang antara

0 Cm sampai dengan 15 Cm. berikut adalah programnya :

aman:

cpi jarak_sensor,16

breq stop12

cpi jarak_sensor,17

………………………………

……………………………...

cpi jarak_sensor,30

breq stop12

cbi PORTC,1

sbi PORTC,3

sbi portc,4

sbi portc,5

rcall timer1d

rjmp start

stop12:

cbi portc,1

sbi portc,3

sbi portc,4

cbi portc,5

rcall timer1d

Program di atas digunakan untuk membandingkan data yang sudah

disimpan pada register R24 (jarak_sensor) dengan data langsung. Data

langsung nya yaitu 16 sampai 30 karena tinggi air pada kondisi ini adalah 0

Cm sampai dengan 14 Cm. cpi jarak_sensor,16 instruksi tersebut digunakan

untuk membandingkan data yang sudah disimpan pada jarak_sensor dengan

data 16 jika data yang dibandingkan sama berarti tinggi air adalah 30

dikurangi 16 yaitu 14 Cm. Dengan perintah breq stop12 program akan

memanggil rutin berlabel stop12 jika data yang dibandingkan sama. Jika data

yang dibandingkan berbeda maka perintah selanjutnya dikerjakan yaitu

dibandingkan dengan data langsung bernilai 17 barangkali tinggi airnya

adalah 13 Cm begitu seterusnya data akan dibandingkan dengan data

langsung sampai pada angka 30. Rutin berlabel stop12 berisi perintah untuk

78 Laporan Tugas Akhir BAB III

STT Telematika Telkom Puwokerto D308064

mengaktifkan LED indikator aman yaitu instruksi cbi portc,5 dan

menonaktifkal LED kondisi siaga, kondisi awas dan mematikan Buzzer

dengan perintah cbi portc,1 , sbi portc,3 dan sbi portc,4.

b. Kondisi Siaga

Kondisi siaga yaitu jika tinggi air yang diukur mempunyai rentang antara

16 Cm sampai dengan 20 Cm. berikut adalah programnya :

cek_siaga:

cpi jarak_sensor,10

breq stop11

cpi jarak_sensor,11

……………………

……………………

cpi jarak_sensor,15

breq stop11

rjmp aman

stop11: ;Kondisi siaga

cbi portc,1

sbi portc,3

cbi portc,4

sbi portc,5

rcall timer1d

ret

Program di atas digunakan untuk membandingkan data yang sudah

disimpan pada register R24 (jarak_sensor) dengan data langsung. Data

langsung nya yaitu 10 sampai 15 karena tinggi air pada kondisi ini adalah 15

Cm sampai dengan 20 Cm. cpi jarak_sensor,10 instruksi tersebut digunakan

untuk membandingkan data yang sudah disimpan pada jarak_sensor dengan

data 10 jika data yang dibandingkan sama berarti tinggi air adalah 30

dikurangi 10 yaitu 20 Cm. Dengan perintah breq stop11 program akan

memanggil rutin berlabel stop11 jika data yang dibandingkan sama. Jika data

yang dibandingkan berbeda maka perintah selanjutnya dikerjakan yaitu

dibandingkan dengan data langsung bernilai 11 barangkali tinggi airnya

79 Laporan Tugas Akhir BAB III

STT Telematika Telkom Puwokerto D308064

adalah 21 Cm begitu seterusnya data akan dibandingkan dengan data

langsung sampai pada angka 15. Rutin berlabel stop11 berisi perintah untuk

mengaktifkan LED indikator siaga yaitu instruksi cbi portc,4 dan

menonaktifkal LED kondisi aman, kondisi awas dan mematikan Buzzer

dengan perintah cbi portc,1 , sbi portc,3 dan sbi portc,5.

c. Kondisi Awas

Kondisi Awas yaitu jika tinggi air yang diukur mempunyai rentang

antara 21 Cm sampai dengan 30 Cm. berikut adalah programnya :

cpi jarak_sensor,1

breq stop1

cpi jarak_sensor,2

…………………….

…………………….

cpi jarak_sensor,9

breq stop1

rjmp cek_siaga

stop1: ;Kondisi awas

sbi portc,1

cbi portc,3

sbi portc,4

sbi portc,5

rcall timer1d

ret

Program di atas digunakan untuk membandingkan data yang sudah

disimpan pada register R24 (jarak_sensor) dengan data langsung. Data

langsung nya yaitu 1 sampai 9 karena tinggi air pada kondisi ini adalah 21

Cm sampai dengan 30 Cm. cpi jarak_sensor,1 instruksi tersebut digunakan

untuk membandingkan data yang sudah disimpan pada jarak_sensor dengan

data 1 jika data yang dibandingkan sama berarti tinggi air adalah 30 dikurangi

1 yaitu 29 Cm. Dengan perintah breq stop1 program akan memanggil rutin

berlabel stop1 jika data yang dibandingkan sama. Jika data yang

dibandingkan berbeda maka perintah selanjutnya dikerjakan yaitu

dibandingkan dengan data langsung bernilai 2 barangkali tinggi airnya

adalah 28 Cm begitu seterusnya data akan dibandingkan dengan data

80 Laporan Tugas Akhir BAB III

STT Telematika Telkom Puwokerto D308064

langsung sampai pada angka 9. Rutin berlabel stop1 berisi perintah untuk

mengaktifkan LED indikator Awas yaitu instruksi cbi portc,3 , mengaktifkan

Buzzer yaitu dengan perintah sbi portc,1 dan menonaktifkan LED kondisi

Aman dan kondisi Siaga dengan perintah sbi portc,4 dan sbi portc,5.

Program selanjutnya setelah mengaktifkan LED indikator untuk masing-

masing kondisi, program akan mengirimkan informasi kondisi air yang sedang

diukur berupa SMS ke nomor tujuan yang sudah dimasukan dalam program dan

akan melakukan pemanggilan ke nomor tujuan sebanyak 1 kali khusus untuk

kondisi air pada level Awas. Adapun rutin-rutinnya untuk pengiriman SMS adalah

sebagai berikut:

kirim_kondisi_aman:

rcall kirim_sms_1

rcall kirim_no

rcall isi_pesan_3

rcall done

rcall hapus_inbox

ret

Program di atas dipakai untuk mengirimkan informasi berupa SMS kondisi air

pada level Aman. Pertama program akan memanggil rutin kirim_sms_1 dimana

rutin ini berupa perintah-perintah untuk mengatur agar Handphone dapat mengirim

SMS yaitu perintah AT+CMGS=25 dan nomor SMS center dari nomor

Handphone yang digunakan.

kirim_sms_1:

ldi ZL,low(2*msg3)

ldi ZH,high(2*msg3)

load2_1:

lpm

mov txbyte,r0

cpi txbyte,0

breq tunggu_cmgs_1

rcall usart_tx

inc ZL

rjmp load2_1

81 Laporan Tugas Akhir BAB III

STT Telematika Telkom Puwokerto D308064

tunggu_cmgs_1:

rcall usart_rx

cpi rxbyte,'>'

breq ok_11

rjmp tunggu_cmgs_1

ok_11:

sbi portc,2

rcall timer1d

ldi ZL,low(2*msg4)

ldi ZH,high(2*msg4)

load3_1:

lpm

mov txbyte,r0

cpi txbyte,0

breq OK_111

rcall usart_tx

inc ZL

rjmp load3_1

OK_111:

RET

msg3:

.db "AT+CMGS=25",13,10,0

msg4:

.db "07912658050000F0",0

Dari program pada label kirim_sms_1 difungsikan untuk mengirimkan

perintah ke Handphone yaitu perintah AT+CMGS=25 perintah ini agar

Handphone dapat mengirim SMS dengan panjang PDU 25 yaitu dengan instruksi

ldi ZL,low(2*msg3) dan ldi ZH,high(2*msg3), setelah perintah ini dikirimkan

Mikrokontroller menunggu adanya balasan berupa karakter ’>’ dengan instruksi

cpi rxbyte,'>', jika karakter ini diterima berarti Handphone siap menerima perintah

selanjutnya untuk mengirimkan SMS, perintah selanjutnya yaitu mengirimkan

nomor pusat pesan dari provider yang digunakan. instruksi ldi ZL,low(2*msg4)

dan ldi ZH,high(2*msg4) perintah ini akan mengirimkan ke Handphone dari string

msg4 yaitu data "07912658050000F0". Data ini berupa susunan data dari nomor

pusat pesan untuk kartu IM3 dari provider Indosat. Untuk yang kedua program akan

mengerjakan perintah rcall kirim_no, instruksi ini berfungsi untuk mengirimkan

SMS ke nomor tujuan yang sudah disimpan pada program. Berikut adalah rutinnya:

82 Laporan Tugas Akhir BAB III

STT Telematika Telkom Puwokerto D308064

kirim_no:

ldi ZL,low(2*msg5)

ldi ZH,high(2*msg5)

load4:

lpm

mov txbyte,r0

cpi txbyte,0

breq OK_2

rcall usart_tx

inc ZL

rjmp load4

OK_2:

rcall timer1d

ldi ZL,low(2*msg6)

ldi ZH,high(2*msg6)

load5:

lpm

mov txbyte,r0

cpi txbyte,0

breq OK_3

rcall usart_tx

inc ZL

rjmp load5

OK_3:

RET

msg5:

.db "01000D91265842767824F2",0

msg6:

.db "0000",0

Dari program pada label kirim_no di atas berfungsi untuk mengirimkan nomer

tujuan dari sms. Instruksi ldi ZL,low(2*msg5) dan ldi ZH,high(2*msg5) perintah

ini akan mengirimkan ke Handphone dari string msg5 yaitu data

"01000D91265842767824F2". Data ini berupa susunan nomer tujuan dari SMS

yang dikirim yaitu nomor Handphone 6285246787422. Perintah ketiga setelah

nomor tujuan SMS selesai dikerjakan program akan mengerjakan perintah rcall

isi_pesan_3, perintah ini berisi instruksi-instruksi berupa isi pesan yang akan

dikirimkan yang berupa data kondisi air yang diukur. Berikut adalah programnya.

83 Laporan Tugas Akhir BAB III

STT Telematika Telkom Puwokerto D308064

isi_pesan_3:

ldi ZL,low(2*msg8)

ldi ZH,high(2*msg8)

load62:

lpm

mov txbyte,r0

cpi txbyte,0

breq OK_42

rcall usart_tx

inc ZL

rjmp load62

OK_42:

RET

msg8:

.db "0CCBA793989C2641C166D009",0

Instruksi ldi ZL,low(2*msg8) dan ldi ZH,high(2*msg8) perintah ini akan

mengirimkan ke Handphone dari string msg8 yaitu data

"0CCBA793989C2641C166D009", data ini merupakan susunan data PDU yang

kalau diterjemahkan berupa sms dengan isi pesan “KONDISI AMAN”. Untuk

informasi kondisi yang lain perbedaan pada isi pesannya. Berikut adalah string

msg7 dimana datanya adalah "0DCBA793989C2641D364F01804", data ini

merupakan susunan data PDU yang kalau diterjemahkan berupa SMS dengan isi

pesan “KONDISI SIAGA”. Sedangkan untuk kondisi Awas string yang dipakai

adalah msg9 yang isinya adalah "0CCBA793989C2641C16B700A", data ini

merupakan susunan data PDU yang kalau diterjemahkan berupa SMS dengan isi

pesan “KONDISI AWAS”.

telp:

rcall timer1d

rcall timer1d

ldi ZL,low(2*msg10)

ldi ZH,high(2*msg10)

load7:

lpm

mov txbyte,r0

cpi txbyte,0

84 Laporan Tugas Akhir BAB III

STT Telematika Telkom Puwokerto D308064

breq OK_5

rcall usart_tx

inc ZL

rjmp load7

OK_5:

rcall timer1d

rcall timer1d

rcall timer1d

rcall timer1d

rcall timer1d

rcall timer1d

rcall timer1d

ret

msg10:

.db "ATD 085246787422;",13,0

Program di atas digunakan untuk menelpon ke nomor Handphone yang sudah

di simpan dalam program adapun perintah untuk menelpon ke nomor tujuan dengan

perintah AT Command yaitu “ATD”. Instruksi ldi ZL,low(2*msg10) dan ldi

ZH,high(2*msg10) perintah ini akan mengirimkan ke Handphone dari string

msg10 yaitu data "ATD 085246787422". Data ini berupa susunan perintah AT

Command dan nomor tujuan yang hendak dihubungi. ATD adalah AT Command

pada Handphone yang difungsikan untuk memanggil ke nomor tujuan, sedangkan

085246787422 merupakan nomor tujuan yang hendak dihubungi.