Представление синусоидальной волны, заданной LSB/V
Я создаю синусоидальный сигнал напряжения. Как я могу представить это в масштабном коэффициенте 128 LSB/Volts? Амплитуда составляет 180 Вольт. Obs: Я предполагаю, что LSB "НИЗКИЙ ЗНАЧИТЕЛЬНЫЙ БИТ".
Мой код:
int main(int argc, char **argv) {
int i = 0;
short value;
double amp = 180, freq = 60, freq_samp;
freq_samp = atof(argv[2]);
printf("\n** Sample frequency: %f **",freq_samp);
while(1) {
value = amp*sin(2*i*PI*freq/freq_samp);
printf("\nValue = %d",value);
i = i + 1;
sleep(1);
}
return 0;
}
1 ответ
Решение
Я просто создаю переменную LSB e, затем делаю амплитуду *LSB:
int main(int argc, char **argv) {
int i = 0;
short value, LSB;
double amp = 180, freq = 60, freq_samp;
freq_samp = atof(argv[2]);
printf("\n** Sample frequency: %f **",freq_samp);
while(1) {
value = LSB*amp*sin(2*i*PI*freq/freq_samp);
printf("\nValue = %d",value);
i = i + 1;
sleep(1);
}
return 0;
}