Audio Waveform

Lab 3: Audio Waveform Display


1. โครงสร้างภาพรวมของ Lab

Why? - ทำไมต้องเรียนรู้เรื่องนี้

  • Audio Visualization: แสดง waveform ของเสียงที่กำลังเล่น

  • I2S Interface: ใช้งาน Digital Audio (I2S DAC)

  • Test Tone Generation: สร้างเสียงทดสอบ (440 Hz = A4)

What? - จะได้เรียนรู้อะไร

  1. Audio API: aic_audio_init(), aic_audio_play(), aic_audio_stop()

  2. Tone Generation: สร้างเสียง sine wave ที่ความถี่ต่างๆ

  3. Volume Control: ปรับ amplitude ของสัญญาณเสียง

  4. Play/Pause: ควบคุมการเล่นเสียง

How? - จะทำอย่างไร

  1. Generate sine wave ที่ความถี่ต้องการ

  2. เล่นเสียงผ่าน I2S DAC

  3. แสดง waveform บน Chart

  4. ควบคุม Play/Pause และ Volume


2. ฟังก์ชันสำคัญ

2.1 Audio API

Function
Description

aic_audio_init(sample_rate)

Initialize I2S audio

aic_audio_play(buffer, count)

Play samples

aic_audio_stop()

Stop playback


3. Code Example

3.1 Main Code


4. องค์ความรู้และเทคนิค

4.1 Sample Rate Selection

4.2 Buffer Size


6. แบบฝึกหัด

Exercise 1: Note Buttons

สร้างปุ่ม C, D, E, F, G, A, B สำหรับเล่นโน้ตดนตรี

Exercise 2: Dual Tone

สร้างเสียง 2 ความถี่พร้อมกัน (DTMF style)


7. References


Previous Lab: Lab 2: Noise Generator Next Lab: Lab 4: Mic Visualizer

Last updated

Was this helpful?