Pengaturcaraan : C Programming
Berdasarkan :
• DSKP RBT Ting. 2 Terbitan April 2017
• Ardu 1001 Introduction to Arduino (Special Edition for RBT) Terbitan Oktober 2017
oleh En. Dafizal Derawi (Drabot Community).
• Panduan Guru Maker Uno/Arduino terbitan Januari 2018 oleh Cytron
Technologies/Arus Academy.
NOTA
Slide ini dibangunkan hanya untuk keperluan
MINIMA bagi mencapai Standard Pembelajaran
(SP) dan Tahap Penilaian (TP) sahaja.
Mikropengawal Mikropemproses
Arduino Nano
(ATmega328P)
Arduino Uno
(ATmega328P)
Mikropengawal
Mikropengawal
TIMER /
Mengawal sistem berdasarkan masa
COUNTER
Bagaimana mikropengawal berfungsi?
PROSES
(CPU, RAM/ROM,
OUTPUT
INPUT PORT TIMER/COUNTER,
PORT
ADC, DLL)
Bagaimana mikropengawal berfungsi – Analogi manusia
• Arahan Coach
• Pengalaman
• Naluri
• Emosi
Bagaimana mikropengawal berfungsi?
• Arahan
pengaturcaraan
PERANTI INPUT PERANTI INPUT
(Digital) (Analog)
Penderia Suhu
Penderia Gerakan Penderia Cahaya
PROSES
Memproses
isyarat daripada
input dan
memberi arahan
kepada output.
PERANTI
OUTPUT
GEGANTI
PEMBAZ
LED
INJAP
SOLENOID
Susun atur papan mikropengawal
Arduino Uno
Arduino Kenali papan mikropengawal anda : Arduino Uno
Arduino Uno
Arduino Kenali papan mikropengawal anda : Arduino Uno
Pin Digital
Input / Output
PWM
Ground
Arduino Uno
Arduino Kenali papan mikropengawal anda : Arduino Uno
Pin Digital
Input / Output
PWM
Ground
Arduino Uno
Arduino Kenali papan mikropengawal anda : Arduino Uno
Pin Digital
Input / Output
PWM
Ground
Arduino Uno
Arduino Kenali papan mikropengawal anda : Arduino Uno
Pin Digital
Input / Output
PWM
Ground
Arduino Uno
Arduino Kenali papan mikropengawal anda : Arduino Uno
Pin Digital
Input / Output
PWM
Ground (GND)
Arduino Uno
Arduino Kenali papan mikropengawal anda : Arduino Uno
Pin Digital
Input / Output
PWM
Ground
Arduino Uno
2.4.3 • Menghasilkan lakaran reka bentuk litar elektronik
SKIP
2.4.4 • Membina litar simulasi yang berfungsi dengan
perisian khas
1. Litar bergambar
2. Litar Skematik
3. Rajah blok
2.4.1 2.4.2 2.4.3 2.4.4 2.4.5 2.4.6 2.4.7 2.4.8
• Menghasilkan lakaran reka bentuk litar elektronik
Lakaran Sambungan Pengaturcaraan Pengujian
LED + -
PERINTANG
SUIS
TEKAN
Kekutuban
pada LED
BUZER
Lakaran Sambungan Pengaturcaraan Pengujian
220
2. Buat sambungan kaki
Anod LED pada pin itu
**Perintang perlu
disambung pada kaki
anod LED
2. Sambung
kaki anod
LED pada
perintang
3. Sambung
pin D13 pada
perintang
4. Sambungkan
pin anod LED
ke GND
STEP 3
Pengaturcaraan
Lakaran Sambungan Pengaturcaraan Pengujian
1.Sambung mikropengawal
pada PC
2.Semak sambungan (port)
pada device manager
3. Buka Software IDE
4.TETAPKAN BOARD :
Tools>Board>Klik pada jenis
mikropengawal anda
5.TETAPKAN PORT :
Tools>Port>Pilih port
dsambungan anda (Berbeza
bagi setiap port USB)
Lakaran Sambungan Pengaturcaraan Pengujian
2 BAHAGIAN UTAMA
PENGATURCARAAN :
MULA
1. Fungsi setup (void setup()
- Pengisytiharan pin (sama ada input atau Isytihar Pin
output) (void setup)
1. PENGISYTIHARAN PIN
pinMode(_____ , _____ );
Contoh :
pinMode( 11 , INPUT );
pinMode( 2 , OUTPUT );
Lakaran Sambungan Pengaturcaraan Pengujian
arahanFungsi(_____ , _____ );
Nombor Pin
Isyarat
Contoh :
digitalWrite • HIGH (Keluaran 5V)
delay • LOW (Keluaran 0V)
Contoh Pengaturcaraan
MULA
}
LED ‘ON’
2. Penetapan arahan
SELA MASA 2
SAAT void loop() {
digitalWrite(13 , HIGH);
LED ‘OFF’
delay(2000);
SELA MASA 2
SAAT
digitalWrite(13 , LOW);
delay(2000);
}
Lakaran Sambungan Pengaturcaraan Pengujian
MULA
LED 1 ‘ON’
SELA MASA 2
SAAT
LED1 ‘OFF’
SELA MASA 2
SAAT
STEP 4
Pengujian
Lakaran Sambungan Pengaturcaraan Pengujian
Loacation : Desktop
Folder : Latihan Arduino
File name : Projek 1 (Led berkelip)
Lakaran Sambungan Pengaturcaraan Pengujian
Projek 1 :
The Challenge!
Lakaran Sambungan Pengaturcaraan Pengujian
STEP 2 :
Buat sambungan LED pada litar
mikropengawal anda berdasarkan
lakaran yang telah dibuat.
Sambungan
PROJEK 2 – Traffic Light STEP
2
1. Letakkan
LED pada
breadboard
2. Sambungkan
perintang
pada kaki
anod LED
3. Sambungkan
perintang
pada pin
output
4. Lengkapkan
litar dengan
sambungan
GND
Pengaturcaraan
STEP
PROJEK 2 – Traffic Light 3
MULA
PROJEK 2 : Tulis pengaturcaraan
bagi litar pengelip 3 LED :
LED1 ON
1. Led1 ON selama 1 saat dan OFF
DELAY 1 SAAT
2. Led2 ON selama 1 saat dan OFF
LED 1 OFF
3. Led3 ON selama 1 saat dan OFF LED 2 ON
4. Proses berulang DELAY 1 SAAT
LED 2 OFF
LED 3 ON
DELAY 1 SAAT
LED3 OFF
Pengaturcaraan
PROJEK 2 – Traffic Light STEP
3
MULA
LED1 ON
DELAY 1 SAAT
LED 1 OFF
LED 2 ON
DELAY 1 SAAT
LED 2 OFF
LED 3 ON
DELAY 1 SAAT
LED3 OFF
Pengujian
PROJEK 2 – Traffic Light STEP
4
Projek 2 :
The Challenge!
TAHNIAH!
SKIP
2.4.4 • Membina litar simulasi yang berfungsi dengan
perisian khas
SKIP
2.4.4 • Membina litar simulasi yang berfungsi dengan
perisian khas
1. Sambungkan PB pada
Push Button
sumber 5V
2. Sambungkan PB pada
perintang dan GND
3. Sambungkan PB pada
mana-mana pin
DIGITAL
LED
4. Sambungkan LED pada
perintangdan mana-
mana pin DIGITAL
5. Lengkapkan LED
dengan sambungan ke
GND
Push Button
LED
D2 : Digital Output
STEP 2 :
Buat sambungan LED & PB pada litar
mikropengawal anda berdasarkan
lakaran yang telah dibuat.
PROJEK 3 – PB & LED Sambungan STEP
2
PROJEK 3 – PB & LED
STEP
3
3. Proses berulang
STEP PROJEK 3 – PB & LED
‘Pengisytiharan setempat’
3 (untuk input sahaja)
int PB = digitalRead(11);
MULA Jika YA
if ( PB == HIGH )
YA PB (D11)
DITEKAN ? {
LED (D2) ON
digitalWrite(2,HIGH)
TIDAK
}
LED (D2) OFF
Jika TIDAK
else
{
digitalWrite(2,LOW)
}
*Sambungan menggunakan kaedah ACTIVE HIGH
STEP PROJEK 3 – PB & LED
void setup() {
3 pinMode(11,INPUT);
pinMode(2,OUTPUT);
}
MULA
void loop() {
int PB = digitalRead(11);
YA PB
If (PB == HIGH)
DITEKAN ?
LED (D2) ON
{
TIDAK
digitalWrite(2,HIGH);
LED (D2) OFF
}
else
{
digitalWrite(2,LOW);
}
}
*Sambungan menggunakan kaedah ACTIVE HIGH
PROJEK 3 – PB & LED STEP
4
Berfungsi
2 Suis ditekan LED ON
Tidak berfungsi
Projek 4 :
(Tambahan)
PROJEK 4 – Modul PBD
3. Proses berulang
PROJEK 4 – Modul PBD STEP
1
Push Button
LED 1
LED 2
PROJEK 4 – Modul PBD Sambungan STEP
2
STEP 2 :
Buat sambungan LED & PB pada litar
mikropengawal anda berdasarkan
lakaran yang telah dibuat.
PROJEK 4 – Modul PBD Sambungan STEP
2
STEP PROJEK 4 – Modul PBD void setup() {
pinMode(11,INPUT);
3 pinMode(6,OUTPUT);
pinMode(2,OUTPUT);
}
MULA
void loop() {
YA PB int PB = digitalRead(11);
DITEKAN ? If (PB == HIGH)
{
TIDAK digitalWrite(2,HIGH);
LED2 (D2) ON
LED1 (D6) ON digitalWrite(6,LOW);
}
LED1 (D6) OFF
LED2 (D2) OFF else
{
digitalWrite(2,LOW);
digitalWrite(6,HIGH);
}
}
STEP
4
ARAHAN :
Upload pengaturcaraan anda pada mikropengawal
dan buat ujian kefungsian.
LED 1 ON Berfungsi
2 Suis ditekan
LED 2 OFF Tidak berfungsi
Cadangan penambahbaikan?
PROJEK 4 – Challenge!
3. Proses berulang
2.4.4
https://youtu.be/jLHGtPi5BXE
Projek Cadangan Lain :
3. Proses berulang
PROJEK 5 - LDR STEP
1
A0 : Analog Input
D8 : Digital Output
PROJEK 5 - LDR Sambungan STEP
2
STEP 2 :
Buat sambungan LED & LDR pada
litar mikropengawal anda
berdasarkan lakaran yang telah
dibuat.
PROJEK 5 - LDR Sambungan STEP
2
STEP PROJEK 5 - LDR
3
Berapa nilai
MULA bacaan bagi
‘cahaya
YA Cahaya
Malap?
malap’?
TIDAK
Arahan untuk
memulakan
komunikasi selari
LDR – Bacaan
analog diambil
pada pin A0
1. Upload pada
board
2. Sekarang cuba
letakkan tangan
anda di atas LDR,
berapakah
nilainya?
STEP PROJEK 5 - LDR
3
Berapa nilai
MULA bacaan bagi
‘cahaya
YA Cahaya
Malap?
malap’?
TIDAK
MULA
Jika YA
Jika TIDAK
else
{
digitalWrite(8,LOW)
}
*Sambungan menggunakan kaedah ACTIVE HIGH
STEP PROJEK 5 - LDR void setup() {
pinMode(A0,INPUT);
3 pinMode(8,OUTPUT);
Serial.begin(9600);
}
MULA
void loop() {
else
{
digitalWrite(8,LOW);
}
Serial.println(LDR);
}
STEP
4
ARAHAN :
Upload pengaturcaraan anda pada mikropengawal
dan buat ujian kefungsian.