Pulse wave#
-
type uz_wavegen_pulse_t#
-
float uz_wavegen_pulse_sample(uz_wavegen_pulse_t *self, float amplitude, float frequency_Hz, float duty_cycle)#
Returns one sample of a pulse wave (amplitude during duty, zero after).
- Parameters:
self – Pointer to uz_wavegen_pulse instance
amplitude – Amplitude for the pulse wave
frequency_Hz – Frequency for the pulse wave in Hz. Only positive values are permitted
duty_cycle – Duty Cycle for the pulse wave. Only values 0.0 <= DutyCycle <= 1.0 are permitted
- Returns:
Returns one sample for current system time
Example#
1#include "uz_wavegen.h"
2int main(void) {
3 float amplitude = 8.0f;
4 float frequency_Hz = 10.0f;
5 float duty_cycle = 0.5f;
6 uz_wavegen_pulse_t* pulse = uz_wavegen_pulse_init();
7 float output = uz_wavegen_pulse_sample(pulse, amplitude, frequency_Hz, duty_cycle);
8}
Description#
This function calculates a pulse wave. The phase is tracked in the wavegen instance and advanced on each sample call.

Fig. 336 pulse wave