Table 7-3 lists the memory usage for each SpinTAC component. In SpinTAC Plan, there are a large number of configuration functions.
|Component||Code (.text) (16-bit Words)||RAM (.ebss) (16-bit Words)|
|Velocity Plan (Minimum)||0x680||0x4E|
|Velocity Plan (Maximum)||0x13BA||0x4E|
|Position Plan (Minimum)||0x7EE||0x60|
|Position Plan (Maximum)||0x16AA||0x60|
Table 7-4 breaks down the maximum stack utilization of SpinTAC components when run individually. The stack consumption of InstaSPIN-FOC is included. To calculate the stack usage, the entire memory section where the stack is placed is filled with known values. The corresponding code was then run for a few minutes. The memory area where the stack was allocated was analyzed and the amount of used memory was calculated.
|Configuration||Maximum Stack Used
|Velocity Plan + Move + Control||0x0120|
|Position Plan + Move + Control||0x0120|
Table 7-5 shows the allocated memory for the InstaSPIN-FOC and SpinTAC library.
|Maximum Number of Motors that can be controlled||2||2||2||2||1|
|Relocalable Controller Structure||No||No||Yes||Yes||Yes|
|Public Library needs to be added to project||No||No||No||No||Yes|
|ROM Library [size, hex, words]||4000||4000||3D27||3D27||2000|
|ROM Library Start [address, hex]||3F 8000||3F 8000||3F 8808||3F 8808||3F C000|
|Library Required RAM [size, hex, words]||800||800||800||800||200|
|Library Start RAM [address, hex]||01 3800||01 3800||00 8000||00 8000||00 0600|
For the F2806xF and F2806xM devices, InstaSPIN-FOC v1.6 and SpinTAC v2.2.6 is stored in the address range of 0x3F8000 to 0x3FBFF and the last part of L8-RAM is reserved for InstaSPIN variables, address range 0x013800 to 0x013FFF. Figure 7-2 shows the memory locations that have been assigned for InstaSPIN-FOC and SpinTAC.