wayground logo

Free Printable Worksheets

Font size

S
M
L
XL
Worksheets

Menguasai ATMega328P

Total questions: 55

Worksheet time: 33mins

Name
Class
Date
1.
Gunakan artikel pada tautan ini, https://docs.google.com/document/d/1aBAZ6NNcMpDI5qYTV8o5OMKL0SFWAgp8mpnH29t3UiQ/edit?usp=sharing, untuk menjawab pertanyaan berukut ini, dimulai dari : apa fungsi dari DDRB = 0b00001000; dalam program ini?
a)
Mengatur PB3 sebagai input
b)
Mengatur PB3 sebagai output
c)
Membaca status PB3
d)
Mengatur semua port sebagai output
2.
Mode PWM apa yang digunakan dalam kode ini?
a)
Phase Correct PWM
b)
Fast PWM
c)
PWM Normal
d)
PWM Inverted
3.
Apa fungsi bit COM2A1 yang di-set pada TCCR2A?
a)
Membalik sinyal output PWM
b)
Non-inverting mode output
c)
Mematikan PWM
d)
Mode Toggle output
4.
Prescaler yang digunakan pada TCCR2B adalah?
a)
1
b)
8
c)
64
d)
256
5.
Nilai maksimal OCR2A untuk timer 8-bit adalah?
a)
255
b)
128
c)
512
d)
1023
6.
Tegangan output rata-rata pada duty cycle 50% dari 5V adalah?
a)
2.5 V
b)
1.25 V
c)
3.3 V
d)
5 V
7.
Jika ingin menaikkan kecepatan motor, apa yang dilakukan pada OCR2A?
a)
Mengurangi nilainya
b)
Mengubah prescaler
c)
Menaikkan nilainya
d)
Reset timer
8.
Dalam kode ini, nilai OCR2A 128 menghasilkan berapa persen duty cycle?
a)
0.25
b)
0.5
c)
0.75
d)
1
9.
Apa yang terjadi jika OCR2A diset ke 0?
a)
Output selalu HIGH
b)
Output selalu LOW
c)
PWM dengan duty cycle 0%
d)
Motor berjalan maksimal
10.
Buatkan kode program untuk Nyalakan dan Matikan LED (PORTB) ketika pin D nomor 2 ditekan, yang disertai pengaturan debouncing
4 lines
11.
Gunakan tautan ini : https://docs.google.com/document/d/11xKoOvYhzZQso51gQPlmfw31YvbTP2qEW4MhvHoPx6w/edit?usp=sharing, untuk menjawab 10 pertanyaan berikut, yang dimulai dari : apa fungsi utama register ADMUX pada ATmega328P?
a)
Mengatur kecepatan clock sistem
b)
Memilih sumber tegangan referensi dan kanal ADC
c)
Menyimpan hasil konversi ADC
d)
Mengaktifkan ADC
e)
Mengatur interrupt ADC
12.
Jika nilai ADMUX diset menjadi 0b01000000, apa yang terjadi?
a)
Tegangan referensi AVcc, format hasil normal, input ADC0
b)
Tegangan referensi internal 1.1V, format left adjust, input ADC1
c)
Tegangan referensi eksternal AREF, format normal, input ADC0
d)
Tegangan referensi AVcc, format left adjust, input ADC2
e)
Tegangan referensi internal 2.56V, format normal, input ADC7
13.
Bagaimana cara memilih channel ADC2 menggunakan register ADMUX?
a)
ADMUX = 0b01000000;
b)
ADMUX = 0b01000010;
c)
ADMUX = 0b01100010;
d)
ADMUX = 0b00000010;
e)
ADMUX = 0b10000010;
14.
Apa arti bit ADLAR dalam register ADMUX?
a)
Mengaktifkan ADC
b)
Menentukan posisi hasil konversi (left or right adjusted)
c)
Memilih tegangan referensi
d)
Memulai konversi ADC
e)
Memilih kanal ADC
15.
Apa arti literal biner 0b01100010 dalam konteks pengaturan ADMUX?
a)
Tegangan referensi AVcc, left adjust hasil, channel ADC2
b)
Tegangan referensi AREF, right adjust hasil, channel ADC1
c)
Tegangan referensi internal 1.1V, left adjust hasil, channel ADC0
d)
Tegangan referensi AVcc, right adjust hasil, channel ADC2
e)
Tegangan referensi AVcc, left adjust hasil, channel ADC0
16.
Dalam kode berikut, apa yang diatur oleh nilai 0b01000000? ADMUX = 0b01000000;
a)
Tegangan referensi AVcc, hasil normal, ADC0
b)
Tegangan referensi internal, hasil left adjust, ADC1
c)
Tegangan referensi AREF, hasil normal, ADC2
d)
Tegangan referensi AVcc, hasil left adjust, ADC3
e)
Tegangan referensi AREF, hasil left adjust, ADC0
17.
Jika ingin menggunakan tegangan referensi internal 1.1V pada ADMUX, nilai bit REFS1 dan REFS0 harus diatur menjadi?
a)
0
b)
1
c)
10
d)
11
e)
Tidak mungkin di ATmega328P
18.
Bagaimana Anda mengatur ADMUX agar hasil ADC 10-bit disimpan secara left adjusted dan channel ADC3 dipilih, dengan referensi AVcc?
a)
ADMUX = 0b01100011;
b)
ADMUX = 0b01000011;
c)
ADMUX = 0b01100110;
d)
ADMUX = 0b01000110;
e)
ADMUX = 0b00100011;
19.
Apa arti dari MUX4..0 dalam register ADMUX?
a)
Mengatur prescaler ADC
b)
Mengatur bit status ADC
c)
Memilih kanal input ADC (ADC0–ADC7)
d)
Memilih mode interrupt ADC
e)
Memilih mode power-down
20.
Pada kode ADMUX = 0b01100000;, channel ADC mana yang dipilih?
a)
ADC0
b)
ADC1
c)
ADC2
d)
ADC3
e)
ADC4
21.
Tuliskan perintah pengaturan ADC dengan kriteria Tegangan referensi = AVcc, Hasil left adjusted (ADLAR=1) di kanal Input ADC2. Memamakai bahasa C lengkap dari Include sampai kurung kurawal tutup
4 lines
22.
Apa fungsi bit ADEN (bit 7) dalam register ADCSRA?
a)
Memulai konversi ADC
b)
Mematikan ADC
c)
Mengaktifkan ADC
d)
Menentukan prescaler
e)
Mengatur referensi tegangan
23.
Jika ADEN di-set 0, apa akibatnya pada ADC?
a)
ADC tetap aktif
b)
ADC mati
c)
ADC mulai konversi
d)
Interrupt ADC aktif
e)
ADC delay
24.
Apa arti bit ADSC (bit 6) dalam ADCSRA?
a)
Memulai konversi ADC
b)
Mematikan ADC
c)
Set prescaler
d)
Reset ADC
e)
Mengaktifkan interrupt
25.
Kode C berikut menunjukkan apa? ADCSRA = 0b10000000;
a)
Nyalakan ADC
b)
Mulai konversi ADC
c)
Set prescaler 128
d)
Reset ADC
e)
Nonaktifkan interrupt
26.
Apa fungsi bit ADATE (bit 5) dalam ADCSRA?
a)
Menandai konversi selesai
b)
Mengaktifkan interrupt ADC
c)
Mode otomatis pengukuran
d)
Reset ADC
e)
Memulai konversi
27.
Bagaimana cara kerja bit ADIF (bit 4)?
a)
Bit aktif saat ADC mati
b)
Menandai konversi selesai
c)
Menandai prescaler
d)
Mengaktifkan ADC
e)
Memulai interrupt
28.
Dalam kode ADCSRA = 0b10100000; bit mana yang di-set?
a)
ADEN dan ADATE
b)
ADEN dan ADSC
c)
ADEN dan ADIF
d)
ADEN dan ADIE
e)
ADSC dan ADIF
29.
Kode ADCSRA = 0b11000000; menunjukkan?
a)
ADC mati
b)
Mulai konversi ADC aktif
c)
Mode otomatis
d)
Interrupt ADC aktif
e)
Reset ADC
30.
Apa pengaruh pengaturan bit ADPS2..0 dalam ADCSRA?
a)
Atur mode ADC
b)
Atur referensi tegangan
c)
Atur pembagi clock (prescaler)
d)
Memulai konversi ADC
e)
Reset ADC
31.
Jika ADPS2..0 diset 111 (biner), berapa pembagi clock yang digunakan?
a)
64
b)
128
c)
32
d)
16
e)
8
32.
Tuliskan perintah pengaturan ADCSRA dimulai dari Aktifkan ADC, Mulai konversi, Mode manual (tanpa trigger otomatis), Tanpa interrupt ADC dan Prescaler 128 → 16 MHz / 128 = 125 kHz
4 lines
33.
Apa fungsi ADMUX = 0b01000000; dalam kode ini?
a)
Memilih referensi AVCC dan kanal 0
b)
Memilih referensi internal 1.1V
c)
Memilih kanal ADC1
d)
Memilih referensi eksternal
e)
Memilih kanal ADC7
34.
Bagaimana ADCSRA diatur pada ADCSRA = 0b10000111;?
a)
ADC aktif, prescaler 128
b)
ADC mati, prescaler 64
c)
ADC aktif, prescaler 64
d)
ADC mati, prescaler 128
e)
ADC aktif, prescaler 32
35.
Fungsi kode `ADCSRA = ADCSRA | 0b01000000;` di dalam loop?
a)
Mulai konversi ADC
b)
Reset ADC
c)
Mematikan ADC
d)
Mengaktifkan interrupt ADC
e)
Membaca hasil ADC
36.
Apa arti kondisi while ((ADCSRA & 0b01000000) != 0);?
a)
Tunggu konversi selesai
b)
Tunggu ADC mati
c)
Tunggu interrupt ADC
d)
Tunggu reset ADC
e)
Tunggu input analog
37.
Mengapa hasil = hasil + (ADCH << 8); menggunakan operator geser?
a)
Menggeser ADCH ke bit 8-9
b)
Menjumlahkan ADCH secara langsung
c)
Menggeser ADCL
d)
Mengalikan ADCH dengan 256
e)
Menjumlahkan ADCH dan ADCL
38.
Apa rentang nilai variabel hasil pada ADC 10-bit?
a)
0 sampai 1023
b)
0 sampai 255
c)
0 sampai 4095
d)
0 sampai 511
e)
0 sampai 65535
39.
Bagaimana cara mengkonversi nilai ADC ke tegangan aktual?
a)
(hasil / 1023.0) * 5.0
b)
(hasil / 255.0) * 5.0
c)
(hasil / 1023.0) * 3.3
d)
(hasil / 255.0) * 3.3
e)
(hasil / 4095.0) * 5.0
40.
Apa referensi tegangan pada kode ini?
a)
5 Volt (AVCC)
b)
3.3 Volt
c)
Internal 1.1 Volt
d)
Eksternal 2.56 Volt
e)
Tidak ada referensi
41.
Apa fungsi bit ADEN dalam ADCSRA?
a)
Mengaktifkan ADC
b)
Memulai konversi ADC
c)
Mematikan ADC
d)
Menandai konversi selesai
e)
Mengaktifkan interrupt ADC
42.
Kenapa ADC harus menunggu sampai ADSC = 0?
a)
Agar konversi selesai sebelum baca
b)
Agar ADC mati terlebih dahulu
c)
Agar interrupt berjalan
d)
Agar ADC reset
e)
Agar prescaler aktif
43.
Tuliskan perintah membaca tegangan analog melalui penggunaan ADC
4 lines
44.
Gunakan tautan ini : https://docs.google.com/document/d/1tJwRYZaeB4_DPS8LpStMNSXbLY_UvB_Q9kq6MGw80Hg/edit?usp=sharing, dimulai dari : berapa nilai OCR2A untuk menghasilkan tegangan PWM sekitar 4.5V?
a)
200
b)
230
c)
128
d)
255
45.
Nilai awal OCR2A = 128 akan menghasilkan tegangan rata-rata sekitar:
a)
1.25 V
b)
2.5 V
c)
3.3 V
d)
4.0 V
e)
5.0 V
46.
Setelah 1 detik, OCR2A = 200. Tegangan rata-rata output PB3 menjadi sekitar:
a)
2.0 V
b)
3.2 V
c)
3.9 V
d)
4.8 V
e)
5.0 V
47.
Nilai maksimum yang dapat diberikan ke OCR2A agar tegangan output mendekati 5V adalah:
a)
128
b)
200
c)
255
d)
100
48.
Ketika OCR2A = 50, tegangan output rata-rata PB3 menjadi sekitar:
a)
0.5 V
b)
1.0 V
c)
2.0 V
d)
3.0 V
e)
4.0 V
49.
Register manakah yang bertanggung jawab untuk menentukan nilai duty cycle PWM?
a)
TCCR2A
b)
TCCR2B
c)
DDRB
d)
OCR2A
e)
PORTB
50.
Jika ingin membuat duty cycle 100%, maka nilai OCR2A harus diatur ke:
a)
0
b)
128
c)
200
d)
255
e)
Tidak bisa
51.
Apa efek utama dari mengganti nilai OCR2A selama program berjalan?
a)
Ubah frekuensi
b)
Ubah mode PWM
c)
Ubah arah port
d)
Ubah duty cycle
e)
Atur ulang prescaler
52.
Mengapa pin PB3 digunakan untuk output PWM?
a)
PB3 adalah pin analog
b)
PB3 ke OCR2B
c)
PB3 terhubung ke OC2A
d)
PB3 punya interrupt
e)
PB3 auto HIGH
53.
Prescaler = 8 dipilih untuk:
a)
Memperlambat PWM
b)
Mempercepat pulsa
c)
Atur duty cycle
d)
Sinkron DDRB
e)
Atur port output
54.
Jika ingin membuat motor berputar lebih cepat, maka:
a)
Kurangi OCR2A
b)
Set OCR2A ke 0
c)
Naikkan OCR2A
d)
Ubah DDRB
e)
Setel ulang prescaler
55.
Buatkan kode program pwm untuk memproduksi tegangan 4.5 Volt secara PWM konstan di pin PB3, yang harus hitung dulu nilai OCR2A yang sesuai. Sebagaimana rumus tegangan output rata-rata (Vout) dari PWM adalah _xDC50_Vout=Vcc × (OCR2A/255)
4 lines