[BASIC] 004 SOUND TONE BUZZER (เสียงดนตรี)
สวัสดีครับ สำหรับหัวข้อบทเรียนพื้นฐานบนบอร์ด HONEYLemon ที่ใช้งานผ่าน arduino library โดยเป็นการใช้งานเกี่ยวกับเสียง ซึ่งจะแบ่งฟังก์ชั่นที่เกี่ยวข้องออก 2 เป็นแบบคือ เล่นเสียงตามความถี่และหยุดการเล่นเสียงดนตรี
คำสั่งที่เกี่ยวข้อง lemon.tone() // เป็นการสั่งให้เล่นเสียงดนตรี lemon.noTone() // เป็นการสั่งให้หยุดเล่นเสียงดนตรี
1
lemon.tone(1000); // เป็นการสั่งให้เล่นความถี่ 1000 Hz โดยไม่มีการหยุด
2
lemon.tone(1000,500); // เป็นการสั่งให้เล่นความถี่ 1000 Hz เป็นเวลา 500 มิลลิวินาที ( 0.5 วินาที ) แล้วหยุดเล่นเสียงนั้น
3
4
lemon.noTone(); // เป็นการสั่งให้หยุดเล่นเสียงดนตรี
Copied!
ตัวอย่างการใช้คำสั่ง
1
lemon.tone(1000); // สั่งให้เล่นความถี่ 1000 Hz
2
delay(1000); // รอ 1000 มิลลิวินาที ( 1 วินาที ) (ขณะนี้เสียงยังดังอยู่)
3
lemon.noTone(500); // สั่งให้หยุดเล่นเสียง
Copied!
เพื่อให้กระชับในการเขียนโปรแกรมบนบอร์ด HONEYLemon ก็สามารถเขียนได้ดังนี้
1
lemon.tone(1000,500); //เป็นการสั่งให้เล่นความถี่ 1000 Hz เป็นระยะเวลา 500 มิลลิวินาที ( 0.5 วินาที ) แล้วจึงหยุดเล่นเสียงนั้น
Copied!
ตัวอย่าง source code
1
/*
2
Basic : การเขียนโปรแกรมกับการใช้งานเสียงดนตรีบนบอร์ดไมโครคอนโทรลเลอร์ HONEYLemon
3
*/
4
#include <HONEYLemon.h>
5
6
void setup()
7
{
8
lemon.begin(); // เรียกใช้งานฟังก์ชั่นเริ่มต้นของบอร์ด HONEYLemon
9
10
Serial.begin(115200); // เรียกใช้งาน Serial
11
lemon.debug(Serial); // ขอดู debug ของบอร์ด HONEYLemon ผ่าน Serial
12
}
13
14
void loop()
15
{
16
/*
17
tone(
18
1000, // ความถี่เสียง
19
100 // ระยะเวลาที่เล่น (มิลลิวินาที) (option)
20
);
21
22
noTone() // สั่งให้หยุดเล่นเสียงดนตรี
23
*/
24
lemon.tone(1000); // สั่งให้เล่นเสียงความถี่ 1000 Hz
25
delay(100); // รอ 100 มิลลิวินาที (0.1 วินาที)
26
27
lemon.noTone(); // สั่งให้หยุดเล่นเสียงดนตรี
28
delay(100); // รอ 100 มิลลิวินาที (0.1 วินาที)
29
30
lemon.tone(2000,500); // สั่งให้เล่นเสียงดนตรีความถี่ 2000 Hz เป็นเวลา 500 มิลลิวินาที ( 0.5 วินาที ) แล้วหยุดเล่นเสียงนั้น
31
delay(100); // รอ 1000 มิลลิวินาที (1 วินาที)
32
}
Copied!
Last modified 1yr ago
Copy link