Implement linear interpolation between velocity points on the S-acceleration curve. To turn on this feature, assert the ACCEL_LINEAR_FIT #define in accel.h. Currently it is turned off. To see the effects of this, plot the last two columns of log.txt in a spreadsheet using the XY (Scatter) plot type. This will give you time on the x-axis, and velocity on the y-axis. Quite a difference between the two.
Currently tested on Cygwin. Don't have access to the Tiva board for hardware testing.
Note that adding asserts to accel.h is responsible for the increased code size in the map file.
On a general note, we're trying to compensate for round-off error in the integer arithmetic which leads to somewhat complicated looking code (e.g fast multiply-by-2 is implemented as << 1). Wondering if we should just use floating point arithmetic since we're on a Cortex-M4 processor.
On a point of interest, note how accel::microSecToCurveIndexDecelerate() is implemented in terms of accel::microSecToCurveIndex()