Noise Generator

Lab 2: Noise Generator


1. ΰΉ‚ΰΈ„ΰΈ£ΰΈ‡ΰΈͺΰΈ£ΰΉ‰ΰΈ²ΰΈ‡ΰΈ ΰΈ²ΰΈžΰΈ£ΰΈ§ΰΈ‘ΰΈ‚ΰΈ­ΰΈ‡ Lab

Why? - ΰΈ—ΰΈ³ΰΉ„ΰΈ‘ΰΈ•ΰΉ‰ΰΈ­ΰΈ‡ΰΉ€ΰΈ£ΰΈ΅ΰΈ’ΰΈ™ΰΈ£ΰΈΉΰΉ‰ΰΉ€ΰΈ£ΰΈ·ΰΉˆΰΈ­ΰΈ‡ΰΈ™ΰΈ΅ΰΉ‰

  • Testing: ΰΉƒΰΈŠΰΉ‰ noise ΰΈͺΰΈ³ΰΈ«ΰΈ£ΰΈ±ΰΈšΰΈ—ΰΈ”ΰΈͺอบ filter แΰΈ₯ΰΈ° signal processing

  • Random Data: ΰΉ€ΰΈ‚ΰΉ‰ΰΈ²ΰΉƒΰΈˆΰΈΰΈ²ΰΈ£ΰΈͺΰΈ£ΰΉ‰ΰΈ²ΰΈ‡ΰΈ‚ΰΉ‰ΰΈ­ΰΈ‘ΰΈΉΰΈ₯ΰΈͺุ่ฑ

  • RMS Calculation: ΰΈ§ΰΈ±ΰΈ”ΰΈ„ΰΉˆΰΈ² RMS ΰΈ‚ΰΈ­ΰΈ‡ noise

What? - ΰΈˆΰΈ°ΰΉ„ΰΈ”ΰΉ‰ΰΉ€ΰΈ£ΰΈ΅ΰΈ’ΰΈ™ΰΈ£ΰΈΉΰΉ‰ΰΈ­ΰΈ°ΰΉ„ΰΈ£

  1. Noise Generation: aic_scope_generate_noise()

  2. Timer-based Update: ΰΈ­ΰΈ±ΰΈžΰΉ€ΰΈ”ΰΈ— noise ΰΉΰΈšΰΈšΰΈ•ΰΉˆΰΈ­ΰΉ€ΰΈ™ΰΈ·ΰΉˆΰΈ­ΰΈ‡

  3. RMS Measurement: aic_scope_calc_rms()

  4. Start/Stop Control: ΰΈ„ΰΈ§ΰΈšΰΈ„ΰΈΈΰΈ‘ΰΈΰΈ²ΰΈ£ generate

How? - ΰΈˆΰΈ°ΰΈ—ΰΈ³ΰΈ­ΰΈ’ΰΉˆΰΈ²ΰΈ‡ΰΉ„ΰΈ£

  1. ΰΈͺΰΈ£ΰΉ‰ΰΈ²ΰΈ‡ Chart แΰΈͺΰΈ”ΰΈ‡ noise

  2. ΰΉƒΰΈŠΰΉ‰ Timer ΰΈ­ΰΈ±ΰΈžΰΉ€ΰΈ”ΰΈ—ΰΈ‚ΰΉ‰ΰΈ­ΰΈ‘ΰΈΉΰΈ₯ทุก 100ms

  3. แΰΈͺΰΈ”ΰΈ‡ΰΈ„ΰΉˆΰΈ² RMS แบบ real-time

  4. ΰΉ€ΰΈžΰΈ΄ΰΉˆΰΈ‘ΰΈ›ΰΈΈΰΉˆΰΈ‘ Start/Stop


2. ΰΈ«ΰΈ₯ักการทำงานแΰΈ₯ΰΈ° Flowchart

2.1 White Noise Characteristics

2.2 RMS Calculation


3. ΰΈŸΰΈ±ΰΈ‡ΰΈΰΉŒΰΈŠΰΈ±ΰΈ™ΰΈͺำคัญ

3.1 Noise Generation

Parameter
Description

buffer

Output array

count

Number of samples

amplitude

Max amplitude (Β±amplitude)

3.2 RMS Calculation


4. Code Example

4.1 Global Variables

4.2 Timer Callback

4.3 Button Callback

4.4 Main Function


5. ΰΈ­ΰΈ‡ΰΈ„ΰΉŒΰΈ„ΰΈ§ΰΈ²ΰΈ‘ΰΈ£ΰΈΉΰΉ‰ΰΉΰΈ₯ΰΈ°ΰΉ€ΰΈ—ΰΈ„ΰΈ™ΰΈ΄ΰΈ„

5.1 Pseudo-Random Number Generation

5.2 Timer vs Manual Update

5.3 Start/Stop Pattern


6. ΰΉΰΈšΰΈšΰΈΰΈΆΰΈΰΈ«ΰΈ±ΰΈ”

Exercise 1: Peak-to-Peak Display

ΰΉ€ΰΈžΰΈ΄ΰΉˆΰΈ‘ΰΈΰΈ²ΰΈ£ΰΉΰΈͺΰΈ”ΰΈ‡ΰΈ„ΰΉˆΰΈ² Peak-to-Peak ΰΈ‚ΰΈ­ΰΈ‡ noise

Exercise 2: Amplitude Control

ΰΉ€ΰΈžΰΈ΄ΰΉˆΰΈ‘ Slider ΰΈ›ΰΈ£ΰΈ±ΰΈš amplitude ΰΈ‚ΰΈ­ΰΈ‡ noise (100-2000)


7. References


Previous Lab: Lab 1: Waveform Generator Next Lab: Lab 3: Audio Waveform

Last updated

Was this helpful?