Persekitaran Pengaturcaraan Arduino 1
Standard Pembelajaran: Standard Prestasi:
2.4.3 Menghasilkan lakaran reka bentuk litar elektrik 2.4-3 Melakar reka bentuk litar elektronik menggunakan
2.4.5 Membuat penyambungan litar input dan litar output kepada mikropengawal
mikropengawal 2.4-4 Menguji kefungsian litar yang menggunakan
2.4.6 Menulis pengaturcaraan mudah berdasarkan mikropengawal
penyambungan litar input dan litar output 2.4-5 Membuat justifikasi kawalan atur cara input dan output
2.4.7 Membuat pengujian dan penilaian kefungsian litar bagi menyelesaikan masalah
elektronik 2.4-6 Membina litar eletronik kawalan mikropengawal berfungsi
• Mikropengawal seperti Arduino ataupun Maker Uno dapat
mengawal litar elektrik yang bersambung melalui isyarat
digital ataupun analog yang diterima dari pin ataupun
dihantar ke pin
• Fikirkan mikropengawal seperti otak, ia dapat terima
maklumat, memproses maklumat dan membuat
tindakbalas yang sewajarnya berdasarkan input yang
diterima
• Terdapat 2 program utama dalam Arduino
Start • Program pertama adalah setup yang akan berjalan satu
kali, manakala program loop (gelung) akan berjalan untuk
selama-lamanya
setup program Start
setup program
loop program
loop program
Setelah kod telah ditaip masuk, tekan upload untuk
muatnaik kod ke dalam mikropengawal. Mikropengawal
akan menyimpan kod dalam mem||inya sehingga kod itu
dipadam. Setiap kali mikropengawal dihidupkan,
mikropengawa itu akan melaksanakan kod di dalam
mem||inya.
Langkah-langkah menulis aturcara Arduino
Jika terdapat masalah,
Nyatakan sama ada pin
pastikan setiap baris kod
Kenalpasti pin yang tersebut adalah pin Tuliskan aturcara dalam
mempunyai tanda ; dan
diguna dalam projek INPUT atau OUTPUT di bahagian LOOP
setiap symbol (), {}
bahagian SETUP
mempunyai pasangannya
© 2017 Arus Education Sdn Bhd.
Struktur Kawalan Jujukan 2
Standard Pembelajaran: Standard Prestasi:
2.4.3 Menghasilkan lakaran reka bentuk litar elektrik 2.4-3 Melakar reka bentuk litar elektronik menggunakan
2.4.5 Membuat penyambungan litar input dan litar output kepada mikropengawal
mikropengawal 2.4-4 Menguji kefungsian litar yang menggunakan
2.4.6 Menulis pengaturcaraan mudah berdasarkan mikropengawal
penyambungan litar input dan litar output 2.4-5 Membuat justifikasi kawalan atur cara input dan output
2.4.7 Membuat pengujian dan penilaian kefungsian litar bagi menyelesaikan masalah
elektronik 2.4-6 Membina litar eletronik kawalan mikropengawal berfungsi
Start Struktur kawalan jujukan merupakan kod
aturcara yang tidak mempunyai cabang.
Turn on LED at Pin 13 Biasanya ini adalah untuk projek yang hanya
memerlukan OUTPUT ataupun INPUT sahaja
Wait 1 second
Langkah-langkah aturcara, ataupun algoritma
biasanya diwakili dengan carta alir.
Turn off LED at Pin13
Apakah fungsi algoritma ini?
Wait 1 second
__________________________________
End
Kod Arahan Fungsi
pinMode(__, __)
digitalWrite(___, ___)
delay(_____)
Isi tempat kosong di kod berikut untuk
hasilkan algoritma di atas
★ Cabaran A ★
Bil Tugasan
☑
A1 Kelipkan LED pada pin 5
setiap 1 saat
A2 Kelipkan 2 LED bersama-
sama setiap 0.5 saat
A3 LED Countdown
A4 Corak chase-light
© 2017 Arus Education Sdn Bhd.
Pengenalan Kepada Lukisan Skematik 3
Standard Pembelajaran: Standard Prestasi:
2.4.3 Menghasilkan lakaran reka bentuk litar elektrik 2.4-3 Melakar reka bentuk litar elektronik menggunakan
2.4.5 Membuat penyambungan litar input dan litar output kepada mikropengawal
mikropengawal 2.4-4 Menguji kefungsian litar yang menggunakan
2.4.6 Menulis pengaturcaraan mudah berdasarkan mikropengawal
penyambungan litar input dan litar output 2.4-5 Membuat justifikasi kawalan atur cara input dan output
2.4.7 Membuat pengujian dan penilaian kefungsian litar bagi menyelesaikan masalah
elektronik 2.4-6 Membina litar eletronik kawalan mikropengawal berfungsi
Isikan simbol dan fungsi komponen
Simbol Nama Komponen Fungsi Input /
Output
Diod Pemancar Cahaya
(LED)
Perintang tetap
Perintang boleh laras
Buzzer
Perintang peka cahaya
Gariskan “lubang” breadboard yang Ini merupakan simbol skematik untuk Arduino
bersambung
© 2017 Arus Education Sdn Bhd.
Litar Output 4
Standard Pembelajaran: Standard Prestasi:
2.4.3 Menghasilkan lakaran reka bentuk litar elektrik 2.4-3 Melakar reka bentuk litar elektronik menggunakan
2.4.5 Membuat penyambungan litar input dan litar output kepada mikropengawal
mikropengawal 2.4-4 Menguji kefungsian litar yang menggunakan
2.4.6 Menulis pengaturcaraan mudah berdasarkan mikropengawal
penyambungan litar input dan litar output 2.4-5 Membuat justifikasi kawalan atur cara input dan output
2.4.7 Membuat pengujian dan penilaian kefungsian litar bagi menyelesaikan masalah
elektronik 2.4-6 Membina litar eletronik kawalan mikropengawal berfungsi
Lukiskan rajah skematik untuk Lukiskan rajah skematik untuk
sambungan 1 LED ke pin 6 pada Arduino sambungan 3 LED pada pin yang
dan tuliskan aturcara untuk kelipkan LED berlainan. Kelipkan LED tersebut bergilir-
di pin 6 gilir
Kod Arahan Fungsi
tone( ___, ___, ___)
!one(___)
Lukiskan rajah skematik yang melibatkan sambungan Labelkan frekuensi bagi notasi muzik di bawah
buzzer ke pin 8 (built-in) dan tuliskan aturcara untuk
mainkan melodi (B A G A B B B) :
★ Cabaran B ★
Bil Tugasan
☑
B1 Lampu Isyarat
B2 Persembahan muzik dan
lampu
B3 Ulangi A3 atau A4 dengan
LED yang sambung di
breadboard
© 2017 Arus Education Sdn Bhd.
Litar Input 5
Standard Pembelajaran: Standard Prestasi:
2.4.3 Menghasilkan lakaran reka bentuk litar elektrik 2.4-3 Melakar reka bentuk litar elektronik menggunakan
2.4.5 Membuat penyambungan litar input dan litar output kepada mikropengawal
mikropengawal 2.4-4 Menguji kefungsian litar yang menggunakan
2.4.6 Menulis pengaturcaraan mudah berdasarkan mikropengawal
penyambungan litar input dan litar output 2.4-5 Membuat justifikasi kawalan atur cara input dan output
2.4.7 Membuat pengujian dan penilaian kefungsian litar bagi menyelesaikan masalah
elektronik 2.4-6 Membina litar eletronik kawalan mikropengawal berfungsi
Kod Arahan Fungsi
[Link](9600)
analogRead( ___)
int __ = ___
[Link](__)
Lukiskan rajah skematik untuk sambungan 1 Lukiskan rajah skematik untuk sambungan 1
perintang boleh laras pada pin A0 perintang peka cahaya pada pin A1
Tuliskan atucara untuk membaca nilai daripada A0 dan
paparkan. Sterusnya buat yang sama untuk nilai A1
★ Cabaran C ★
Bil Tugasan
☑
C1 Buat penyelidikan atas
talian untuk carikan
kegunaan analogWrite.
Nyalakan 1 LED dengan
analogWrite
C2 Gunakan nilai yang dibaca
oleh sama ada LDR
ataupun perintang boleh
laras untuk tetapkan
keterangan LED
© 2017 Arus Education Sdn Bhd.
Struktur Kawalan Pilihan 6
Standard Pembelajaran: Standard Prestasi:
2.4.3 Menghasilkan lakaran reka bentuk litar elektrik 2.4-3 Melakar reka bentuk litar elektronik menggunakan
2.4.5 Membuat penyambungan litar input dan litar output kepada mikropengawal
mikropengawal 2.4-4 Menguji kefungsian litar yang menggunakan
2.4.6 Menulis pengaturcaraan mudah berdasarkan mikropengawal
penyambungan litar input dan litar output 2.4-5 Membuat justifikasi kawalan atur cara input dan output
2.4.7 Membuat pengujian dan penilaian kefungsian litar bagi menyelesaikan masalah
elektronik 2.4-6 Membina litar eletronik kawalan mikropengawal berfungsi
Lukiskan carta alir bagi proses
“Jika gelap, nyalakan LED”
TRUE ADAKAH FALSE
SYARAT
BENAR?
A B
PROSES LAIN DALAM
ATUR CARA
Operator Perbandingan
Operator Perbandingan digunakan untuk membandingkan dua nilai bagi menghasilkan keputusan Boolean
iaitu keadaan True atau False
Terdapat 6 jenis operator perbandingan dalam atur cara Arduino
1) == sama dengan
2) != tidak sama dengan
3) > lebih besar daripada
4) >= lebih besar daripada atau sama dengan
5) < lebih kecil daripada
6) <= lebih kecil daripada atau sama dengan
x = 56 x = 56.3 x = 56 x = apple
y = 78 y = 56.02 y = 56 y = apple
print(x > y) print(x >= y) print(x == y) print(x != y)
x = 56 x = 19 x = 56 x = apple Cuba
y = 78 y = 91 y = 56 y = Apple Lorekkan petak
print(x is 56) print(x <= y) print(x = y) print(x == y)
yang akan
x = 56 x = 1 x = 2 x = 91 memaparkan
y = 78 y = apple y = 4 y = 91.2 “True”
print(y < x) print(x == y) print(x == (y*2)) print(x = y)
x = 56 x = 1.2 x = 23 x = 0
y = 78 y = 3.2 y = 12 y = 3
print(x is y) print(x != y) print(x != y) print(x < 5)
© 2017 Arus Education Sdn Bhd.
Struktur Kawalan Pilihan 7
Struktur Kawalan Pilihan IF
Struktur kawalan IF dalam Arduino adalah seperti
berikut:
if (SYARAT){
PERNYATAAN ATUR CARA JIKA BENAR
} else {
PERNYATAAN ATUR CARA LAIN
}
Atur cara penuh untuk carta alir di sebelah kiri
adalah seperti berikut:
★ Cabaran D ★
Bil Tugasan
☑
D1 Hidupkan LED jika gelap
D2 Hidupkan 3 LED jika nilai
potentiometer adalah lebih
daripada 800. Kalau tidak,
hidupkan 1 LED
Operator Logikal
Operator logical membenarkan gabungan syarat Boolean. Operator-operator yang lazim digunakan adalah AND OR
dan NOT
1) Operator AND (&&) digunakan apabila dua atau lebih syarat perlu digabungkan dan semua syarat perlu benar.
2) Operator OR (||) digunakan apabila dua atau lebih syarat perlu digabungkan dan hanya salah satu syarat Boolean
perlu benar
3) Operator NOT (!) menukarkan nilai Boolean kepada lawannya.
if(sapu lantai && bersih lantai){
Boleh keluar main
}
AND Sapu lantai
True
Bersih tandas
True
Keluar main
© 2017 Arus Education Sdn Bhd.
Struktur Kawalan Pilihan 8
if(set alarm || pesan ibu){
Boleh bangun
}
OR
Set alarm Pesan Ibu Boleh bangun
True True
if(! tidur dalam kelas){
Boleh lulus peperiksaan
} Tidur dalam kelas Lulus peperiksaan
NOT True
Kod berikut menunjukkan cara
untuk menghasilkan 4 OUTPUT
yang berlainan berdasarkan
INPUT yang diterima
Cuba
X = 25 Bulatkan pernyataan
Y = 25 yang akan memaparkan
“True”
Z = 50
!(X+Y-Z == 0) && false
X == 5 && X == Y
!(!(X == Y))
X != 5 && X == Y
!(!(X == Y) && X == Y)
★ Cabaran E ★
X != 5 || X == Y Bil Tugasan
☑
!((X+Y) == Z)
E1 Semakin gelap, semakin
!(X == Z) banyak LED dinyalakan
(X+Y) >= X && !(Z == X) E2 Bilangan LED yang dinyala
boleh dikawal dengan
!(X == Z) && (X == Y) memutar perintang boleh
laras
((X==Y) && ((Z-X) == Y)) || !((X+Y) == Z)
© 2017 Arus Education Sdn Bhd.