Cara Membuat Piano Menggunakan
Arduino Uno
Nama : Eka Surya Wijaya
Nim :
20111203001
Pembahasan :membuat piano menggunakan arduino
Tujuan : mengetahui membuat piano
Dasar Teori :
Uno Arduino adalah board berbasis
mikrokontroler pada ATmega328 .Board ini memiliki 14 digital input / output pin
(dimana 6 pin dapat digunakan sebagai output PWM), 6 input analog, 16 MHz
osilator kristal, koneksi USB, jack listrik tombol reset. Pin-pin ini berisi
semua yang diperlukan untuk mendukung mikrokontroler, hanya terhubung ke
komputer dengan kabel USB atau sumber tegangan bisa didapat dari adaptor AC-DC
atau baterai untuk.
Alat
dan Bahan :
# Laptop
#
Arduino uno R3
#
Speaker
# kabel wire
# ground
# button
# resistor
# software Proteus 7
# Software Arduino
Gambar Rangkaian :
Gambar 2.1 proteus 7
Gambar 2.2 arduino
Langkah
–langkah percobaan :
1.
Siapkan
alat dan bahan
2.
Buka
software proteus dan buat rangkain seperti gambar 1.1 di atas
3.
Buka
software arduino dan tulis listing.
//
Program Ringtone 1
int
speakerPin = 9; // kutup + buzzer atau speaker dipasang pada pin 9 Arduino
//
LAGU 2 (Twinkle twinkle)
int
length = 15; // ini panjang lagu
char
notes;
int
beats;
/*
char
notes[] = "ccggaagffeeddc "; // ini lagunya
int
beats[] = { 1, 1, 1, 1, 1, 1, 2, 1, 1, 1, 1, 1, 1, 2, 4 }; // ini ketukannya
/*
//LAGU
3 (do mi sol Do …Do sol mi do)
int
length = 8 ; // ini panjang lagu
char
notes[] = "cegCCgec"; // ini lagunya
int
beats[] = { 1, 1, 1, 4, 1, 1, 1, 4 }; // ini ketukannya
*/
int
tempo = 300;
void
playTone(int tone, int duration) {
for
(long i = 0; i < duration * 1000L; i += tone * 2) {
digitalWrite(speakerPin,
HIGH);
delayMicroseconds(tone);
digitalWrite(speakerPin,
LOW);
delayMicroseconds(tone);
}
}
void
playNote(char note, int duration) {
char
names[] = { 'c', 'd', 'e', 'f', 'g', 'a', 'b', 'C' };
int
tones[] = { 1915, 1700, 1519, 1432, 1275, 1136, 1014, 956 };
//
play the tone corresponding to the note name
for
(int i = 0; i < 8; i++) {
if
(names[i] == note) {
playTone(tones[i],
duration);
}
}
}
void
setup() {
pinMode(speakerPin,
OUTPUT);
}
void
loop() {
if(digitalRead(13)==HIGH)
{
notes='c';
beats=1;
playNote(notes,
beats* tempo);
}
if(digitalRead(12)==HIGH)
{
notes='d';
beats=1;
playNote(notes,
beats* tempo);
}
if(digitalRead(11)==HIGH)
{
notes='e';
beats=1;
playNote(notes,
beats* tempo);
}
if(digitalRead(10)==HIGH)
{
notes='f';
beats=1;
playNote(notes,
beats* tempo);
}
if(digitalRead(8)==HIGH)
{
notes='g';
beats=1;
playNote(notes,
beats* tempo);
}
if(digitalRead(7)==HIGH)
{
notes='a';
beats=1;
playNote(notes,
beats* tempo);
}
if(digitalRead(6)==HIGH)
{
notes='b';
beats=1;
playNote(notes,
beats* tempo);
}
if(digitalRead(5)==HIGH)
{
notes='C';
beats=3;
playNote(notes,
beats* tempo);
}
delay(tempo
/ 2);
}
4.
Verify lalu copy file berbentuk .hex (C:\Users\jaya\AppData\Local\Temp\build6086723775304429385.tmp\sketch_jan07a.cpp.hex
) lalu buka proteus lalu klik dua kali gambar Arduino uno R3 lalu copy file
.hex tersebut ke program file
5.
Klau
menggunakan rangkaian hardware upload saja ke hardwarenya ke arduino uno R3
6.
Lalu
tunggu dan liat hasilnya dan analisa kalau ada kesalahan.
7.
Sekian
Kesimpulan : dari percobaan di atas dapat saya simpulkan
bahwa pelajaran ini sangat bermanfaat untuk menambah wawasan membuat nada.
*Semua usaha tidak akan pernah sia-sia*