Other Parts Discussed in Thread: TMS320F28335
I'm currently writing my first application for the TMS320F28335 DSC for a voltage booster application. If this project goes well, we plan to add more responsibilities to this DSC (motor control, etc.).
I began development on the eZdsp board provided by Spectrum Digital.
Now after only 1-2 weeks, I encoutered my first link error message:
>> error: can't allocate .text:5, size 000001e7 (page 0) in RAML0 (avail:
00000002), RAML1 (avail: 00000000), RAML2 (avail: 00000001)
>> error: errors in input - ./Debug/Booster.out not built
I fixed the problem by modifying the following line of my linker command file:
.text : >> RAML0|RAML1|RAML2|RAML3, PAGE = 0 /* Split program in 4 internal RAM sections */
I'm re-using TI's code examples (header files) for which I created a Code Composer project file to build in a library. My project is done in C++ to try to maximize re-usability of components for future projects. FYI, I know that it easily fits in memory if I compile my project in Release configuration but I would like to continue development in Debug because it is simpler to Debug, eheheh!
Regarding our application basic modules, we plan to have the following:
- 3 fast PIDs control loops to for current regulation.
- 1 slow PID control loop for voltage regulation.
- A serial console to customize the booster behaviors (customized parameters are written to internal flash memory).
What I want to know is if I should consider began using overlays or if this application should fit in 16 Kwords of memory? I would prefer to avoid to manage memory manually...
Are there other sections that can be used for program memory that I could have missed?
Also, in our production board, should I recommend our hardware designer to add external memory (for overlays)? We want our board size to be as small as possible.
Regards,