форкнуто от main/python-labs
Вы не можете выбрать более 25 тем
Темы должны начинаться с буквы или цифры, могут содержать дефисы(-) и должны содержать не более 35 символов.
27 строки
746 B
Python
27 строки
746 B
Python
# module_pulse.py
|
|
|
|
def generate_pulse_signal(ampl, pulse_len, period, n_samples, filename):
|
|
ampl = float(ampl)
|
|
pulse_len = int(pulse_len)
|
|
period = int(period)
|
|
n_samples = int(n_samples)
|
|
|
|
if pulse_len <= 0 or period <= 0 or n_samples <= 0 or period < pulse_len:
|
|
print("Ошибка: проверь параметры (pulse_len>0, period>=pulse_len, n_samples>0)")
|
|
return [] # вернём пустой список
|
|
|
|
signal = []
|
|
for i in range(n_samples):
|
|
if (i % period) < pulse_len:
|
|
signal.append(ampl)
|
|
else:
|
|
signal.append(0)
|
|
|
|
f = open(filename, "w", encoding="utf-8")
|
|
for x in signal:
|
|
f.write(str(x) + "\n")
|
|
f.close()
|
|
|
|
return signal
|
|
|