Originally Posted by
Rocking Donkey
There is a very clear practical technological reason for having 64 steps. One of the HobbyWing guys alluded to it a few days ago.
The HobbyWing speedo has onboard memory. The advanced timing programs are becoming more complicated than the speed controls were ever designed for. This means that every Bit of information counts.
Now, memory is just a string of 0's and 1's, and therefore you must make numbers out of these 0's and 1's. To have an on/off switch there are two possible states so you can use a single Bit to describe it. to make a number that is up to 2^n you need n Bits. This means that you need 1 Bit to have a choice of 2 options, 2 Bits to have a choice of 4 options, 3 Bits to have a choice of 8 options...6 Bits to have up to 64 options.
This 6 bit address limit is the reason that you have 64 steps/options for timing. To change it to % you need at least 100 options requiring an extra Bit. This is the reason for having 64 steps. As this is still beta software I can completely understand why they use this number, and maybe for the release software they could use % or something similar with a courser step size. While it is beta is is good to have the software as tunable as possible.
What I do agree with is that it would be nice to have a conversion to actual degrees of timing, if only to compare different software versions.
Hope this clears things up a little
Ben
If I wrote my microcontroller in this fashion I would have been fired. The bit addressing you are describing is used in hardware design to address external chips, not the way you would use the memory inside the microcontroller. Space is limited in a microcontroller, but by using 1 byte of ram you could have upto 255 steps if you wish.
Most likely 64 is just easier for the math calculations, where 100 percent is a pain in the butt when the microcontroller doesnt have an FPU. (Multiplication and division are clock intensive operations. )
In the worse case scenerio, HW has used look up tables for each of the step values, that would be a major memory hog.
Cheers,
Shawn.
Shawn.