This library generate four classic waves, have an escape button to stop to generate wave. And is possible to use function for calculate period,... separately

Committer:
fangoman91
Date:
Fri May 06 06:40:10 2016 +0000
Revision:
1:cb84b066ab29
Parent:
0:c1150498cbe9
there isn't documentation or istructions

Who changed what in which revision?

UserRevisionLine numberNew contents of line
fangoman91 0:c1150498cbe9 1 #ifndef WAVEGEN_H
fangoman91 0:c1150498cbe9 2 #define WAVEGEN_H
fangoman91 0:c1150498cbe9 3
fangoman91 0:c1150498cbe9 4 #include "mbed.h"
fangoman91 0:c1150498cbe9 5
fangoman91 0:c1150498cbe9 6 namespace mbed
fangoman91 0:c1150498cbe9 7 {
fangoman91 0:c1150498cbe9 8 class WaveGen
fangoman91 0:c1150498cbe9 9 {
fangoman91 0:c1150498cbe9 10 public:
fangoman91 1:cb84b066ab29 11 WaveGen(PinName WaveForm);
fangoman91 1:cb84b066ab29 12
fangoman91 1:cb84b066ab29 13 /*********************************************************************
fangoman91 1:cb84b066ab29 14
fangoman91 1:cb84b066ab29 15 Questa funzione gestisce la generazione della forma d'onda sinusoidale
fangoman91 1:cb84b066ab29 16
fangoman91 1:cb84b066ab29 17 *********************************************************************/
fangoman91 1:cb84b066ab29 18 void SineWave(float Frequency, float Amplitude);
fangoman91 1:cb84b066ab29 19
fangoman91 1:cb84b066ab29 20 /*********************************************************************
fangoman91 1:cb84b066ab29 21
fangoman91 1:cb84b066ab29 22 Questa funzione gestisce la generazione della forma d'onda quadra
fangoman91 1:cb84b066ab29 23
fangoman91 1:cb84b066ab29 24 *********************************************************************/
fangoman91 1:cb84b066ab29 25 void SquareWave(float Frequency, float Amplitude, float DutyCycle);
fangoman91 1:cb84b066ab29 26
fangoman91 1:cb84b066ab29 27 /*********************************************************************
fangoman91 1:cb84b066ab29 28
fangoman91 1:cb84b066ab29 29 Questa funzione gestisce la generazione della forma d'onda triangolare
fangoman91 1:cb84b066ab29 30
fangoman91 1:cb84b066ab29 31 *********************************************************************/
fangoman91 1:cb84b066ab29 32 void TriangularWave(float Frequency, float Amplitude);
fangoman91 1:cb84b066ab29 33
fangoman91 1:cb84b066ab29 34 /*********************************************************************
fangoman91 1:cb84b066ab29 35
fangoman91 1:cb84b066ab29 36 Questa funzione gestisce la generazione della forma d'onda a dente di
fangoman91 1:cb84b066ab29 37 sega
fangoman91 1:cb84b066ab29 38
fangoman91 1:cb84b066ab29 39 *********************************************************************/
fangoman91 1:cb84b066ab29 40 void SawToothWave(float Frequency, float Amplitude);
fangoman91 1:cb84b066ab29 41
fangoman91 1:cb84b066ab29 42 /*********************************************************************
fangoman91 1:cb84b066ab29 43
fangoman91 1:cb84b066ab29 44 Questa funzione gestisce il calcolo del periodo e la divisione di
fangoman91 1:cb84b066ab29 45 questo in intervalli di tempo durante il quale tenere stabile
fangoman91 1:cb84b066ab29 46 un valore di tensione
fangoman91 1:cb84b066ab29 47
fangoman91 1:cb84b066ab29 48 *********************************************************************/
fangoman91 0:c1150498cbe9 49 int TCalc(int div, float Freq);
fangoman91 1:cb84b066ab29 50
fangoman91 1:cb84b066ab29 51 /*********************************************************************
fangoman91 1:cb84b066ab29 52
fangoman91 1:cb84b066ab29 53 Questa funzione adatta il valore di tensione fornito alle specifiche
fangoman91 1:cb84b066ab29 54 della funzione che gestisce il DAC
fangoman91 1:cb84b066ab29 55
fangoman91 1:cb84b066ab29 56 *********************************************************************/
fangoman91 0:c1150498cbe9 57 float VCalc(float Volt);
fangoman91 1:cb84b066ab29 58
fangoman91 1:cb84b066ab29 59 /*********************************************************************
fangoman91 1:cb84b066ab29 60
fangoman91 1:cb84b066ab29 61 Questa funzione la conversione da gradi a radianti
fangoman91 1:cb84b066ab29 62
fangoman91 1:cb84b066ab29 63 *********************************************************************/
fangoman91 0:c1150498cbe9 64 float RadCalc(float Ang);
fangoman91 0:c1150498cbe9 65 protected:
fangoman91 0:c1150498cbe9 66 AnalogOut _WaveForm;
fangoman91 0:c1150498cbe9 67 };
fangoman91 0:c1150498cbe9 68 }
fangoman91 0:c1150498cbe9 69
fangoman91 0:c1150498cbe9 70 #endif