Panduan
Pengaturcaraan
Mikropengawal
100% mengikuti kehendak DSKP Reka Bentuk Teknologi Tingkatan 2
Nama : ____________________________
Institusi : ____________________________
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 mikropengawal
2.4.5 Membuat penyambungan litar input dan litar output kepada 2.4-4 Menguji kefungsian litar yang menggunakan mikropengawal
mikropengawal 2.4-5 Membuat justifikasi kawalan atur cara input dan output bagi
2.4.6 Menulis pengaturcaraan mudah berdasarkan penyambungan litar input menyelesaikan masalah
dan litar output 2.4-6 Membina litar eletronik kawalan mikropengawal berfungsi
2.4.7 Membuat pengujian dan penilaian kefungsian litar elektronik
• 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
memorinya sehingga kod itu dipadam. Setiap kali mikropengawal
dihidupkan, mikropengawal itu akan melaksanakan kod di dalam
memorinya.
Langkah-langkah menulis aturcara Arduino
Jika terdapat masalah,
Nyatakan sama ada pin
pastikan setiap baris kod
Kenalpasti pin yang tersebut adalah pin INPUT Tuliskan aturcara dalam
mempunyai tanda ; dan
diguna dalam projek atau OUTPUT di bahagian bahagian LOOP
setiap symbol (), {}
SETUP
mempunyai pasangannya
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 mikropengawal
2.4.5 Membuat penyambungan litar input dan litar output kepada 2.4-4 Menguji kefungsian litar yang menggunakan mikropengawal
mikropengawal 2.4-5 Membuat justifikasi kawalan atur cara input dan output bagi
2.4.6 Menulis pengaturcaraan mudah berdasarkan penyambungan litar input menyelesaikan masalah
dan litar output 2.4-6 Membina litar eletronik kawalan mikropengawal berfungsi
2.4.7 Membuat pengujian dan penilaian kefungsian litar elektronik
Start Struktur kawalan jujukan merupakan kod aturcara yang
tidak mempunyai cabang. Biasanya ini adalah untuk
Turn on LED at Pin 13 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
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 mikropengawal
2.4.5 Membuat penyambungan litar input dan litar output kepada 2.4-4 Menguji kefungsian litar yang menggunakan mikropengawal
mikropengawal 2.4-5 Membuat justifikasi kawalan atur cara input dan output bagi
2.4.6 Menulis pengaturcaraan mudah berdasarkan penyambungan litar input menyelesaikan masalah
dan litar output 2.4-6 Membina litar eletronik kawalan mikropengawal berfungsi
2.4.7 Membuat pengujian dan penilaian kefungsian litar elektronik
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 bersambung Ini merupakan simbol skematik untuk Arduino
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 mikropengawal
2.4.5 Membuat penyambungan litar input dan litar output kepada 2.4-4 Menguji kefungsian litar yang menggunakan mikropengawal
mikropengawal 2.4-5 Membuat justifikasi kawalan atur cara input dan output bagi
2.4.6 Menulis pengaturcaraan mudah berdasarkan penyambungan litar input menyelesaikan masalah
dan litar output 2.4-6 Membina litar eletronik kawalan mikropengawal berfungsi
2.4.7 Membuat pengujian dan penilaian kefungsian litar elektronik
Lukiskan rajah skematik untuk sambungan 1 LED ke Lukiskan rajah skematik untuk sambungan 3 LED
pin 6 pada Arduino dan tuliskan aturcara untuk pada pin yang berlainan. Kelipkan LED tersebut
kelipkan LED di pin 6 bergilir-gilir
Kod Arahan Fungsi
tone( ___, ___, ___)
!one(___)
Lukiskan rajah skematik yang melibatkan sambungan buzzer ke pinLabelkan
8 frekuensi bagi notasi muzik di bawah
(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
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 mikropengawal
2.4.5 Membuat penyambungan litar input dan litar output kepada 2.4-4 Menguji kefungsian litar yang menggunakan mikropengawal
mikropengawal 2.4-5 Membuat justifikasi kawalan atur cara input dan output bagi
2.4.6 Menulis pengaturcaraan mudah berdasarkan penyambungan litar input menyelesaikan masalah
dan litar output 2.4-6 Membina litar eletronik kawalan mikropengawal berfungsi
2.4.7 Membuat pengujian dan penilaian kefungsian litar elektronik
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
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 mikropengawal
2.4.5 Membuat penyambungan litar input dan litar output kepada 2.4-4 Menguji kefungsian litar yang menggunakan mikropengawal
mikropengawal 2.4-5 Membuat justifikasi kawalan atur cara input dan output bagi
2.4.6 Menulis pengaturcaraan mudah berdasarkan penyambungan litar input menyelesaikan masalah
dan litar output 2.4-6 Membina litar eletronik kawalan mikropengawal berfungsi
2.4.7 Membuat pengujian dan penilaian kefungsian litar elektronik
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
y = 78
x = 19
y = 91
x = 56
y = 56
x = apple
y = Apple
Cuba
print(x is 56) print(x <= y) print(x = y) print(x == y) Lorekkan petak yang
akan memaparkan
x = 56 x = 1 x = 2 x = 91
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)
Struktur Kawalan Pilihan 7
Start Struktur Kawalan Pilihan IF
Struktur kawalan IF dalam Arduino adalah seperti berikut:
Read potentiometer
value, x if (SYARAT){
PERNYATAAN ATUR CARA JIKA BENAR
} else {
TRUE PERNYATAAN ATUR CARA LAIN
FALSE
Is X< 500 }
Atur cara penuh untuk carta alir di sebelah kiri adalah seperti
On LED at Pin 5 Off LED at Pin 5 berikut:
End
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
Pengetahuan Tambahan
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
}
Sapu lantai Bersih tandas Keluar main
AND True True
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
X = 25 Cuba
Bulatkan pernyataan yang akan
Y = 25 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
Bil Tugasan
X != 5 || X == Y
!((X+Y) == Z)
E1 Semakin gelap, semakin banyak
!(X == Z) LED dinyalakan
(X+Y) >= X && !(Z == X) E2 Bilangan LED yang dinyala boleh
dikawal dengan memutar
!(X == Z) && (X == Y) perintang boleh laras
((X==Y) && ((Z-X) == Y)) || !((X+Y) == Z)