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
WaveGen.h@1:cb84b066ab29, 2016-05-06 (annotated)
- 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?
User | Revision | Line number | New 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 |