LAPORAN ANTARMUKA ANTARMUKA MIKROKONTROLER DENGAN TOGGLE SWITCH
UNTUK MEMENUHI TUGAS Praktikum Mikrokontroler Lab PTE – 03 Yang Yang ibimbing !le" Ibu #a" Le$tar# Le$tar#
!le"% Agil tri $et#a utomo utomo &'0'3()03(*& Ak"ma+ Labib S"o,&'0'3()0-.00 A$"ro,l Mu/aki
&'0'3()03(-.
UNIVERSITAS NEGERI MALANG FAKULTAS TEKNIK S1 PENDIDIKAN TEKNIK ELEKTRO SEPTEMBER 2016
PERCOBAAN 2 ANTARMUKA MIKROKONTROLER DENGAN TOGGLE SWITCH
1. TUJUAN •
•
•
Mengeta"ui +an mema"ami ara mengantarmukakan mikrokontroler +engan rangakaian Toggle S1it"2 Mengeta"ui +n mema"ami bagaimana memrogram mikrokontroler untuk mengatur Toggle S1it"2 Untuk mengeta"ui rin$i ker4a Toggle S1it" +engan mikrokontroler2
2. DASAR TEORI A. SAKLAR TOGGLE
Saklar toggle 5Toggle S1it"6 a+ala" $ala" $atu $aklar elektrik #ang +igerakkan $eara manual ole" batang mekanik2 Saklar toggle ter$e+ia +alam berbagai bentuk +an ukuran7 $erta +igunakan +alam berbagai alika$i2 Gambar +iba1a" memerli"atkan bentuk ,$ik +an $#mbol $aklar toggle2
5a6 Sala" $atu toggle $1it" Simbol elektronik Gambar2 &
5b6
Gambar2 8 alam mo+ul I9! #ang +iakai +alam raktikum7 $aklar toggle #ang +igunakan +iberi rangkaian tamba"an berua rangkaian LE untuk meli"at $eara lang$ung logika #ang a+a a+a $aklar2 :angkaian LE $ama +engan rangkaian +alam Mo+ul I2 Ke+elaan rangkaian $aklar ter$ebut +i"ubungkan ke $ebua" $oket 4umer bernama INPUT2
B. PERINTAH DASAR MEMBACA DATA
Sebelum membaa +ata7 erlu +ibuat +eklara$i ;ariabel untuk +ata #ang +ima$ukkan2 ata bi$a bertie "ar2 eklara$i ;ariabel +iletakkan +i ;ariabel lokal a+a main rogram2 void main (void) { //Declare your local variables here unsigned char data_in; …
Untuk membaa +ata b#te ke P!:T< 5<=A7 >7 ?7 6 +igunakan $tatement
data_in = PIN; contoh!
data_in = PIN";
Untuk membaa +ata bit ke P!:T<2Y 5<=A7 >7 ?7 +an Y=07 &7 8 7 37 (7 '7 )7 -6 +igunakan $tatement data_in = PIN#$; contoh! data_in = PIN"#%;
3. ALAT DAN BAHAN •
& $et P?9Lato #ang $u+a" beri$i rogram ?o+e @i$ion +an K"a/ama
•
& bua" atu +a#a ? '@
•
& bua" multimeter
•
& bua" ISP o1nloa+er A@:
•
& bua" $i$tem minimum A@:
•
& bua" I9!
•
& bua" kabel rinter US>
•
8 bua" kabel ita "itam
4. PROSEDUR KERJA &2
Hubungkan $oket 4umer P!:T> a+a minimum $#$tem +engan $oket 4umer !UTPUT a+a I9! +an $oket 4umer P!:T? a+a minimum $#$tem +engan $oket 4umer INPUT a+a I9!
82
>uka rogram ?o+e @i$ion A@:
32
>uat ,le baru +engan ara klik BileCCNe17 atau klik ion ?reate a Ne1 Bile or Pro4et7 atau ketik ?trl N2 Kemu+ian munul +ialog boD7 ili" Pro4et a+a Bile T#e7 kemu+ian klik !K2
(2
Kemu+ian klik No ketika munul +ialog boD untuk menan#akan aaka" ingin menggunakan ?o+ei/ar+A@:
'2
Kemu+ian ili" loka$i en#imanan ,le +an buat Fol+er baru +engan nama raktikum 8 untuk men#iman ,le2
)2
Kemu+ian $iman ,le a+a Fol+er ter$ebut +an berinama ,le +engan nama $aklar +an klik Sa;e2
-2
Kemu+ian munul +ialog boD ?on,gure Pro4et2 Pa+a $ubtab ?o+e Generation a+a tab ? ?omiler ili" "i ATmega.'3' +an uba" ?lok men4a+i ( M"/2 Kemu+ian klik !K
.2
>uat ,le Soure baru +engan ara klik BileCCNe17 atau klik ion ?reate a Ne1 Bile or Pro4et7 atau ketik ?trl N2 Kemu+ian munul +ialog boD7 ili" Soure a+a Bile T#e7 kemu+ian klik !K2 Kemu+ian Sa;e a$ ,le Soure itu +engan nama $aklar +an $iman +i +alam +irektori #ang $ama #aitu +i +alam Fol+er raktikum 82
*2
Hubungkan ,le Pro4et +engan Bile Soure +engan ?ara klik Pro4etCC ?on,gure
&02
Pa+a +ialog boD7 klik A++ a+a tab Inut Bile$2 Kemu+ian ili" ,le #ang $u+a" an+a $iman ta+i +an klik !en2 Kemu+ian klik !K2
&&2
ika $u+a" +itamba"kan7 maka a+a ?o+e Na;igator akan terli"at $aklar22
&82
Tamba"kan ,le "ea+er &include 'mega*#h+
&32
>uat rogram utama +an ini$iali$a$ikan P!:T> $ebagai outut 5:> = BBH6 +an outut ;alue = 0 5P!:T>=00H67 +an P!:T? $ebagai inut 5:? = 00H6 +an re$i$tor ullu +i"ubungkan 5P!:T?=BBH6 $e"ingga a+a rogram bagian ini$iali$a$i P!:T> +an P!:T? terli"at $ebagai berikut% void main (void) { P,-."=0; DD-"=011; P,-.2=011; DD-2=0; 3hile (%) {
4 4
&(2
Tamba"kan +eklara$i ;ariabel lokal +i ba1a" ini +alam rogram utama2 unsigned char data_in;
&'2
Tuli$kan +alam rogram utama teatn#a tuli$kan rogram +i+alam 1"ile 5&6 5hile (%) { Data_in=PIN2; P,-."=data_in; 4 4
&)2
?omile rogram ter$ebut +engan ara klik Pro4etCC ?omile atau ketik B*2
&-2
ika a+a error 7 korek$i rogram #ang error +an erbaiki2 ika $u+a" ti+ak a+a #ang error buil+ rogram ter$ebut +engan ara klik Pro4etCC >uil+ atau klik S"iFt B*2
&.2
Hubungkan kabel u$b rinter antara P?9 Lato +engan trainer2
&*2
>uka alika$i K"an/ama A@: Programmer2 Pili" ATmega.'3' a+a ili"an "i A@:2 Kemu+ian buka rogram komila$i $aklar2"eD bia$an#a ter+aat a+a Fol+er atau $ub +erektori22JEDe #ang ter+aat a+a Fol+er raktikum 8 +engan ara klik ,leCC Loa+ Bla$" Bile to >uer atau ketik ?trl L kemu+ian klik !en2
802
Klik Auto Program kemu+ian in+a"kan $aklar $e$uai tabel '2& +iba1a"7 amati +an atat n#ala LE2
8&2
Hau$ rogram #ang a+a a+a rogram utama teatn#a rogram +i +alam 1"ile 5&6 kemu+ian tuli$kan rogram +i +alam 1"ile5&62 5hile (%) { data_in=PIN2#; P,-."#6=data_in; 4 4
882
?omile +an >uil+ rogram7 4ika a+a #ang error erbaiki rogram2 Ma$ukkan ,le "eD menggunakan K"an/ama A@: Programer2 Klik auto rogram2
832
Pin+a"kan $aklar $e$uai tabel '28 +iba1a"7 amati +an atat n#ala LE2
8(2
>uat rogram untuk ma$ing–ma$ing algoritma berikut +engan menggunakan iF % a6 ika $1it" bit 0 berlogika & maka LE bit ( men#ala2 b6 ika $1it" bit & berlogika & maka LE bit - men#ala2
8'2
>uat $atu rogram untuk ma$ing–ma$ing algoritma berikut +engan menggunakan iFel$e2 a6 ika $1it" bit 0 berlogika & maka LE bit ( men#ala2 b6 ika $1it" bit & berlogika & maka LE bit - men#ala2 6 ika $1it" bit 8 berlogika & maka LE men#ala +engan kon,gura$i !N!BB!N!BB!N!BB!N!BB 5bit-bit062 +6 ika $1it" bit 3 berlogika & maka LE men#ala +engan kon,gura$i !BB!N!BB!N!BB!N!BB!N 5bit-bit062 e6 ika $1it" bit ( berlogika & maka LE men#ala $emua2 F6 Ika $1it" bit ' berlogika & maka LE mati $emua2
g6 ika $1it" bit ) berlogika & maka LE men#ala berurutan mulai +ari bit0 ke bit- lalu kembali lagi ke bit0 +engan +ela# & +etik "6 ika $1it" bit - berlogika & maka LE akan men#ala +engan nilai $ama +engan +ua +igit terak"ir NIM an+a2
5. HASIL DAN ANALISA Tabel '2& Program Saklar& N!
& 0 8 0 3 0 ( 0 ' 0 ) 0 0 . & * & Anali$a%
) 0 0 0 0 0 0 & 0 &
' 0 0 0 0 0 & 0 0 &
Saklar ( 3 0 0 0 0 0 0 0 & & 0 0 0 0 0 0 0 & &
8 0 0 & 0 0 0 0 0 &
& 0 & 0 0 0 0 0 0 &
0 & & & & & & & & &
0 0 0 0 0 0 0 & &
) 0 0 0 0 0 0 & 0 &
' 0 0 0 0 0 & 0 0 &
LE ( 3 0 0 0 0 0 0 0 & & 0 0 0 0 0 0 0 & &
8 0 0 & 0 0 0 0 0 &
LE ( 3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
8 0 0 0 0 0 0 0 0
Program #ang tertuli$kan untuk table +iata$ data_in=PIN2; P,-."=data_in;
Artin#a P!:T> akan menamilkan +ata #ang tela" +i$iman +i ;ariable +atain ke PIN?2 Tabel '28 Program Saklar8 N!
& 0 8 0 3 0 ( 0 ' 0 ) 0 0 . & Anali$a%
) 0 0 0 0 0 0 & 0
' 0 0 0 0 0 & 0 0
Saklar ( 3 0 0 0 0 0 0 0 & & 0 0 0 0 0 0 0
8 0 0 & 0 0 0 0 0
& 0 & 0 0 0 0 0 0
0 & 0 0 0 0 0 0 0
& 0 0 0 0 0 0 &
) 0 0 0 0 0 0 0 0
' 0 0 0 0 0 0 0 0
Program #ang tertuli$kan untuk table '28 +iata$ data_in = PIN2#; P,-."#6 = data_in;
Mak$u+ +ari rogram +iata$ a+ala" ba"1a $aat PIN?20 ter+aat logika & maka LE bit ke- a+a P!:T> akan men#ala7 4a+i aaun #ang kita ma$ukan +ata a+a $aklar $elain +i PIN?20 ti+ak akan memberi eFek aaun a+a P!:T>2 &2
>uat rogram untuk ma$ing–ma$ing algoritma berikut +engan menggunakan iF % a6 ika $1it" bit 0 berlogika & maka LE bit ( men#ala2 5hile (%) { I7(PIN2#==%) P,-."#8=% 4
b6 ika $1it" bit & berlogika & maka LE bit - men#ala2 3hile (%) { I7(PIN2#%==%) P,-."#6=%; 9
82
>uat $atu rogram untuk ma$ing–ma$ing algoritma berikut +engan menggunakan iFel$e2 a6 ika $1it" bit 0 berlogika & maka LE bit ( men#ala 5hile(%) { i7 (PIN2#==%) data_in= PIN2#; i7 (PIN2#==) data_in= PIN2#; P,-.#8=data_in; 4
b6 ika $1it" bit & berlogika & maka LE bit - men#ala 5hile(%) { i7 (PIN2#%==%) data_in= PIN2#%;
i7 (PIN2#%==) data_in= PIN2#%; P,-.#6=data_in; 4
6 ika $1it" bit 8 berlogika & maka LE men#ala +engan kon,gura$i !N!BB!N!BB!N!BB!N!BB 5bit-bit06 5hile(%) { i7 (PIN2#:) {
P,-."=b%%%%; 4 else { P,-."=b; 4
+6 ika $1it" bit 3 berlogika & maka LE men#ala +engan kon,gura$i !BB!N!BB!N!BB!N!BB!N 5bit-bit06 5hile(%) i7 (PIN2#*) {
P,-."=b%%%%; 4 else { P,-."=b; 4
e6 ika $1it" bit ( berlogika & maka LE men#ala $emua 5hile(%) { i7 (PIN2#8) {
P,-."=b%%%%%%%%; 4
else
{P,-."=0; 4
F6 ika $1it" bit ' berlogika & maka LE mati $emua 5hile(%) {
i7 (PIN2#) {
P,-."=0; 4
else
{P,-."=0; 4
4
g6 ika $1it" bit ) berlogika & maka LE men#ala berurutan mulai +ari bit0 ke bit- lalu kembali lagi ke bit0 +engan +ela# & +etik &include (delay#h) ada rogram secara global 5hile(%) { i7 (PIN2#<) { P,-."=b%; delay_ms (%); P,-."=b%; delay_ms (%); P,-."=b%; delay_ms (%);
P,-."=b%; delay_ms (%); P,-."=b%; delay_ms (%); P,-."=b%; delay_ms (%); P,-."=b%; delay_ms (%); P,-."=b%; delay_ms (%); P,-."=b%; delay_ms (%); P,-."=b%; delay_ms (%); P,-."=b%; delay_ms (%); P,-."=b%; delay_ms (%); P,-."=b%; delay_ms (%); P,-."=b%; delay_ms (%); P,-."=b%; delay_ms (%); P,-."=b%; delay_ms (%); 4 else { P,-."=b; 4
4
h) i>a s5itch bit 6 berlogi>a % ma>a ?@D a>an menyala dengan nilai sama dengan dua digit tera>hir NIA anda //Dengan NIA %*8<*91 5hile(%) { i7 (PIN2#6) { P,-."=b%%%; 4 else { P,-."=0; 4
Anali$a Ke$eluru"an Program #ang menggunakan Fung$i IF "an#a +aat men4alankan $atu erinta" $a4a7 $e+angkan rogram #ang menggukan Fung$i IF El$e +aat menginutkan erinta" lebi" +ari $atu ern#ataan2 an $aklar 5toggle $1it"6 a+a trainer +igunakan untuk menginutkan nilai 0 atau & #ang berFung$i untuk men4alankan erinta"22
6. KESIMPULAN
Ke$imulann#a a+ala" kita bi$a membuat ;ariable #ang bernuan men#iman +ata +i $uatu Port +an menamilkann#a a+a Port lainn#a onto" aabila kita menggunakan ;ariable +atain 7+iguanakan untuk membaa +i P!:T? +an +itamilkan +i P!:T> maka $intakn#a +atain = PIN?20 P!:T>20 = +atain ela#94e+a menggunakan $atuan mili $eon+2$intakn#a a+ala" +ela#m$ 51aktu #ang +iinginkan62 Saklar toggle +aat men4alankan rogram bila $aklar +alam kon+i$i on7 +an 4ika +alam kon+i$i o $aklar ti+ak akan men4alankan rogram2 Bung$i IF +alam emrograman +igunakan untuk me4alankan erinta" 4ika ern#ataan benar7 namun 4ika $ala" erinta" ti+ak +i4alankan2 Bung$i IFEl$e +alam emrograman +igunakan untuk ern#ataan ma4emuk2 ika ern#ataan ertama $ala" maka akan +ilan4utkan ke ern#ataan ke+ua +an $eteru$n#a2
D!"# P$%"&
Mo+ul 87 Praktikum Mikrokontroler Lab PTE 03 5Antarmuka Mikrokontroler +engan Toggle S1it"6 !le" Ibu #a" Le$tari2 Setember 80&)2