12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455 |
- #define DACPIN 25
- #define SAMPLINGFREQUENCY 44100
- #define NUMBEROFSAMPLES SAMPLINGFREQUENCY * 1
- #define DAC_MAX_AMPLITUDE 127/4
- #define AUDIOBUFFERLENGTH NUMBEROFSAMPLES
- uint8_t AudioBuffer[AUDIOBUFFERLENGTH];
- void setup()
- {
- const float frequency = 440;
- const float amplitude = DAC_MAX_AMPLITUDE;
-
- for (int n = 0; n < NUMBEROFSAMPLES; n++)
- {
- int16_t sineWaveSignal = ( sin( 2 * PI * frequency / SAMPLINGFREQUENCY * n )) * amplitude;
- AudioBuffer[n] = sineWaveSignal+128;
- }
- }
- void loop()
- {
- uint32_t start = micros();
- for (int n = 0; n < NUMBEROFSAMPLES; n++)
- {
-
- while (start + ( 1000000UL / SAMPLINGFREQUENCY) > micros() );
- start = micros();
- dacWrite(DACPIN, AudioBuffer[n]);
- }
- delay(3000);
- }
|