use something like this:
#include <Bela.h>
#include <libraries/Scope/Scope.h>
#include <libraries/Oscillator/Oscillator.h>
#include <MiscUtilities.h>
Oscillator gOsc;
Scope gScope;
bool setup(BelaContext *context, void *userData)
{
printf("Running with %d audio inputs and %d audio outputs\n", context->audioInChannels, context->audioOutChannels);
gOsc.setup(context->audioSampleRate);
gScope.setup(context->audioInChannels, context->audioSampleRate);
PinmuxUtils::set("P8_33", "mcasp");
return true;
}
void render(BelaContext *context, void *userData)
{
for(unsigned int n = 0; n < context->audioFrames; ++n)
{
float out = gOsc.process(440);
for(unsigned int c = 0; c < context->audioOutChannels; ++c)
audioWrite(context, n, c, out);
// scope all audio inputs at once
gScope.log(context->audioIn + n * context->audioInChannels);
}
}
void cleanup(BelaContext *context, void *userData)
{
}
if it doesn't show "4 audio inputs and 4 audio outputs", then check you set the command line options appropriately.
This is also writing a sinewave to the output, to ensure it's still working.