Fix bug preventing sample number to be more that 128. New limit is 32768

pull/8/head V1.2
Enrique Condes 2017-08-04 11:18:24 -05:00
rodzic e30a5ed5cf
commit 959f0df554
5 zmienionych plików z 7 dodań i 7 usunięć

Wyświetl plik

@ -84,7 +84,7 @@ void loop()
// delay(2000); /* Repeat after delay */
}
void PrintVector(double *vData, uint8_t bufferSize, uint8_t scaleType)
void PrintVector(double *vData, uint16_t bufferSize, uint8_t scaleType)
{
for (uint16_t i = 0; i < bufferSize; i++)
{

Wyświetl plik

@ -95,7 +95,7 @@ void loop()
while(1); /* Run Once */
}
void PrintVector(double *vData, uint8_t bufferSize, uint8_t scaleType)
void PrintVector(double *vData, uint16_t bufferSize, uint8_t scaleType)
{
for (uint16_t i = 0; i < bufferSize; i++)
{

Wyświetl plik

@ -81,7 +81,7 @@ void loop()
}
void PrintVector(double *vData, uint8_t bufferSize, uint8_t scaleType)
void PrintVector(double *vData, uint16_t bufferSize, uint8_t scaleType)
{
for (uint16_t i = 0; i < bufferSize; i++)
{

Wyświetl plik

@ -1,5 +1,5 @@
name=arduinoFFT
version=1.1
version=1.2
author=kosme <enrique@shapeoko.com>
maintainer=Enrique Condes <enrique@shapeoko.com>
sentence=A library for implementing Fast Fourier Transform on Arduino.

Wyświetl plik

@ -61,9 +61,9 @@ void arduinoFFT::Compute(double *vReal, double *vImag, uint16_t samples, uint8_t
/* Compute the FFT */
double c1 = -1.0;
double c2 = 0.0;
uint8_t l2 = 1;
uint16_t l2 = 1;
for (uint8_t l = 0; (l < power); l++) {
uint8_t l1 = l2;
uint16_t l1 = l2;
l2 <<= 1;
double u1 = 1.0;
double u2 = 0.0;
@ -99,7 +99,7 @@ void arduinoFFT::Compute(double *vReal, double *vImag, uint16_t samples, uint8_t
void arduinoFFT::ComplexToMagnitude(double *vReal, double *vImag, uint16_t samples)
{
/* vM is half the size of vReal and vImag */
for (uint8_t i = 0; i < samples; i++) {
for (uint16_t i = 0; i < samples; i++) {
vReal[i] = sqrt(sq(vReal[i]) + sq(vImag[i]));
}
}