Latihan Soal Nomor Soal Jawaban 1 A 2 B 3 D 4 ... - Elektro UM

8
60 Latihan Soal Nomor Soal Jawaban 1 A 2 B 3 D 4 B 5 A 6 B 7 C 8 C 9 B 10 D Latihan Soal Nomor Soal Jawaban 1 D 2 C 3 C 4 D 5 D 6 C 7 A 8 B 9 C 10 A

Transcript of Latihan Soal Nomor Soal Jawaban 1 A 2 B 3 D 4 ... - Elektro UM

60

Latihan SoalNomor Soal Jawaban

1 A2 B3 D4 B5 A6 B7 C8 C9 B10 D

Latihan SoalNomor Soal Jawaban

1 D2 C3 C4 D5 D6 C7 A8 B9 C10 A

61

Lembar Kerja SimulasiData hasil simulasi

Program Tampilan nyala LEDProgram LED1

Program LED2Program LED3Program LED4Program LED5

Program LED6

Analisis Data1. Analisis hasil simulasi program LED1-LED6.

Program LED1: PORTA.0=1; //LED bit0 menyala.PORTA.1=1; //LED bit1 menyala.PORTA.2=1; //LED bit2 menyala.PORTA.3=1; //LED bit3 menyala.delay_ms(1000); //memberi jeda waktu selama 1 detik.Program LED2PORTA=0x0f; //LED bit0,1,2,3 menyala.PORTA=0xf0; //LED bit4,5,6,7 menyala.delay_ms(1000); //memberi jeda waktu selama 1 detik.Program LED3PORTA=0b00001111; //LED bit0,1,2,3 menyala.PORTA=0b11110000; //LED bit4,5,6,7 menyala.delay_ms(1000); //memberi jeda waktu selama 1 detik.Program LED4PORTA=0xaa; //LED bit1,3,5,7 menyala.PORTA=0x55; //LED bit0,2,4,6 menyala.delay_ms(1000); //memberi jeda waktu selama 1 detik.Program LED5PORTA=0b10000001; //LED bit0,7 menyala.PORTA=0b01000010; //LED bit1,6 menyala.PORTA=0b00100100; //LED bit2,5 menyala.PORTA=0b00011000; //LED bit3,4 menyala.delay_ms(500); //memberi jeda waktu selama setengah detik.

62

Program LED6PORTA=0b00011000; //LED bit3,4 menyala.PORTA=0b00100100; //LED bit2,5 menyala.PORTA=0b01000010; //LED bit1,6 menyala.PORTA=0b10000001; //LED bit0,7 menyala.delay_ms(500); //memberi jeda waktu selama setengah detik.

2. Persamaan dari program LED2 dan program LED3, yaitu menghasilkan kombinasi nyala LED yang sama. Perbedaan dari kedua program tersebut, yaitu program LED2 ditulis dengan bilangan heksadesimal, sedangkan program LED3 ditulis dengan bilangan biner.

3. Instruksi yang digunakan untuk mengeluarkan data ke 1 bit LED, yaitu PORTX.n = data.X menunjukkan posisi port dan Y menunjukkan posisi bit.

4. Instruksi yang digunakan untuk mengeluarkan data ke 1 bit LED, yaitu PORTX = data.X menunjukkan posisi port.

5. Pengaturan jeda waktu pergantian nyala LED dapat diatur melalui perintah delay_ms(n);n merupakan nilai waktu dalam satuan milidetik.

Latihan SoalNomor Soal Jawaban

1 D2 D3 C4 C5 A

63

Lembar Kerja SimulasiData Hasil Simulasi

Program Relay1

No Saklar Relay7 6 5 4 3 2 1 0 7 6 5 4 3 2 1 0

1 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 12 0 0 0 0 0 0 1 1 0 0 0 0 0 0 1 13 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 04 0 0 0 1 1 0 0 0 0 0 0 1 1 0 0 05 1 0 0 1 1 0 1 0 1 0 0 1 1 0 1 0

Program Relay2

No Saklar Relay7 6 5 4 3 2 1 0 7 6 5 4 3 2 1 0

1 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 02 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 03 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 04 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 05 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 06 0 0 1 0 0 0 0 0 0 0 0 0 0 0 1 07 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 08 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0

Analisis Data1. Analisis program Relay1 dan Relay2

Program Relay1data_input=PINA; //membaca masukkan pada PORTA dan menyimpannya

dalam variabel data_inputPORTD=data_input; // mengatur keluaran PORTD sesuai dengan data pada

variabel data_input.Program Relay2data_input=PINA.5; //membaca masukkan pada bit5 PORTA dan

menyimpannya dalam variabel data_input.PORTD.1=data_input; //mengatur keluaran bit1 PORTD sesuai dengan data

pada variabel data_input.2. Instruksi yang digunakan dalam pembacaan input ada dua cara.

Pembacaan 1 bit input PINn.X = variabel.n menunjukkan posisi bit dan X menunjukkan posisi port yang dibaca.Pembacaan 1 byte input PINX = variabel.X menunjukkan posisi port yang dibaca.

64

Latihan soalNomor Soal Jawaban

1 D2 D3 C4 C5 A

Lembar Kerja SimulasiData Hasil Simulasi

1. Tabel 5.1 Hasil Simulasi Program Kendali Motor DC Satu Arah PutarSaklar Kondisi Motor DC

Start Stop0 0 Berhenti0 1 Berhenti1 0 Berputar0 0 Berputar0 1 Berhenti0 0 Berhenti

2. Tabel 5.2 Hasil Simulasi Program Kendali Motor DC Dua Arah PutarSaklar Kondisi Motor DCKanan Kiri Stop

0 0 0 Berhenti0 1 0 Berputar CCW0 0 0 Berputar CCW1 0 0 Berputar CW0 0 0 Berputar CCW0 0 1 Berhenti0 0 0 Berhenti

Analisis Data1. Program kendali motor DC satu arah putar.

#include <mega16.h>#define start PINB.0 //PINB.0 didefinisikan sebagai start#define stop PINB.1 //PINB.1 didefinisikan sebagai stop#define putar PORTD.0 //PORTD.0 didefinisikan sebagai putarVoid main (void){

65

PORTB=0x00; //inisialisasi PORTBDDRB=0x00;PORTD=0x00; //inisialisasi PORTDDDRD=0xFF;

While (1){if(start==1) //percabangan if dengan membaca kondisi start

{while (stop!=1) //perulangan while dengan syarat kondisi stop

{putar=1; //putaran motor

}} else putar=0;

}}

Dari program di atas, diketahui dalam pengendalian motor DC menggunakan percabangan if dan perulangan while. Percabangan digunakan untuk memeriksa kondisi tombol start. Jika tombol start ditekan maka akan mengeksekusi program perulangan while dengan syarat kondisi tombol stop tidak sama dengan satu (tidak ditekan) maka motor akan terus berputar walaupun tombol start sudah tidak ditekan. Motor hanya akan berhenti jika tombol stop ditekan.

2. Program kendali motor DC dua arah putar.#include <mega16.h>#define kanan PINB.0 //PINB.0 didefinisikan sebagai kanan#define kiri PINB.1 //PINB.1 didefinisikan sebagai kiri#define stop PINB.2 //PINB.2 didefinisikan sebagai stop#define CW PORTD.0 //PORTD.0 didefinisikan sebagai CW#define CCW PORTD.1 //PORTD.1 didefinisikan sebagai CCWvoid main (void){PORTB=0x00; //insialisasi PORTBDDRB=0x00;PORTD=0x00; //inisialisasi PORTDDDRD=0xFF;

while (1){

if (kanan==0&&kiri==0) //percabangan if dengan kondisi kanan dan kiri

66

{CW=0;CCW=0;} //motor DC tidak berputarelse if (kanan==1&&kiri==0) //jika tombol kanan ditekan{while(stop!=1&&kiri!=1) //selama tombol stop dan kiri tidak ditekan

{CW=1;CCW=0;}} //motor DC berputar CWelse if (kanan==0&&kiri==1) //jika tombol kiri ditekan{while(stop!=1&&kanan!=1) //selama tombol stop dan kanan tidak ditekan

{CW=0;CCW=1;}} //motor DC berputar CCWelse if (kanan==1&&kiri==1) //tombol kanan dan kiri ditekan{CW=0;CCW=0;} //motor DC tidak berputar

}}

Dari program di atas, diketahui dalam pengendalian arah putar motor DC menggunakan percabangan if-else dengan pembacaan kondisi tombol kanan dan kiri.Untuk mempertahankan kondisi putaran motor digunakan perulangan while.Jika tombol kanan dan kiri tidak ditekan, maka motor tidak berputar. Jika tombol kanan ditekan dan kiri tidak ditekan, maka motor berputar searah jarum jam.Jika tombol kanan tidak ditekan dan kiri ditekan, maka motor berputar berlawanan arah jarum jam.Jika tombol kanan dan kiri ditekan, maka motor akan berhenti berputar.Jika tombol stop ditekan, maka motor akan berhenti berputar.

Latihan SoalNomor Soal Jawaban

1 C2 D3 B4 B5 B

67

A. Rubrik Penilaian Latihan SoalNilai Latihan Soal =

B. Rubrik Penilaian Lembar Kerja SimulasiPenilaian Hasil Simulasi

Skor Keterangan4 Siswa menyelesaikan tahapan simulasi sebesar 85% - 100%3 Siswa menyelesaikan tahapan simulasi minimal 75% - 84%2 Siswa menyelesaikan tahapan simulasi minimal 60% - 74%1 Siswa menyelesaikan tahapan simulasi minimal 20% - 59%0 Siswa tidak melakukan simulasi.

Nilai Hasil Simulasi =

Penilaian Analisis DataSkor Keterangan

4 Siswa mampu menjawab dengan benar, lengkap, dan menjelaskan dengan baik.

3 Siswa mampu menjawab dengan benar namun tidak bisa menjelaskan dengan baik.

2 Siswa mampu menjawab cukup baik.1 Siswa mampu menjawab tetapi kurang lengkap dan kurang baik.0 Siswa tidak menjawab.

Nilai Analisis Data =