Yes, that's the price. I have like 3 of them before someone gets wise :)

Paul S.


-----Original Message-----
From: music-dsp-boun...@music.columbia.edu
[mailto:music-dsp-boun...@music.columbia.edu] On Behalf Of robert
bristow-johnson
Sent: Monday, April 09, 2012 12:17 PM
To: music-dsp@music.columbia.edu
Subject: Re: [music-dsp] OSC problem on STM32F4Discovery


i hadn't heard of this dev board before.  at
http://www.st.com/internet/evalboard/product/252419.jsp it says that the
single unit prices is US$14.9 .  is that right?  that's nearly free.

where do the software tools (the compiler/linker/loader/etc) come from?

regarding wavetable indexing, somewhere Julian must be converting float to
int, no?  i am still convinced that the correct way to implement it is with
pure integer arithmetic.  to implement a good NCO, you need a lot of bits in
the phase accumulator.  i might think that 32 would be enough.  if there are
256 points in the wavetable, then the top 8 bits go to indexing into the
wavetable and the bottom 24 bits are used for interpolation between points.
usually, for mid-quality synthesis, a 256-point wavetable oughta be good
enough, but you might want it a little bigger.  maybe 1024 points.  that
leaves 22 bits for the interpolation.  if you have enough points in the
wavetable, then linear interpolation oughta be good enough.

Julian, are are you willing to plop up more code?  if you want, i'll dig up
a snippet for how to do this without if statements and without
floating-point phase accumulator.  and with linear interpolation.  it's
pretty straight forward.

-- 

r b-j                  r...@audioimagination.com

"Imagination is more important than knowledge."





On 4/9/12 12:51 PM, Nigel Redmon wrote:
> Interesting...my STM32F4DISCOVERY just arrive Friday...intending to make a
wavetable oscillator on it, first thing...
>
> Are you writing the wavetable to a buffer, then pulling from that at the
sample rate? if so, what size?
>
>
>
> On Apr 9, 2012, at 6:28 AM, Julian Schmidt wrote:
>> Hello all,
>>
>> I'm trying to get an oscillator running on the STM32F4 discovery board.
>> I'm sending my audio with 44100Hz via I2S to the onboard codec.
>> However I'm experiencing strange problems.
>>
>> my code ist quite straight forward:
>>
>> phase += phaseInc(440); // calculate the phase increment for 440 hz 
>> and add it to phase if(phase>= TABLESIZE) phase -= TABLESIZE; return 
>> phase/TABLESIZE;
>>
>> this should give me a non bw limited saw from 0 to 1.f (I also tried 
>> it with an actual wavetable in use. a sine is played fine. but as 
>> soon as overtones are added i get the fluttering)
>>
>> My problem is that i get periodic amplitude modulations on the overtones
about 2-3 times a second.
>> the root frequency amplitude is fixed, but the higher the overtone
frequency, the more it's amplitude drops every now and then.
>> this screenshot illustrates the waveform. the upper waveform has some
ringing on the discontinuity and the lower has not.
>> http://i.imgur.com/JyuEr.png (this image is taken from an inverted 
>> saw wavetable. but the flutter is the same, no matter if i use a
bandlimited WT or output the phase counter directly) the waveform oscillates
between the upper and the lower image.
>>
>> the amplitude flutter from the overtones is also frequency dependent.
>> at 439 and 441 Hz its not really audible.
>>
>> so my tought is that is has to do with the wrap of the phase counter. but
i can't get my head around whats wrong.
>> any ideas where this change in overtone amplitude could come from?
>>
>> cheers,
>> julian
>>
--
dupswapdrop -- the music-dsp mailing list and website:
subscription info, FAQ, source code archive, list archive, book reviews, dsp
links http://music.columbia.edu/cmc/music-dsp
http://music.columbia.edu/mailman/listinfo/music-dsp

--
dupswapdrop -- the music-dsp mailing list and website:
subscription info, FAQ, source code archive, list archive, book reviews, dsp 
links
http://music.columbia.edu/cmc/music-dsp
http://music.columbia.edu/mailman/listinfo/music-dsp

Reply via email to