Saw Wave Generator

Dependencies:   mbed

Committer:
ryood
Date:
Tue Aug 15 13:06:53 2017 +0000
Revision:
0:d51bfc20e42e
firast commit

Who changed what in which revision?

UserRevisionLine numberNew contents of line
ryood 0:d51bfc20e42e 1 #include "mbed.h"
ryood 0:d51bfc20e42e 2
ryood 0:d51bfc20e42e 3 AnalogOut aout(A2);
ryood 0:d51bfc20e42e 4
ryood 0:d51bfc20e42e 5 const int maxAoutValue = 4096;
ryood 0:d51bfc20e42e 6 const float samplingPeriod = 0.25f / maxAoutValue;
ryood 0:d51bfc20e42e 7
ryood 0:d51bfc20e42e 8 int cnt = 0;
ryood 0:d51bfc20e42e 9
ryood 0:d51bfc20e42e 10 void tick()
ryood 0:d51bfc20e42e 11 {
ryood 0:d51bfc20e42e 12 cnt++;
ryood 0:d51bfc20e42e 13 if (cnt == maxAoutValue) {
ryood 0:d51bfc20e42e 14 cnt = 0;
ryood 0:d51bfc20e42e 15 }
ryood 0:d51bfc20e42e 16 aout.write_u16(cnt << 4);
ryood 0:d51bfc20e42e 17 }
ryood 0:d51bfc20e42e 18
ryood 0:d51bfc20e42e 19 int main()
ryood 0:d51bfc20e42e 20 {
ryood 0:d51bfc20e42e 21 Ticker t;
ryood 0:d51bfc20e42e 22 t.attach(&tick, samplingPeriod);
ryood 0:d51bfc20e42e 23
ryood 0:d51bfc20e42e 24 for (;;) {}
ryood 0:d51bfc20e42e 25 }