Originally Posted by
spfautsch
it looks like the array is only getting populated in one dimension / subscript.
This is solved. There were too many parens around the fill macro definition.
Replaced this:
Code:
#define FILL_DWELL_COLUMN(rpm) {(((CALC_DWELL(rpm, 8)), \
(CALC_DWELL(rpm, 9)), \
(CALC_DWELL(rpm, 10)), \
(CALC_DWELL(rpm, 11)), \
(CALC_DWELL(rpm, 12)), \
(CALC_DWELL(rpm, 13)), \
(CALC_DWELL(rpm, 14)), \
(CALC_DWELL(rpm, 15)), \
(CALC_DWELL(rpm, 16)), \
(CALC_DWELL(rpm, 17))))}
With this:
Code:
#define FILL_DWELL_COLUMN(rpm) { (CALC_DWELL(rpm, 8)), \
(CALC_DWELL(rpm, 9)), \
(CALC_DWELL(rpm, 10)), \
(CALC_DWELL(rpm, 11)), \
(CALC_DWELL(rpm, 12)), \
(CALC_DWELL(rpm, 13)), \
(CALC_DWELL(rpm, 14)), \
(CALC_DWELL(rpm, 15)), \
(CALC_DWELL(rpm, 16)), \
(CALC_DWELL(rpm, 17))}
Thanks for this - I'd never in a million years figured out how to do this with the precompiler!
I just need to convert the accel comp table to using this method and test.
Found this in arduino/preferences.txt: compiler.warning_level=none Switch none to all and lots of ugliness popped up. Very helpful.
Bookmarks