• Tidak ada hasil yang ditemukan

Modul P3

N/A
N/A
Protected

Academic year: 2021

Membagikan "Modul P3"

Copied!
15
0
0

Teks penuh

(1)

MODUL III MODUL III

MIKROKONTROLER  MIKROKONTROLER 

(SISTEM I/O, ADC DAN INTERUPSI EKSTERNAL) (SISTEM I/O, ADC DAN INTERUPSI EKSTERNAL) A

A.. TTUUJJUUAANN 1.

1. PengePengenalan secnalan secara umum ara umum dasar-dasar-dasar mikdasar mikrokonrokontroler troler AAVVR.R. 2.

2. MenMengetgetahuahui i dan memadan memahamhami i sissistem inputem input/ot/outputput ut (I/(I/O O dan impldan implemeementantasin!sin!a a padpadaa mikrokontroler.

mikrokontroler. ".

". MengetMengetahui dan mahui dan memahami emahami A#$ dA#$ dan impleman implementasinentasin!a pada m!a pada mikrokoikrokontrolentroler.r. %.

%. MeMengngetetahahui ui dadan n mememamahahami mi ininteterurupspsi i ekekststerernanal l dadan n imimplplememenentatasisin!n!a a papadada mikrokontroler.

mikrokontroler. B.

B. DADASASAR R TETEORORII 1.

1. MikMikrorokonkontrtrololr Ar ATTMEME!A!A

Mikrokontroler adalah suatu alat elektronika digital !ang mempun!ai masukan Mikrokontroler adalah suatu alat elektronika digital !ang mempun!ai masukan dan keluaran serta kendali dengan program !ang &ias ditulis dan dihapus dengan dan keluaran serta kendali dengan program !ang &ias ditulis dan dihapus dengan cara khusus. Mikrokontroler merupakan salah satu perkem&angan teknologi !ang cara khusus. Mikrokontroler merupakan salah satu perkem&angan teknologi !ang mengintegrasikan se&uah sistem computer kedalam se&uah chip tunggal ('ingle mengintegrasikan se&uah sistem computer kedalam se&uah chip tunggal ('ingle $hip sehingga teknologi ini mampu &er)ungsi seperti se&uah sistem komputer $hip sehingga teknologi ini mampu &er)ungsi seperti se&uah sistem komputer salah satun!a adalah pada proses pengendalian. 'alah satu contoh-contoh chip salah satun!a adalah pada proses pengendalian. 'alah satu contoh-contoh chip mikrokontroller !ang dipakai dalam praktik

mikrokontroller !ang dipakai dalam praktikum ini adalah um ini adalah AA**M+,A M+,A 1 dimana1 dimana chip mikrokontroller ini mempun!ai )itur-)itur se&agai &erikut

chip mikrokontroller ini mempun!ai )itur-)itur se&agai &erikut

•  0it Mikrokontroller 0it Mikrokontroller •

• 1 &!tes lash1 &!tes lash •

• 312 0!tes ++PROM312 0!tes ++PROM •

• 1 &!te internal 'RAM1 &!te internal 'RAM •

• $lock speed up to 1 M45$lock speed up to 1 M45 •

•  $hannel 16  $hannel 16 0it A#$0it A#$ •

• " P7M $hannel" P7M $hannel •

• Programma&le 'erial Programma&le 'erial 8'AR*8'AR* •

• +9ternal and Internal Interupt 'ources+9ternal and Internal Interupt 'ources •

• "6 pin input/output"6 pin input/output •

• Operating VoltagesOperating Voltages

 :

 : 2.;V - 3.3V 2.;V - 3.3V (A*(A*mega1<mega1<  :

(2)

,am&ar ".1 on)igurasi Pin A*M+,A 1 Pen=elasan dari masing-masing pin adalah se&agai &erikut

a. V$$ merupakan pin !ang &er)ungsi se&agai pin masukan catu da!a.  &. ,># merupakan pin ground.

c.  Port A (PA;?PA6 merupakan terminal masukan analog menu=u A/# $on@oerter. Port ini =uga &er)ungsi se&agai port I/O  &it dua arah. ika A#$ tidak diakti)kan.

d.  Port B (P0;..P06 merupakan port I/O  &it dua arah dengan resistor pull-up internal. Port 0 =uga dapat &er)ungsi se&agai terminal khusus !aitu timer/counter komparator analog dan 'PI.

e.  Port C (P$;..P06 merupakan port I/O  &it dua arah dengan resistor pull-up internal. Port $ =uga dapar &er)ungsi se&agai terminal khusus !aitu komparator  analog dan timer Oscilator.

).  Port D (P#;..P#6 adalah merupakan port I/O  &it dua arah dengan resistor   pull-up internal. Port # =uga &er)ungsi se&agai terminal khusus !aitu

komparator analog interupsi eksternal dan komunikasi serial.

g. R+'+* merupakan pin !ang digunakan untuk mereset mikrokontroler. h. B*A<1 dan B*A<2 merupakan pin masukan clock eksternal.

i. AV$$ merupakan pin masukan tegangan untuk A#$.

 =. AR+ merupakan pin masukan tegangan re)rensiuntuk A#$.

'e&uah mikrokontroller tidak &isa men=alankan )ungsi smart de@ice =ika tidak  terpasang dalam rangkaian minimum sistem !ang ditun=ukkan pada ,am&ar ".2. Rangkaian minimum sistem ini adalah rangkaian dimana se&uah chip mikrokontroller dapat men=alankan perintah !ang telah diprogram. Rangkaian minimum s!stem ini terdiri dari pasokan tegangan !ang memasok da!a ke mikrokontroller selain itu ada se&uah cr!stal !ang &er)ungsi untuk mem&erikan osilasi Caktu untuk dapat &eker=a dengan @aria&el Caktu secara tepat.

(3)

,am&ar ".2 Rangkaian Minimum '!stem A*mega 1

,am&ar "." Minimum '!stem A*mega 1 1.1 Si"t# I/O (In$%t/O%t$%t)

Port I/O pada mikrokontroler A*mega 1 dapat di)ungsikan se&agai input ataupun output dengan keluaran high  atau low. Pada dasarn!a untuk mengakses I/O (input output AVR ada &e&erapa register !ang harus disetting terle&ih dahulu !aitu

&. #ata Register (POR*9

PORT' digunakan untuk mengeluarkan/menulis data ke port mikrokontroler saat dikon)igurasikan se&agai output.

$ontoh POR*0D69)) E maka Port 0 D 11111111 (&iner 6m m 6 POR*0D69a" E maka Port 0 D 16166611 (&iner

(4)

. #ata #irection Register (##R9

DDR'  digunakan untuk mende)inisikan port se&agai input atau output ika le@el logika pada register ##R &ernilai 1 maka Port terse&ut dikon)igurasikan se&agai Output. 'edangkan =ika le@el logika pada register ##R &ernilai 6 maka Port terse&ut dikon)igurasikan se&agai input.

$ontoh ##RAD69)) E maka Port A se&agai Output 66 hh 6##RAD6F66 E maka Port A se&agai Input . Port Input Pin (PI>9

PIN' digunakan untuk mengam&il/mem&aca data dari port mikrokontroler saat dikon)igurasikan se&agai input.

1.* An&lo+ to Di+it&l Conrtr (ADC)

A#$ digunakan se&agai rangkaian !ang mengu&ah sin!al analog men=adi sin!al digital. #engan menggunakan A#$ kita dapat mengamati sin!al-sin!al dari peru&ahan-peru&ahan sin!al analog seperti peru&ahan temperatur kepekatan asap tekanan udara kecepatan angin &erat &enda kadar asam dan lain-lain !ang semuan!a dapat diamati melalui sensorn!a masing-masing. 4al !ang paling  penting dalam suatu rangkaian A#$ adalah resolusi !aitu &esaran analog terkecil

!ang masih dapat dikon@ersi men=adi satuan digital.

Atmega memiliki resolusi A#$ 16 &it (dapat =uga menggunakan A#$  &it dengan  channel (PA6-PA; input A#$ dan mendukung 1 macam penguat &eda. A#$ ini &eker=a dengan teknik succecive approximation. Rangkaian internal A#$ memiliki catu da!a tersendiri !aitu pin AV$$.

Resolusi dari se&uah con@erter menun=ukkan &an!akn!a nilai diskrit !ang dapat dihasilkan pada skala tegangan tertentu. Resolusi &iasan!a din!atakan dalam &it (&inar! digit. 'e&agai contoh se&uah A#$ !ang !ang mengkodekan se&uah masukan analog men=adi salah satu dari 23 nilai diskrit mempun!ai resolusi  &it karena antar muka antara mikrokontroller dengan komputer dilakukan dengan cara memasang rangkian komunikasi serial sehingga ada tautan antara mikrokontroller dengan komputer misal suatu sensor !ang di&aca oleh mikrokontroller dapat diamati di komputer !aitu data  &it sehingga data !ang tertampil dalam komputer dapat terlihat secara real-time. Rumus A#$ n-&it

ADC-(in

2n

)/r0 

1. Intr%$"i

Interupsi adalah kondisi dimana mikrokontroler akan &erhenti sementara dari  program utama untuk mela!ani perintah-perintah pada interupsi setelah selesai

maka mikrokontroler akan kem&ali menger=akan instruksi pada program utama. 8ntuk Atmega 1 ada " sum&er interupsi eksternal !aitu I>*6 (P#2 I>*1 (P#" dan I>*2 (P02. etiga interupsi itu dapat dipicu dengan adan!a  peru&ahan le@el &aik transisi naik (rising edge maupun transisi turun ()alling edge. 8ntuk pengaturan mode dan cara ker=ainterupsi eksternal dilakukan melalui 2 &uah register M$8$R dan register M$8$'R. 8ntuk le&is =elasn!a tentang register-register terse&ut le&ih &aik di&aca datasheetn!a. *etapi =ika menggunakan

(5)

compiler $odeVision AVR kita tidak perlu dituntut untuk tau tentang kedua register terse&ut karena secara otomatis $odeVision AVR akan mensettingn!a saat kita menset $ode7i5ard AVR dimana penggunaan $ode7i5ard AVR akan di=elakan pada &agian &erikutn!a.

*. CODEISION AR 

$odeVision AVR compiler ($VAVR merupakan compiler &ahasa $ untuk  AVR. $ompiler ini cukup memadai unutk &ela=ar AVR karena mudah penggunaan n!a =uga didukung &er&agai )itur !ang sangat mem&antu dalam pem&uatan so)tCare untuk keperluan pemrograman AVR. $VA$R ini dapat mengimplematasikan hamper semua interuksi &ahasa $ !ang sesuai dengan arsitektur AVR &ahkan terdapat &e&erapa keunggulan tam&ahan unutk memenuhi keunggulan spesi)ik #ri AVR.

$odeVisionAVR =uga mempun!ai Automatic Program ,enerator &ernama $ode7i5ardAVR !ang mengu=inkan Anda untuk menulis dalam hitunga menit semua instruksi !ang diperlukan untuk mem&uat )ungsi-)ungsi &erikut

G 'et-up akses memori eksternal G Identi)ikasi sum&er reset untuk chip G Inisialisasi port input/output

G Inisialisasi interupsi eksternal G Inisialisasi *imer/$ounter  G Inisialisasi 7atchdog-*imer

G Inisialisasi 8AR* (8'AR* dan komunikasi serial &er&asis &u))er !ang digerakkan oleh interupsi

G Inisialisasi Pem&anding Analog G Inisialisasi A#$

G Inisialisasi Antarmuka 'PI

G Inisialisasi Antarmuka *Co-7ire G Inisialisasi Antarmuka $A>

G Inisialisasi 0us I2$ 'ensor 'uhu <M;3 *hermometer/*hermostat #'121 dan Real-*ime $lock P$3" P$3" #'1"62 dan #'1"6;

G Inisialisasi 0us 1-7ire dan 'ensor 'uhu #'126 #'1'26 G Inisialisasi modul <$#

(6)

,am&ar "." *ampilan ACal $odeVision AVR 

8ntuk memulai mem&uat program pada $VAVR langkah-langkah !ang harus dilakukan !aitu

1. lik ile H >eC maka akan muncul =endela &erikut 

,am&ar ".3 endela $reate >eC ile

2. Pilih Pro=ect kemudian klik O kemudian akan muncul =endela &erikut 

,am&ar ". endela $on)irm ". lik es maka akan muncul =endela &erikut 

(7)

%. Pilih A*J6 A*tin! A*mega P'<I$ lik O maka akan muncul =endela  &erikut 

,am&ar ".; *ampilan $ode7i5ard AVR 

Pada $ode7I5ard terse&ut kita dapat melakukan inisiasi dari parameter- parameter mikrokontroler seperti =enis chip mikrokontroler )rekCensi ristal/clock maupun inisiasi dari settingan register-register dari mikrokontroler !ang ingin kita akses misaln!a A#$ timer counter interuspi dll serta dapat =uga digunakan untuk mengkondisikan port I/O mikrokontroler  untuk <$#.

3. 'etelah muncul )orm terse&ut silahkan atur ta&-ta& pada )orm terse&ut sesuai dengan ke&utuhan (nilai clock di&uat D 12.6666Mh5 dan setelah selesai lik   pada menu Program H K,enerate Program 'a@e and +9itK dan kemudian

muncul )orm pen!impanan seperti &erikut

(8)

. 'impan ketiga )ile terse&ut ()ile dengan )ormat L.c L.p=r dan L.cCp dengan nama dan )older !ang sama setelah itu akan muncul source code dasar seperti  &erikut 

,am&ar ".J *ampilan 'ource $ode #asar  C. PERALATAN

1. 0read&oard

2. Minimum 'istem A*mega 1 ". #oCnloader.

". <+#.

3. PoCer 'uppl! 1 &uah. . a&el =umper. ;. <$#. . Potentiometer/trimpot. J. Push 0utton 16. Resistor. D. PROSEDUR PERCOBAAN Di+it&l In$%t/O%t$%t (I/O)

1. 0uat rangkaian dengan <+# resistor dan push &utton seperti pada gam&ar  di&aCah lalu hu&ungkan dengan minimum sistem atmega sesuai dengan dengan  port !ang sesuai dengan gam&ar di&aCah.

(9)

,am&ar ".16 Rangkaian <+# dan push &utton 2. 0uka $odeVision AVR &uat pro=ect &aru

". Pada $ode7i5ard pada ta& $hip pilih Atmega 1 dan isikan )rekCensi clock  se&esar 12.666666 Mh5

(10)

%. Pilih ta& port dan inisiasikan port $ se&agai output dan port # de&agai input.

,am&ar ".12 Pengkondisian Port $ dan Port # se&agai Input dan Output 3. ,enerate program isikan script di&aCah ini pada progam utama

Chile (1 i) (PI>#.6DD1   POR*$.6D1N   POR*$.1D1N    else   POR*$.6D6N   POR*$.1D6N  

. $ompile program terse&ut dengan meng klik compile the pro=ectK 'etelah itu masukkan )ile L.he9K !ang &erada pada )older &inK ke mikrokontroller  dengan menggunakan so)tCare kha5ama.

;. Amati peru&ahan pada <+#

. 8langi langkah-langkah terse&ut dengan mengganti masukan program dari (PI>#.6DD1 men=adi (PI>#.6DD6

(11)

An&lo+ to Di+it&l Conrtr (ADC)

1. 0uat rangkaian dengan <$# dan Potentiometer/trimpot seperti pada gam&ar  di&aCah lalu hu&ungkan dengan minimum sistem atmega sesuai dengan dengan  port !ang sesuai dengan gam&ar di&aCah.

,am&ar ".1" Rangkaian Perco&aan A#$ 0uka $odeVision AVR &uat pro=ect &aru

". Pada $ode7i5ard pada ta& $hip pilih Atmega 1 dan isikan )rekCensi clock  se&esar 12.666666 Mh5

%. Pilih ta& A#$ &eri tanda centang pada A#$ ena&led seperti pada gam&ar di&aCah ini

(12)

3. Pilih *a& Alphanumeric <$# setting port c se&agai port output untuk <$# seperti  pada gam&ar &erikut.

,am&ar ".13 'etting *a& <$#

. ,enerate program tam&ahkan li&rar! Qinclude stdli&.hH dan #eklarasikan int A#$ serta char tempSTN

seperti pada gam&ar di&aCah ini

(13)

;. *am&ahkan script di&aCah ini pada program utama. Chile (1

lcdUclear( N

A#$ D readUadc(6N //0aca A#$ chanel 6 atau PA.6   lcdUgoto9!(66N

lcdUputs)(Praktikum A#$N   )toa(A#$1tempN

//)loat to arra! mengu&ah tipedata )loat ke tipe data arra! !g kan ditampilkan di <$#   lcdUgoto9!(61N lcdUputs(tempN   dela!Ums(366N N 

. $ompile program terse&ut dengan meng klik compile the pro=ectK 'etelah itu masukkan )ile L.he9K !ang &erada pada )older &inK ke mikrokontroller  dengan menggunakan so)tCare kha5ama.

J. Putar potentiometer/trimpot amati peru&ahan !ang ter=adi dan simpulkan. Intr%$"i Ek"trn&l

1. 0uat rangkaian dengan <+# dan push &utton seperti pada gam&ar di&aCah lalu hu&ungkan dengan minimum sistem atmega sesuai dengan dengan port !ang sesuai dengan gam&ar di&aCah.

,am&ar ".1; Rangkaian Perco&aan Interupsi +ksternal 2. 0uka $odeVision AVR &uat pro=ect &aru

". Pada $ode7i5ard pada ta& $hip pilih Atmega 1 dan isikan )rekCensi clock  se&esar 12.666666 Mh5

(14)

3. Pilih ta& +9ternal IRW &eri tanda centang pada I>*6 +na&led !ang &erarti mengakti)kan interupsi eksternal I>*6 serta pilih mode alling edge seperti  pada gam&ar di&aCah

,am&ar ".1 'etting *a& +9ternal IRW . ,enerate program tam&ahkan li&rar! Qinclude dela!.hH ;. *am&ahkan script &erikut pada &agian interupt

// +9ternal Interrupt 6 ser@ice routine

interrupt S+B*UI>*6T @oid e9tUint6Uisr(@oid    POR*$D6BN   dela!Ums(1666N   POR*$D6B66N   dela!Ums(1666N   POR*$D6BN   dela!Ums(1666N   POR*$D6B66N   dela!Ums(1666N   POR*$D6BN   dela!Ums(1666N 

(15)

. *am&ahkan script &erikut pada program utama Chile (1    POR*$D6B6N   dela!Ums(366N   POR*$D6B6;N   dela!Ums(366N   POR*$D6B6"N   dela!Ums(366N   POR*$D6B61N   dela!Ums(366N   POR*$D6B66N   dela!Ums(366N 

J. $ompile program terse&ut dengan meng klik compile the pro=ectK 'etelah itu masukkan )ile L.he9K !ang &erada pada )older &inK ke mikrokontroller  dengan menggunakan so)tCare kha5ama.

16. 'aat rangkaian di =alankan maka <+# akan men!ala &er=alan dan kemudian saat ter=adi interupsi !aitu saat push &utton ditekan maka <+# akan &erkedip se&an!ak " kali. 'etelah interupsi selesai di=alankan maka program utama akan kem&ali di=alankan.

Referensi

Dokumen terkait

Tanggung jawab audit juga sangat di perlukan dalam merencakanan penugasan audit.Dimana seorang audit harus menetapkan tujuan audit dan lingkup pekerjaannya,

Setelah terjadi krisis ekonomi pada masa Mangkunegara V, maka Mangkunegara VI berusaha meningkatkan perekonomian Praja Mangkunegaran dengan melakukan pemisahan

Data diperoleh melalui teknik observasi yaitu dengan cara merekam dan mengamati serta mencatat cara-cara mereka berinteraksi, simbol-simbol apa yang mereka gunakan

Sistem kontrol AFR yang dikembangkan dengan Fuzzy Logic Controller (FLC) mampu mengatasi permasalahan AFR pada mesin bensin EFI. Pada saat kendaraan melakukan

Berdasarkan grafik 2 dapat diketahui bahwa nilai Optical Density (OD) dari kurva pertumbuhan bakteri dengan kode isolat Bp19 pada media NB dapat bekerja secara

b.. Carilah bilangan kuantum yang menentukan orbit bumi mengelilingi matahari.. Cari panjang gelombang foton yang dipancarkan bila atom hidrogen bertransisi dari keadaan n =

Berdasarkan SNI 06-2422—1991 ada beberapa cara dalam pengukuran asidi alkalinitas suatu sampel, yaitu; Pengukuran asiditas methyl orange untuk pH air

Pemahaman Dasar-dasar Ilmu Kesehatan Masyarakat Kemampuan untuk merencanakan dan mengelola sumber dana Kemampuan Memimpin dan Berpikir Sistem. Tinjauan