JX Wave Generator
สังเคราะห์ฟิสิกส์ AC ที่แท้จริง: JX Wave Generator
Arduino จะส่งสัญญาณ Digital DC ที่แน่นอน คือ 0 Volts หรือ 5 Volts โดยพื้นฐานแล้ว Arduino ไม่สามารถส่งออก "Sine Wave" (รูปแบบ AC) ที่ราบรื่นได้โดยตรงจากขา Pin ของมัน โปรเจกต์ JX Wave Generator นี้จะบังคับให้คุณสร้างวงจร "Analog" ทั้งหมดจากภายนอก! คุณจะใช้ C++ binary arrays ดิบเพื่อดันแรงดันไฟฟ้าจำนวนมากผ่านกำแพงตัวต้านทานทางกายภาพที่บัดกรีเอง หรือใช้การเชื่อมต่อ SPI ขั้นสูงกับชิป Synthesizer AD9833 โดยเฉพาะ เพื่อสร้างกราฟคณิตศาสตร์แบบ Sine, Triangle และ Square ได้อย่างสมบูรณ์แบบ

การสร้าง Analog Out (R-2R Ladder Topology)
ในการสร้างกราฟ Sine Curve ทางกายภาพที่ลาดชันจาก 0V ไปยัง 5V ได้อย่างราบรื่น คุณต้องมี Digital-to-Analog (DAC) buffer ภายนอก
- ระบบ 8-bit หมายความว่าเราต้องใช้ Digital Arduino Pins 8 Pin พอดี (
D0 ถึง D7) - เราจัดเรียง Resistor จำนวนมากในรูปแบบสายโซ่ทางคณิตศาสตร์บน breadboard (R-2R Ladder)
- ฟิสิกส์ของ Resistor จะแยก logic 5V ออก
D7ให้2.5VD6ให้1.25VD0ให้0.019V - C++ Array Matrix: โปรแกรมเมอร์จะคำนวณ Sine-Wave array ทางคณิตศาสตร์ทั้งหมดล่วงหน้า ซึ่งประกอบด้วย 256 จุดข้อมูล!
byte sineArray[256] = {128, 131, 134, ..., 255, ..., 128, ..., 0, ...}; - The Register Barrage: คุณไม่สามารถใช้
digitalWrite()8 ครั้งได้ คุณต้องส่งข้อมูลไปยัง 8 Pin พร้อมกันทั้งหมดอย่างรวดเร็ว!PORTD = sineArray[i];(ส่งออกรูปคลื่นแรงดันไฟฟ้าทางคณิตศาสตร์ที่แน่นอนไปยัง resistor ladder!)
การส่งสัญญาณไปยังฮาร์ดแวร์เฉพาะ (AD9833 SPI)
แทนที่จะสร้างกำแพง Resistor ขนาดใหญ่ สถาปัตยกรรมขั้นสูงจะใช้ AD9833 DDS Waveform Generator IC
- Arduino เชื่อมต่อผ่าน SPI Bus ที่รวดเร็วมาก (
MISO, MOSI, SCK) - เพียงแค่ส่งคำสั่ง SPI:
Select Sine Wave Output! Generate 1000Hz! - ชิป AD9833 ขนาดเล็กนี้จะสร้างกราฟ Sine wave ที่สะอาดไร้ที่ติ และสมบูรณ์แบบทางคณิตศาสตร์ ซึ่งคุณสามารถเสียบเข้ากับ Oscilloscope ฮาร์ดแวร์ระดับมืออาชีพราคา 2000 เหรียญได้โดยตรง!
ข้อกำหนดของ Wave Synthesizer
- Arduino Uno/Nano (สำหรับการแฮก
PORTDhardware register โดยตรง หรือ SPI ที่รวดเร็ว!) - AD9833 DDS Signal Generator Module (แนะนำเป็นอย่างยิ่งมากกว่า R-2R ladder เนื่องจากสามารถสังเคราะห์ความถี่ได้สูงถึง 12.5MHz!)
- Rotary Encoder Push-Button Menu เพื่อหมุนปรับความถี่ที่กำหนดเองบน I2C OLED display
- Digital Oscilloscope (สำคัญอย่างยิ่งสำหรับการวัดสายเอาต์พุตโดยตรง เพื่อพิสูจน์ว่าคุณสร้างสัญญาณ
Sineที่สมบูรณ์แบบแล้ว!)