2025 Tác giả: John Day | [email protected]. Sửa đổi lần cuối: 2025-01-13 06:58
Đây là những hướng dẫn để tạo bộ chỉnh guitar từ Arduino và một số thành phần khác. Với kiến thức cơ bản về điện tử và mã hóa, bạn sẽ có thể làm bộ chỉnh guitar này.
Điều đầu tiên bạn phải biết nguyên liệu là gì.
Vật liệu:
- 1 Arduino (Tôi đã sử dụng Arduino 1)
- 1 màn hình LCD (16x2)
- 1 chiết áp
- 1 Micrô điện tử
- 1 điện trở 250 Ohm
- Một số dây
-Bàn sắt
- 1 bánh Piezo
Bước 1: Hàn ghim
Điều đầu tiên bạn cần làm là hàn các chân vào màn hình LCD, tuy nhiên bạn phải đảm bảo rằng chúng được hàn đúng cách. Trong hình trên, nó cho thấy những chân nào sẽ được kết nối ở đâu. Chân GND phải được kết nối với một đầu cuối của chiết áp như trong sơ đồ Tinkercad. (LƯU Ý: Điều rất quan trọng là bạn phải kết nối các chân theo cách được hướng dẫn, nếu không bộ chỉnh sẽ không hoạt động.)
Bước 2: Kết nối mọi thứ
Sau khi hàn các dây vào màn hình LCD, bạn cần kết nối một số dây khác.
1.) Điều đầu tiên bạn cần làm là kết nối GND và 5V trên Arduino với breadboard cho phép nó có nguồn. Sau đó kết nối electret vào chân số 7 và GND.
2.) Sau đó kết nối piezo với breadboard cho GND và kết nối nó với chân số 6.
3.) Sau đó đi đến chiết áp, bạn kết nối đầu cuối 1 với dải dương trên bảng mạch và đầu cuối 2 với dải GND trên bảng mạch, sau đó bạn kết nối cần gạt nước với chân tương phản trên màn hình LCD.
Bước 3: Mã hóa
Khi bạn đã kết nối mọi thứ theo cách chính xác, bạn cần lập trình bộ dò sóng để nó thực sự hoạt động. Dưới đây là mã
// bao gồm mã thư viện: #include
// khởi tạo thư viện với số lượng các chân giao diện LiquidCrystal lcd (12, 11, 5, 4, 3, 2);
int A = 440;
int B = 494;
int C = 523;
int D = 587;
int E = 659;
int F = 699;
int G = 784;
int caoA = 880;
int buzzer = 8; int functionGenerator = A1;
void setup () {
// thiết lập số cột và số hàng của màn hình LCD:
lcd.begin (16, 2);
// In thông báo ra màn hình LCD.
lcd.print ("xin chào, thế giới!");
Serial.begin (9600);
// xóa mọi thứ trong màn hình LCD, sau đó đặt con trỏ, printt
lcd.setCursor (0, 1); }
void loop () {
Serial.println (analogRead (functionGenerator));
chậm trễ (50);
// đặt con trỏ thành cột 0, dòng 1
// (lưu ý: dòng 1 là hàng thứ hai, vì số đếm bắt đầu bằng 0):
if (analogRead (functionGenerator) == 450) {
lcd.clear ();
lcd.setCursor (8, 1);
âm báo (buzzer, 250);
lcd.print ("A");
chậm trễ (1000);
} else if (analogRead (functionGenerator) == 494) {
lcd.clear ();
lcd.setCursor (8, 1);
âm báo (buzzer, 250);
lcd.print ("B");
chậm trễ (1000);
} else if (analogRead (functionGenerator) == 523) {
lcd.clear ();
lcd.setCursor (8, 1);
âm báo (buzzer, 250);
lcd.print ("C");
chậm trễ (1000);
} else if (analogRead (functionGenerator) == 587) {
lcd.clear ();
lcd.setCursor (8, 1);
âm báo (buzzer, 250);
lcd.print ("D");
chậm trễ (1000);
} else if (analogRead (functionGenerator) == 659) {
lcd.clear ();
lcd.setCursor (8, 1);
âm báo (buzzer, 250);
lcd.print ("E");
chậm trễ (1000);
} else if (analogRead (functionGenerator) == 699) {
lcd.clear ();
lcd.setCursor (8, 1);
âm báo (buzzer, 250);
lcd.print ("F");
chậm trễ (1000);
} else if (analogRead (functionGenerator) == 784) {
lcd.clear ();
lcd.setCursor (8, 1);
âm báo (buzzer, 250);
lcd.print ("G");
chậm trễ (1000);
} else if (analogRead (functionGenerator) == 880) {
lcd.clear ();
lcd.setCursor (8, 1);
âm báo (buzzer, 250);
lcd.print ("A");
chậm trễ (1000);
} else if (analogRead (functionGenerator)> 400 && digitalRead (functionGenerator) <449) {
lcd.clear ();
lcd.setCursor (4, 1);
âm báo (buzzer, 250);
lcd.print ("A");
chậm trễ (1000);
} else if (analogRead (functionGenerator)> 451 && digitalRead (functionGenerator) <470) {
lcd.clear ();
lcd.setCursor (12, 1);
âm báo (buzzer, 250);
lcd.print ("A");
chậm trễ (1000);
} else if (analogRead (functionGenerator)> 471 && digitalRead (functionGenerator) <493) {
lcd.clear ();
lcd.setCursor (4, 1);
âm báo (buzzer, 250);
lcd.print ("B");
chậm trễ (1000);
} else if (analogRead (functionGenerator)> 495 && digitalRead (functionGenerator) <509) {
lcd.clear ();
lcd.setCursor (12, 1);
âm báo (buzzer, 250);
lcd.print ("B");
chậm trễ (1000);
} else if (analogRead (functionGenerator)> 509 && digitalRead (functionGenerator) <522) {
lcd.clear ();
lcd.setCursor (4, 1);
âm báo (buzzer, 250);
lcd.print ("C");
chậm trễ (1000);
} else if (analogRead (functionGenerator)> 524 && digitalRead (functionGenerator) <556) {
lcd.clear ();
lcd.setCursor (12, 1);
âm báo (buzzer, 250);
lcd.print ("C");
chậm trễ (1000);
} else if (analogRead (functionGenerator)> 557 && digitalRead (functionGenerator) <586) {
lcd.clear ();
lcd.setCursor (4, 1);
âm báo (buzzer, 250);
lcd.print ("D");
chậm trễ (1000);
} else if (analogRead (functionGenerator)> 588 && digitalRead (functionGenerator) <620) {
lcd.clear ();
lcd.setCursor (12, 1);
âm báo (buzzer, 250);
lcd.print ("D");
chậm trễ (1000);
} else if (analogRead (functionGenerator)> 621 && digitalRead (functionGenerator) <658) {
lcd.clear ();
lcd.setCursor (4, 1);
âm báo (buzzer, 250);
lcd.print ("E");
chậm trễ (1000);
} else if (analogRead (functionGenerator)> 660 && digitalRead (functionGenerator) <679) {
lcd.clear ();
lcd.setCursor (12, 1);
âm báo (buzzer, 250);
lcd.print ("E");
chậm trễ (1000);
} else if (analogRead (functionGenerator)> 680 && digitalRead (functionGenerator) <698) {
lcd.clear ();
lcd.setCursor (4, 1);
âm báo (buzzer, 250);
lcd.print ("F");
chậm trễ (1000);
} else if (analogRead (functionGenerator)> 700 && digitalRead (functionGenerator) <742) {
lcd.clear ();
lcd.setCursor (12, 1);
âm báo (buzzer, 250);
lcd.print ("F");
chậm trễ (1000);
} else if (analogRead (functionGenerator)> 743 && digitalRead (functionGenerator) <783) {
lcd.clear ();
lcd.setCursor (4, 1);
âm báo (buzzer, 250);
lcd.print ("G");
chậm trễ (1000);
} else if (analogRead (functionGenerator)> 785 && digitalRead (functionGenerator) <845) {
lcd.clear ();
lcd.setCursor (12, 1);
âm báo (buzzer, 250);
lcd.print ("G");
chậm trễ (1000);
} else if (analogRead (functionGenerator)> 846 && digitalRead (functionGenerator) <879) {
lcd.clear ();
lcd.setCursor (4, 1);
âm báo (buzzer, 250);
lcd.print ("A");
chậm trễ (1000); }
else {noTone (buzzer); } trễ (10); }
Bước 4: Kết nối nó với nguồn
Đối với bước cuối cùng, tất cả những gì bạn cần làm là tìm một nguồn điện và kết nối nó với Arduino, một nguồn bạn có là bạn có thể bắt đầu sử dụng bộ điều chỉnh.