
สารบัญ:
2025 ผู้เขียน: John Day | [email protected]. แก้ไขล่าสุด: 2025-01-23 15:12


เปียโนสามปุ่มเป็นโครงการสำหรับผู้เริ่มต้นที่มีประสบการณ์ในการใช้ Arduino
ฉันถูกกวาดล้างโดยไม่ได้ตั้งใจในการพยายามสร้างสิ่งนี้ในขณะที่เล่นกับ Piezo Buzzer เป็นครั้งแรก มันดังมาก! ในการพยายามหาวิธีต่างๆ ในการทำให้เสียงกริ่งเงียบลงและลองใช้ความถี่ต่างๆ โดยใช้ฟังก์ชัน tone() และ noTone() ฉันรู้ว่ามันอาจจะสนุกที่จะลองผสม Piezo Buzzer กับส่วนประกอบโปรดอื่นๆ ของ Arduino ชุด: ปุ่มและโพเทนชิออมิเตอร์
วัสดุที่จำเป็น ได้แก่:
- 1 Arduino
- 1 เขียงหั่นขนม
- สาย USB 1 เส้น
- สายจัมเปอร์ (คละสี)
- 1 ตัวต้านทาน 330 กิโลโอห์ม
- 1 Piezo Buzzer
- 3 ปุ่มกด
- 1 โพเทนชิออมิเตอร์
ขั้นตอนที่ 1: Piezo Buzzer

ในการเริ่มต้น ให้ตั้งค่า piezo บนเขียงหั่นขนมของ Arduino ด้านหนึ่งของมัน (ด้านขาที่สั้นกว่า) ต้องวิ่งไปที่พื้น อีกด้านหนึ่ง (ด้านขายาว) ต้องเชื่อมต่อกับพินอินพุตดิจิตอล ฉันเลือกที่จะเชื่อมต่อกับ 8
ขั้นตอนที่ 2: กดปุ่ม


ต่อไปก็ถึงเวลาตั้งค่าปุ่มกด เช่นเดียวกับ Piezo ปุ่มกดจำเป็นต้องเชื่อมต่อกับกราวด์และพินอินพุตดิจิตอล
ขั้นตอนที่ 3: โพเทนชิออมิเตอร์


ขั้นตอนสุดท้ายในการสร้างทางกายภาพคือโพเทนชิออมิเตอร์ โพเทนชิโอมิเตอร์มีหลายรูปแบบ เราจะใช้โพเทนชิออมิเตอร์เป็นตัวแบ่งแรงดันไฟ ดังนั้นขาทั้งสามของมันจะต้องเชื่อมต่อกัน
ขาขวา: แถบลบ (พื้น)
ขากลาง: เข็มอนาล็อก 0
ขาซ้าย: แถบบวก
ขั้นตอนที่ 4: รหัส
ขณะเขียนโค้ดสำหรับโปรเจ็กต์นี้ ฉันได้อ้างอิงข้อมูลเกี่ยวกับฟังก์ชันบางประเภท:
โทน()
noTone() (ฉันไม่ได้ใช้อันนี้ ฉันตั้งค่าความถี่เป็น "0" แทน)
แผนที่()
ข้อมูลอ้างอิงที่ยอดเยี่ยมสำหรับผู้ใช้ Piezo Buzzers เป็นครั้งแรกมีอยู่ที่นี่ แม้ว่าแนวคิดในการเปลี่ยนเสียงของ Piezo Buzzer จะดูเรียบง่าย แต่ในตอนแรกอาจดูล้นหลามไปหน่อย!
ฟังก์ชัน tone() สามารถแบ่งออกเป็นสามส่วน:
- พิน (พินที่เชื่อมต่อออดเพียโซ)
- ความถี่ (ความถี่ของเสียงเป็นเฮิรตซ์)
- Duration (ระยะเวลาของเสียงที่ระบุเป็นมิลลิวินาที)
โดยพื้นฐานแล้วจะมีลักษณะดังนี้: เสียง (พิน, ความถี่, ระยะเวลา) องค์ประกอบที่สาม (ระยะเวลา) เป็นทางเลือก ในขณะที่อีกสององค์ประกอบจำเป็นสำหรับการทำงานของออด ส่วนประกอบ "ความถี่" ของฟังก์ชันโทนเสียงเป็นสิ่งที่สามารถคิดได้ว่าเป็น "เสียง" ที่กริ่งสร้างจากเสียงกริ่ง
คุณจะสังเกตเห็นว่าโค้ดนี้มีโค้ดอีกสองบิต มีคำสั่ง if/else บางอย่างที่ตั้งค่าเพื่อบอก Arduino ว่าต้องทำอย่างไรหากกดปุ่มต่างๆ กัน รวมถึงตั้งค่าด้วย "frequency = 0" ในสถานการณ์ที่ไม่มีการกดปุ่มใดๆ ภายในคำสั่ง if/else ฟังก์ชัน map() จะใช้เพื่อจับคู่มาตราส่วนของโพเทนชิออมิเตอร์กับชุดความถี่ สิ่งเหล่านี้สามารถเปลี่ยนแปลงได้! เล่นกับค่าความถี่ต่างๆ เพื่อดูว่าคุณจะได้เสียงใดจากเพียโซ
ตรวจสอบรหัสที่ฉันใช้สร้างเปียโนสามปุ่มที่นี่หรือตรวจสอบด้านล่าง
int piezoPin = 8; // ตั้งค่าพินที่เชื่อมต่อกับ Piezo
int เซ็นเซอร์พิน = 0; // ตั้งค่าพินที่เชื่อมต่อกับเซ็นเซอร์ (โพเทนชิออมิเตอร์) int sensorValue = 0;
ปุ่ม int1 = 5; // ตั้งค่าพินอินพุตที่เชื่อมต่อกับปุ่มต่างๆ
ปุ่ม int2 = 4; ปุ่ม int3 = 3;
ความถี่ int = 0;
const int delayTime = 500; //ตั้งค่าคงที่สำหรับตัวแปรเวลาหน่วงในฟังก์ชัน tone()
การตั้งค่าเป็นโมฆะ () {
โหมดพิน (button1, INPUT_PULLUP); โหมดพิน (button2, INPUT_PULLUP); pinMode (ปุ่ม 3, INPUT_PULLUP); }
วงเป็นโมฆะ () {
sensorValue = analogRead (เซ็นเซอร์พิน); // อ่านเซ็นเซอร์ //จับคู่ค่าต่างๆ ของโพเทนชิออมิเตอร์กับชุดความถี่สำหรับปุ่มทั้งสามแต่ละปุ่ม ถ้า (digitalRead (button1) == LOW) { ความถี่ = แผนที่ (sensorValue, 0, 1023, 400, 499); } else if (digitalRead (button2) == LOW) { frequency = map (sensorValue, 0, 1023, 500, 599); } else if (digitalRead (button3) == LOW) { frequency = map (sensorValue, 0, 1023, 600, 699); } อื่น ๆ { ความถี่ = 0; } เสียง (piezoPin, ความถี่, delayTime); //ตั้งค่าฟังก์ชัน tone() ด้วยตัวแปร }
แนะนำ:
ความพยายามของฉันที่ Arduino Button Buzzer Melody: 11 ขั้นตอน

ความพยายามของฉันที่ Arduino Button Buzzer Melody: ในบทช่วยสอนนี้ ฉันจะแสดงให้คุณเห็นว่าปุ่มสามารถเริ่มเมโลดี้ได้อย่างไร ในช่วงปีการศึกษา หลายชีวิตของเราดำเนินไปตามเสียงระฆังหรือเสียงเตือนที่บอกให้เรารู้ว่าจะต้องจากไปเมื่อไรหรือถึงเวลาต้องไป พวกเราส่วนใหญ่ไม่ค่อยหยุดและคิดว่าสิ่งเหล่านี้แตกต่างกันอย่างไร
Arduino LED Button Pad ที่ขับเคลื่อนการประมวลผลแอนิเมชั่น: 36 ขั้นตอน (พร้อมรูปภาพ)

Arduino LED Button Pad ที่ขับเคลื่อนการประมวลผลแอนิเมชั่น: WhatThis ปุ่มแพดทำขึ้นโดยใช้ PCB และส่วนประกอบอื่น ๆ ที่ผลิตโดย Sparkfun ขับเคลื่อนโดย Arduino Mega แต่ละปุ่มนั้นดี นุ่ม และน่ากด และมีไฟ LED RGB อยู่ข้างใน! ฉันเคยใช้มันเพื่อควบคุมแอนิเมชั่น ฉัน
คำสั่ง AT สำหรับโมดูลบลูทูธ (HC-05 W/ EN Pin and BUTTON) โดยใช้บอร์ด Arduino!: 5 ขั้นตอน

คำสั่ง AT สำหรับโมดูล Bluetooth (HC-05 W/ EN Pin และ BUTTON) การใช้บอร์ด Arduino!: โดย Jay Amiel AjocGensan PH คำแนะนำนี้จะช่วยให้คุณเริ่มต้นใช้งานโมดูลบลูทูธ HC05 ได้ เมื่อสิ้นสุดคำแนะนำนี้ คุณจะได้เรียนรู้ เกี่ยวกับการส่งคำสั่ง AT ไปยังโมดูลเพื่อกำหนดค่า/แก้ไข (ชื่อ, รหัสผ่าน, baud ra
Three Push ON – Push OFF Latching Circuits: 3 ขั้นตอน

Three Push ON – Push OFF Latching Circuits: flip-flop หรือ latch เป็นวงจรที่มีสถานะเสถียรสองสถานะและสามารถใช้เพื่อเก็บข้อมูลสถานะได้ วงจรสามารถเปลี่ยนแปลงสถานะได้โดยใช้สัญญาณ (ในกรณีนี้ โดยการกดปุ่ม) ในที่นี้ ผมจะแสดงให้คุณเห็นสามวิธีในการ m
Sun Three Button RGB Light Doodler Mouse.: 11 ขั้นตอน (พร้อมรูปภาพ)

Sun Three Button RGB Light Doodler Mouse.: ฉันได้พบกับ Lori Stotko และ Stuart Nafey http://lightdoodles.com/ ในปีนี้ Makers Faire Auditions พวกเขามีปากกา Light สุดเจ๋งที่พวกเขาทำขึ้นเพื่อวาดภาพ ฉันตัดสินใจทำบางอย่างเมื่อกลับถึงบ้าน และจำหนูซันสามปุ่มที่ฉัน