Is there any document or sample code except CSL that explains step by step the interrupts on C5505?
Thanks
This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
Is there any document or sample code except CSL that explains step by step the interrupts on C5505?
Thanks
Alper,
Look at the C55x v3.x CPU Reference Guide (http://www-s.ti.com/sc/techlit/swpu073), Chapter 5. It describes hot the CPU responds to interrupt requests. The v3.x CPU is found in the TMS320VC5504/05 and TMS320C5504/05/14/15 DSPs.
Regards.
Hi,
I'm also struggeling with the interrupts and I have been through some of the csl examples and the reference guide you mentioned above.
My big problem is loading the vectors with the addresses that show to the functions. Can you please help me?
Ruan,
If you are not using DSP/BIOS, then there is a good example of an interrupt vector table in the CSL examples. Look at the file vectors.asm which is located in the CSL folder: \c55xx_csl\src. The example named: \c55xx_csl\ccs_v4.0_examples\intc\CSL_INTC_Example shows how to setup interrupts using CSL
If you are using DSP/BIOS, then the interrupt vector table is generated automatically for you when the BIOS configuration file (.tcf) is compiled. You only need to specify the name of your ISR in the HWI properties for the interrupt(s) you want to enable. There is additional setup required, but unfortunately, there aren't any good examples of using HWIs in DSP/BIOS that I can find at the moment.
Maybe someone else can point one out.
Regards.
Hey Tommy,
I think I'm getting the hang of the vector interrupts, but when I use the vector.asm file in my project it gives me a "[E9999] Illegal directive or mnemonc" at allmost every command in the .text section. How can I get it to work properly?
Ruan,
I'm guessing here, but I think that you have a mismatch on the Assembly language mode. The C5000 Compiler supports Mnemonic and Algebraic modes. The vectors.asm .text section is written in Algebraic mode and if the Compiler is expecting Mnemonic mode, then you would get those type of errors. If that is the cause, then you can either have the Compiler generate Algebraic assembly (CCSv4 Build Options - C5500 Compiler - Runtime Model Options: Codegen output algebraic assembly), or convert vectors.asm to Mnemonic assembly. If you don't have a preference as to which assembly mode to use, then changing the Compiler option would be the easiest.
Regards.
Thank you Tommy,
It works now.
Sorry to bother you again, but I'm trying to use CSL in my own project but I can't get it to work. I've tried to add all the include paths that the example projects have but it still doesn't work. The CSL manual also just tells you how to get the examples to work.
Can you please help me by giving me some steps to follow to use CSL in my own project? I'm using a tms320vc5505 usb stick.
Ruan,
What is not working on your project? The examples that are provided with CSL are intended to be used as templates for your own projects. All the steps for accessing a particular peripheral should be contained the example code.
Are you using the latest version of the LOWPOWER CSL that was released this year (v2.01)? If so, did you notice in the Release Notes, Section 2 that the default configuration is for the new C5504/05/14/15 processors? To target the original VC5505 configuration you need to make a modification for VC5505 target.
Also, the example SW is targeting the EVMs and not the eZdsp boards. So since you are using the eZdsp there might need to be some code changes to handle the different HW designs.
Regards.