Arduino งานโปรแกรมควบคุม Buzzer ครั้ง 7

Code

#include "LedControl.h"    // การอ่านไฟล์จากไดเร็กทอรี หรือโฟลเดอร์ที่กำหนดไว้
#define C4  262 //  ใช้เพื่อตั้งชื่อค่าคงที่
#define D4  294   
#define E4  330
#define F4  349
#define G4  392
#define A4  440
#define B4  494
#define C5  523
int melody[] = {C4,D4,E4,F4,G4,A4,B4,C5};  /ตัวแปรพื้นฐานที่เก็บตัวเลขโดยไม่มีจุดทศนิยม
float beats[] ={1,1,1,1,1,1,1,1};   // ตัวแปรชนิด floating-point หรือตัวแปรที่มีจุดทศนิยม
int buzzerpin = 11;
int timestop = 70;
LedControl lc=LedControl(8,10,9,1); 

void setup()  // ฟังก์ชั่นใช้ในการประกาศค่าเริ่มต้น
{
  lc.shutdown(0,false);  
  lc.setIntensity(0,5); 
  lc.clearDisplay(0);  // ล้างหน้าจอ lcd
  int dl = 500;
  pinMode(buzzerpin,OUTPUT); //การกำหนดหน้าที่ของขาว่าเป็นอินพุตหรือเอาต์พุต
  int numnote;
  numnote = sizeof(melody)/2;    
  for (int i=0;i<numnote;i++)     //คำสั่ง FOR เป็นคำสั่งกำหนดเงื่อนไขเป็นจำนวนครั้งที่จะทำตามชุดคำสั่งต่าง ๆ ภายใน loop เหมาะที่จะใช้กับงานประเภทที่ไม่มีการเปลี่ยนแปลง   
  {
    lc.setChar(0,7-i,'-',false);
    tone(buzzerpin, melody[i],dl*beats[i]); 
    delay(dl*beats[i]);
    digitalWrite(buzzerpin,HIGH);    //ทำหน้าที่เขียนค่า HIGH หรือ LOW ไปยังขาดิจิตอล
    delay(timestop);     // หน่วงเวลา
  }  
}
void loop()  // ฟังก์ชั่นใช้ในการเขียนโค้ดโปรแกรมการทำงานของArduinoเป็นฟังก์ชั่นการวนลูปไปเรื่อยๆ
{
}


ภาพจำลองการทำงานด้วยโปรแกรม Proteus



อธิบายการทำงานของโปรแกรม


มีเสียงเพลง โด เร มี ฟา ซอล ลา ที โด  เเล้ว เเสดงตัวอักษรบน  7segment

ความคิดเห็น

บทความที่ได้รับความนิยม