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.

value the F28335's register directly using its address?

Other Parts Discussed in Thread: CONTROLSUITE

Hi, guys, 

I'm a freshman for 28335 development. Now in my exercise, I wanna value the register located at 0x41FF directly by the following instructions:

Uint16 *LedReg=(Uint16 *)0x41FF;

*LedReg=0x34BC;

Then I will fail to value the register, or the CCS 3.3 will fail:

"Can't Single Step Target Program:
Error 0x20000020/-1156
Severe Error during: Execution,
Lost processor clock. Device may be operating in a low-power mode. Do you want to bring it out of this mode?"

Then the connection to emulator will be cut, and CCS will crash.

What's the problem? is the value method, which use the register's address, is forbidden?

Thank you~

Wenlong Lee

  • not sure the reason of the  CCS crash is the wrong code. 

     as for register access the good idea is to use TI's header files such as DSP2833x_Gpio.h with named structures instead direct access. 

    there are some examples in controlSUITE. also you can read "C2833x/C2823x C/C++ Header Files and Peripheral Examples Quick Start" (SPRCA73).

     

    btw have you installed all updates for the CCS 3.3?

     

    Roman 

     

  • Yes, as you have referred in your post, I succeed in operate the register using TI's header files. However, I wanna operate some registers for my own goal, and I don't find some registers in any header file, such as 0x41FF. In the development board I have bought, the 0x41FF has been designated for an special use--control 8 LEDs in the board via a CPLD, not just for XINTF. 

    So, what I want to know is: is it possible for me to operate the register such as 0x41FF directly using its address? I failed to value the register in my past trials. Will the development board's design logic influence the use of the particular registers?

  • To eliminate board's design logic influence you can change your register value directly from CCS without programming using JTAG connection. Use memory window to change value any address you wish.

     

    Undoubtedly you can access register directly with construction from  your first post. I don't  know what the problem with it. I have used a similar construction for my 2808 project. May be you try to value your register in TI style with pragmas and memory sections (look at .h and .cmd files to know how to do it).