F401REにてアナログモデリングシンセもどきを作ってみました。 リングモジュレーターっぽいことやってみてます。正弦波、三角波、矩形波の関数が用意してあります。sin(2pift)のftをサンプリングレートごとに積分したものをiftとしてます。iftのポインタを関数に与えるだけで特に計算は入りません。

Dependencies:   mbed

main.cpp

Committer:
gitakichi
Date:
2016-07-20
Revision:
1:1b9ca25019a6
Parent:
0:1b56cf88e38c
Child:
2:47210a089f76

File content as of revision 1:1b9ca25019a6:

#include "mbed.h"

Ticker flipper;
PwmOut mypwm(PC_8);

DigitalOut myled(LED1);
int data;

void flip(){
    if(data > 100)   data = 0;
    else data++; 
    }


int main() {
    
    mypwm.period_us(10);
    flipper.attach_us(&flip, 50);
    
  
    //printf("pwm set to %.2f %%\n", mypwm.read() * 100);
    
    while(1) {
        mypwm.write( (float)data / 1000 );
        //myled = !myled;
        //wait(1);
    }
}