Analog Out sine wave

Dependencies:   LSM9DS1_Library mbed

Committer:
CRaslawski
Date:
Mon Feb 27 22:25:09 2017 +0000
Revision:
0:9d458257852d
initial upload

Who changed what in which revision?

UserRevisionLine numberNew contents of line
CRaslawski 0:9d458257852d 1 #include "mbed.h"
CRaslawski 0:9d458257852d 2
CRaslawski 0:9d458257852d 3 //double CosineInterpolate(
CRaslawski 0:9d458257852d 4 // double y1, double y2,
CRaslawski 0:9d458257852d 5 // double mu)
CRaslawski 0:9d458257852d 6 //{
CRaslawski 0:9d458257852d 7 // double mu2;
CRaslawski 0:9d458257852d 8 //
CRaslawski 0:9d458257852d 9 // mu2 = (1-cos(mu*PI))/2;
CRaslawski 0:9d458257852d 10 // return(y1*(1-mu2)+y2*mu2);
CRaslawski 0:9d458257852d 11 //}
CRaslawski 0:9d458257852d 12
CRaslawski 0:9d458257852d 13 AnalogOut scope(p18);
CRaslawski 0:9d458257852d 14
CRaslawski 0:9d458257852d 15 int main() {
CRaslawski 0:9d458257852d 16
CRaslawski 0:9d458257852d 17 //double voltOut;
CRaslawski 0:9d458257852d 18 // double logicOut;
CRaslawski 0:9d458257852d 19 //
CRaslawski 0:9d458257852d 20 // while(1) {
CRaslawski 0:9d458257852d 21 // scope =
CRaslawski 0:9d458257852d 22 // }
CRaslawski 0:9d458257852d 23
CRaslawski 0:9d458257852d 24 const double pi = 3.141592653589793238462;
CRaslawski 0:9d458257852d 25 const double amplitude = 0.5f;
CRaslawski 0:9d458257852d 26 const double offset = 65535/2;
CRaslawski 0:9d458257852d 27 double rad = 0.0;
CRaslawski 0:9d458257852d 28 uint16_t sample = 0;
CRaslawski 0:9d458257852d 29
CRaslawski 0:9d458257852d 30 while(1) {
CRaslawski 0:9d458257852d 31 for(int i = 0; i < 360; i++){
CRaslawski 0:9d458257852d 32 rad = (pi * i) / 180.0f;
CRaslawski 0:9d458257852d 33 sample = (uint16_t)(amplitude * (offset * (cos(rads + pi))) + offset);
CRaslawski 0:9d458257852d 34 aout.write_u16(sample);
CRaslawski 0:9d458257852d 35 }
CRaslawski 0:9d458257852d 36 }
CRaslawski 0:9d458257852d 37 }