Forum: Mikrocontroller und Digitale Elektronik Arduino FFT Lib auf dem ESP


von Kolja L. (kolja82)


Lesenswert?

Hallo

Ich würde gerne eine Mehrkanallichtorgel aus einem ESP (NodeMCU) bauen.
Über ein Microphone und einen Vorverstärker bekomme ich ein schönes 
Signal auf den analogen eingang.

Dann habe ich diese FFT Lib für Arduine gefunden:
https://github.com/kosme/arduinoFFT


Wenn ich diese installiere und ds erste Beispiel kompiliere bekomme ich 
folgende Ausgabe:


1
Data:
2
0.000000 575.0000
3
0.010000 573.0000
4
0.020000 573.0000
5
0.030000 573.0000
6
0.040000 573.0000
7
0.050000 574.0000
8
0.060000 573.0000
9
0.070000 573.0000
10
0.080000 574.0000
11
0.090000 573.0000
12
0.100000 573.0000
13
0.110000 574.0000
14
0.120000 574.0000
15
0.130000 573.0000
16
0.140000 573.0000
17
0.150000 574.0000
18
0.160000 574.0000
19
0.170000 573.0000
20
0.180000 574.0000
21
0.190000 574.0000
22
0.200000 574.0000
23
0.210000 573.0000
24
0.220000 574.0000
25
0.230000 573.0000
26
0.240000 573.0000
27
0.250000 573.0000
28
0.260000 574.0000
29
0.270000 573.0000
30
0.280000 573.0000
31
0.290000 574.0000
32
0.300000 574.0000
33
0.310000 573.0000
34
0.320000 574.0000
35
0.330000 573.0000
36
0.340000 573.0000
37
0.350000 573.0000
38
0.360000 574.0000
39
0.370000 573.0000
40
0.380000 573.0000
41
0.390000 574.0000
42
0.400000 574.0000
43
0.410000 574.0000
44
0.420000 574.0000
45
0.430000 573.0000
46
0.440000 574.0000
47
0.450000 573.0000
48
0.460000 573.0000
49
0.470000 574.0000
50
0.480000 574.0000
51
0.490000 573.0000
52
0.500000 574.0000
53
0.510000 574.0000
54
0.520000 573.0000
55
0.530000 573.0000
56
0.540000 574.0000
57
0.550000 573.0000
58
0.560000 573.0000
59
0.570000 574.0000
60
0.580000 574.0000
61
0.590000 573.0000
62
0.600000 573.0000
63
0.610000 574.0000
64
0.620000 574.0000
65
0.630000 573.0000
66
67
Weighed data:
68
0.000000 46.0000
69
0.010000 47.1498
70
0.020000 51.0661
71
0.030000 57.5501
72
0.040000 66.5373
73
0.050000 78.0744
74
0.060000 91.6400
75
0.070000 107.5060
76
0.080000 125.5976
77
0.090000 145.0806
78
0.100000 166.4157
79
0.110000 189.5021
80
0.120000 213.4954
81
0.130000 238.0319
82
0.140000 263.6498
83
0.150000 290.2283
84
0.160000 316.5427
85
0.170000 342.1945
86
0.180000 368.7144
87
0.190000 394.0532
88
0.200000 418.5562
89
0.210000 441.2100
90
0.220000 464.0917
91
0.230000 483.8272
92
0.240000 502.6378
93
0.250000 519.5282
94
0.260000 535.2629
95
0.270000 546.8974
96
0.280000 557.1042
97
0.290000 565.8352
98
0.300000 571.0509
99
0.310000 572.6723
100
0.320000 573.6718
101
0.330000 570.0560
102
0.340000 564.8494
103
0.350000 557.1042
104
0.360000 547.8518
105
0.370000 534.3304
106
0.380000 519.5282
107
0.390000 503.5150
108
0.400000 484.6715
109
0.410000 464.0917
110
0.420000 441.9800
111
0.430000 417.8271
112
0.440000 394.0532
113
0.450000 368.0721
114
0.460000 342.1945
115
0.470000 316.5427
116
0.480000 290.2283
117
0.490000 263.6498
118
0.500000 238.4473
119
0.510000 213.4954
120
0.520000 189.1720
121
0.530000 166.4157
122
0.540000 145.3338
123
0.550000 125.3787
124
0.560000 107.5060
125
0.570000 91.7999
126
0.580000 78.0744
127
0.590000 66.5373
128
0.600000 57.5501
129
0.610000 51.1553
130
0.620000 47.2321
131
0.630000 45.8400
132
133
Computed Real values:
134
0.000000 19555.8592
135
1.000000 -8493.9713
136
2.000000 89.2134
137
3.000000 35.0940
138
4.000000 18.2295
139
5.000000 10.3298
140
6.000000 7.9184
141
7.000000 4.4343
142
8.000000 4.6349
143
9.000000 3.1994
144
10.000000 1.8459
145
11.000000 2.8261
146
12.000000 1.3312
147
13.000000 1.8464
148
14.000000 0.1647
149
15.000000 0.1844
150
16.000000 1.6448
151
17.000000 0.7074
152
18.000000 0.8313
153
19.000000 -1.5270
154
20.000000 3.8300
155
21.000000 -2.3959
156
22.000000 0.6179
157
23.000000 1.1442
158
24.000000 0.4359
159
25.000000 -0.3513
160
26.000000 2.2832
161
27.000000 -1.7308
162
28.000000 0.7287
163
29.000000 0.6154
164
30.000000 0.3317
165
31.000000 -3.1536
166
32.000000 5.5547
167
33.000000 -3.1536
168
34.000000 0.3317
169
35.000000 0.6154
170
36.000000 0.7287
171
37.000000 -1.7308
172
38.000000 2.2832
173
39.000000 -0.3513
174
40.000000 0.4359
175
41.000000 1.1442
176
42.000000 0.6179
177
43.000000 -2.3959
178
44.000000 3.8300
179
45.000000 -1.5270
180
46.000000 0.8313
181
47.000000 0.7074
182
48.000000 1.6448
183
49.000000 0.1844
184
50.000000 0.1647
185
51.000000 1.8464
186
52.000000 1.3312
187
53.000000 2.8261
188
54.000000 1.8459
189
55.000000 3.1994
190
56.000000 4.6349
191
57.000000 4.4343
192
58.000000 7.9184
193
59.000000 10.3298
194
60.000000 18.2295
195
61.000000 35.0940
196
62.000000 89.2134
197
63.000000 -8493.9713
198
199
Computed Imaginary values:
200
0.000000 0.0000
201
1.000000 -416.8295
202
2.000000 8.1664
203
3.000000 6.1173
204
4.000000 4.0941
205
5.000000 0.2422
206
6.000000 6.5146
207
7.000000 -0.9746
208
8.000000 1.4082
209
9.000000 2.5616
210
10.000000 1.6822
211
11.000000 0.1255
212
12.000000 3.1566
213
13.000000 -1.4378
214
14.000000 2.0756
215
15.000000 0.1924
216
16.000000 1.8017
217
17.000000 2.1487
218
18.000000 -6.2768
219
19.000000 3.3331
220
20.000000 0.2313
221
21.000000 3.0225
222
22.000000 -1.7985
223
23.000000 0.7784
224
24.000000 1.5868
225
25.000000 -1.6438
226
26.000000 1.2746
227
27.000000 -0.9256
228
28.000000 0.8268
229
29.000000 0.2817
230
30.000000 -0.9432
231
31.000000 0.7302
232
32.000000 0.0000
233
33.000000 -0.7302
234
34.000000 0.9432
235
35.000000 -0.2817
236
36.000000 -0.8268
237
37.000000 0.9256
238
38.000000 -1.2746
239
39.000000 1.6438
240
40.000000 -1.5868
241
41.000000 -0.7784
242
42.000000 1.7985
243
43.000000 -3.0225
244
44.000000 -0.2313
245
45.000000 -3.3331
246
46.000000 6.2768
247
47.000000 -2.1487
248
48.000000 -1.8017
249
49.000000 -0.1924
250
50.000000 -2.0756
251
51.000000 1.4378
252
52.000000 -3.1566
253
53.000000 -0.1255
254
54.000000 -1.6822
255
55.000000 -2.5616
256
56.000000 -1.4082
257
57.000000 0.9746
258
58.000000 -6.5146
259
59.000000 -0.2422
260
60.000000 -4.0941
261
61.000000 -6.1173
262
62.000000 -8.1664
263
63.000000 416.8295
264
265
Computed magnitudes:
266
0.000000Hz 19555.8592
267
1.562500Hz 8504.1928
268
3.125000Hz 89.5863
269
4.687500Hz 35.6232
270
6.250000Hz 18.6836
271
7.812500Hz 10.3326
272
9.375000Hz 10.2538
273
10.937500Hz 4.5402
274
12.500000Hz 4.8441
275
14.062500Hz 4.0985
276
15.625000Hz 2.4975
277
17.187500Hz 2.8289
278
18.750000Hz 3.4258
279
20.312500Hz 2.3402
280
21.875000Hz 2.0822
281
23.437500Hz 0.2665
282
25.000000Hz 2.4395
283
26.562500Hz 2.2622
284
28.125000Hz 6.3316
285
29.687500Hz 3.6662
286
31.250000Hz 3.8370
287
32.812500Hz 3.8570
288
34.375000Hz 1.9016
289
35.937500Hz 1.3839
290
37.500000Hz 1.6456
291
39.062500Hz 1.6809
292
40.625000Hz 2.6149
293
42.187500Hz 1.9628
294
43.750000Hz 1.1021
295
45.312500Hz 0.6768
296
46.875000Hz 0.9999
297
48.437500Hz 3.2371
298
299
28.736887
300
301
Soft WDT reset
302
303
ctx: cont 
304
sp: 3ffef8d0 end: 3ffefac0 offset: 01b0
305
306
>>>stack>>>
307
3ffefa80:  3ffeea70 3ffee578 3ffee778 40201e70  
308
3ffefa90:  3fffdad0 00000000 3ffeea70 3ffeea94  
309
3ffefaa0:  3fffdad0 00000000 3ffeea8c 40202e48  
310
3ffefab0:  feefeffe feefeffe 3ffeeaa0 40100114  
311
<<<stack<<<
312
313
 ets Jan  8 2013,rst cause:2, boot mode:(3,6)
314
315
load 0x4010f000, len 1384, room 16 
316
tail 8
317
chksum 0x2d
318
csum 0x2d
319
v09f0c112
320
~ld


Bevor ich mich jetzt mit den einzelnen gewollten Ausgaben beschäftige,
würde ichgerne wissen, warum sich der WDT immer einschaltet?

Jemand ne Idee?


Danke und Gruß

von Sven B. (sb2048)


Lesenswert?

Weil du ihn nicht zurücksetzt?


Füge an den passenden Stellen einfach ein yield() oder delay(0) ein.
Dann sollte er nicht mehr zuschlagen.

von Wolfgang (Gast)


Lesenswert?

Kolja L. schrieb:
> Bevor ich mich jetzt mit den einzelnen gewollten Ausgaben beschäftige,
> würde ichgerne wissen, warum sich der WDT immer einschaltet?

Der Watchdog ist eingeschaltet, sonst würde er nicht ab und zu in sein 
Time-Out laufen und einen WDT Reset auslösen.

So ein Wachhund will regelmäßig beruhig werden, sonst schlägt er zu.
Oder du darfst ihn im Code nicht aktivieren.

von Kolja L. (kolja82)


Lesenswert?

Sven B. schrieb:
> Weil du ihn nicht zurücksetzt?

Ja, danke, wie denn auch: while(1); /* Run Once */

Sorry für die blöde Frage, hätte ich selbst finden müssen :-|

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.