Sinus regulirani

Dependencies:   mbed

Committer:
DorijanMacek
Date:
Thu Dec 10 14:15:08 2015 +0000
Revision:
0:5f6ae7d97455
Sinus regulirani

Who changed what in which revision?

UserRevisionLine numberNew contents of line
DorijanMacek 0:5f6ae7d97455 1 #include "mbed.h"
DorijanMacek 0:5f6ae7d97455 2 #define PI 3.14159265359
DorijanMacek 0:5f6ae7d97455 3 #define PPI 2*PI
DorijanMacek 0:5f6ae7d97455 4 Ticker TS;
DorijanMacek 0:5f6ae7d97455 5 AnalogOut DA18(p18);
DorijanMacek 0:5f6ae7d97455 6 AnalogIn AD20(p20);
DorijanMacek 0:5f6ae7d97455 7 int T=50;
DorijanMacek 0:5f6ae7d97455 8 float y, f=50.0, kut = 0,freqcoef=1;
DorijanMacek 0:5f6ae7d97455 9
DorijanMacek 0:5f6ae7d97455 10
DorijanMacek 0:5f6ae7d97455 11
DorijanMacek 0:5f6ae7d97455 12 void sinus ()
DorijanMacek 0:5f6ae7d97455 13 {
DorijanMacek 0:5f6ae7d97455 14 y = 0.5*sin(kut) + 0.5;
DorijanMacek 0:5f6ae7d97455 15 DA.write(p18);
DorijanMacek 0:5f6ae7d97455 16 kut += PPI * f *freqcoef* T * 1e-6;
DorijanMacek 0:5f6ae7d97455 17 if (kut > PPI) { kut = kut - PPI; }
DorijanMacek 0:5f6ae7d97455 18 }
DorijanMacek 0:5f6ae7d97455 19
DorijanMacek 0:5f6ae7d97455 20 int main ()
DorijanMacek 0:5f6ae7d97455 21 {
DorijanMacek 0:5f6ae7d97455 22 freqcoef=AD20*3.0; //*3 da freq raspon bude od 0 do 150 Hz
DorijanMacek 0:5f6ae7d97455 23 if(freqcoef==0) //da nebi greq bila nula stavi koef u 1 pa je freq jednaka 50Hz
DorijanMacek 0:5f6ae7d97455 24 freqcoef=1;
DorijanMacek 0:5f6ae7d97455 25 TS.attach_us(&sinus,T);
DorijanMacek 0:5f6ae7d97455 26 }