<< Chapter < Page Chapter >> Page >
This module explains debugging and troubleshooting strategies for Code Composer Studio.

Introduction

Code Composer provides a rich debugging environment that allows you to step through your code, set breakpoints, andexamine registers as your code executes. This document provides a brief introduction to some of these debuggingfeatures.

Debugging code

Controlling program flow

Breakpoints are points in the code where execution is stopped and control of the DSP is returned to the debugger,allowing you to view the contents of registers and memory. Breakpoints can be activated or deactivated bydouble-clicking on any line of code in the disassembly window.

They can also be set by pressing F9 on a line in the source-file window. However, verify that the breakpointappears at the corresponding location in the disassembly window if you do this; there have been problems withbreakpoints being set inaccurately by this method in the past.

You may also want to step through your program code, executing one line at a time, to follow branches and watchmemory change with the results of calculations. This can be done by choosing the "Step Into" or "Step Over" menu optionsfrom the "Debug" pull-down menu. (Unlike "Step Over," "Step Into" traces subroutine calls caused by "call" opcodes.)

Like most DSPs, the DSP we are using is a pipelined processor, which means that instructions execute in severalstages over several clock cycles. Unfortunately, our debugger does not "flush" the pipeline of all currentinstructions when it halts your program; i.e., the DSP does not execute all remaining stages of instructions. As aconsequence, when a program halts, the register values shown in the register and memory windows may not actually the lastvalues written. Often, the values shown correspond to values written several cycles before the currentinstruction. If it is necessary to know the exact contents of the registers at any particular point in the programflow, simply insert three or more nop (no operation) instructions into your program after theinstruction in question. Then, to debug, execute the instruction in question and the nop instructions that follow; this will flush the pipeline.

You can choose the "Run Free" option from the "Debug" pull-down menu to allow the your code to run freely,ignoring any breakpoints. The code will continue running until explicitly halted with the "Halt" command.

Note that stopping and restarting execution sometimes confuses the A/D and D/A converters on the six-channelsurround-sound board. If this happens, the output will generally go to zero or become completely unrelated to theinput signal. This can be fixed by simply resetting the DSP and starting your code from the beginning.

The bar on the left-hand side of the Code Composer Studio window contains shortcuts for many of the commands in theDebug menu.

Practice setting breakpoints in your program code and single-stepping by setting a breakpoint after the WAITDATA call and tracing through the program flow for several iterations of the FIR filter code. Whatcode does the WAITDATA call correspond to in the disassembly window?

Troubleshooting

The DSP boards can behave unexpectedly. If there is no output, try the following (from less to more drastic):

  • Use the Debug menu to halt and reset the DSP, verify that the PMST is set to 0xFFE0 , reload the code, reset the DSP, and restart the code.
  • Press the "Reset" button on the DSP evaluation board, then use the Code Composer Studio menus to halt, reset theDSP, verify the PMST , reload, reset the DSP again, and restart your code.
  • Close Code Composer Studio, then power-cycle the DSP by unplugging power to the DSP board, waiting five seconds, and plugging it backin. Then restart Code Composer Studio. You will need to reset the PMST to 0xFFE0 , then reload, reset the DSP, and execute your code.
If code does not load correctly, close Code Composer Studio and power-cycle the DSP.

If problems persist after power-cycling the DSP, ensure that the DSP board is functioning properly by executing previouslyverified code. Do not forget to set the PMST and to reset the DSP from the Code Composer Studio menu.

If you try all of these steps and still see problems, ask ateaching assistant for help.

Questions & Answers

A golfer on a fairway is 70 m away from the green, which sits below the level of the fairway by 20 m. If the golfer hits the ball at an angle of 40° with an initial speed of 20 m/s, how close to the green does she come?
Aislinn Reply
cm
tijani
what is titration
John Reply
what is physics
Siyaka Reply
A mouse of mass 200 g falls 100 m down a vertical mine shaft and lands at the bottom with a speed of 8.0 m/s. During its fall, how much work is done on the mouse by air resistance
Jude Reply
Can you compute that for me. Ty
Jude
what is the dimension formula of energy?
David Reply
what is viscosity?
David
what is inorganic
emma Reply
what is chemistry
Youesf Reply
what is inorganic
emma
Chemistry is a branch of science that deals with the study of matter,it composition,it structure and the changes it undergoes
Adjei
please, I'm a physics student and I need help in physics
Adjanou
chemistry could also be understood like the sexual attraction/repulsion of the male and female elements. the reaction varies depending on the energy differences of each given gender. + masculine -female.
Pedro
A ball is thrown straight up.it passes a 2.0m high window 7.50 m off the ground on it path up and takes 1.30 s to go past the window.what was the ball initial velocity
Krampah Reply
2. A sled plus passenger with total mass 50 kg is pulled 20 m across the snow (0.20) at constant velocity by a force directed 25° above the horizontal. Calculate (a) the work of the applied force, (b) the work of friction, and (c) the total work.
Sahid Reply
you have been hired as an espert witness in a court case involving an automobile accident. the accident involved car A of mass 1500kg which crashed into stationary car B of mass 1100kg. the driver of car A applied his brakes 15 m before he skidded and crashed into car B. after the collision, car A s
Samuel Reply
can someone explain to me, an ignorant high school student, why the trend of the graph doesn't follow the fact that the higher frequency a sound wave is, the more power it is, hence, making me think the phons output would follow this general trend?
Joseph Reply
Nevermind i just realied that the graph is the phons output for a person with normal hearing and not just the phons output of the sound waves power, I should read the entire thing next time
Joseph
Follow up question, does anyone know where I can find a graph that accuretly depicts the actual relative "power" output of sound over its frequency instead of just humans hearing
Joseph
"Generation of electrical energy from sound energy | IEEE Conference Publication | IEEE Xplore" ***ieeexplore.ieee.org/document/7150687?reload=true
Ryan
what's motion
Maurice Reply
what are the types of wave
Maurice
answer
Magreth
progressive wave
Magreth
hello friend how are you
Muhammad Reply
fine, how about you?
Mohammed
hi
Mujahid
A string is 3.00 m long with a mass of 5.00 g. The string is held taut with a tension of 500.00 N applied to the string. A pulse is sent down the string. How long does it take the pulse to travel the 3.00 m of the string?
yasuo Reply
Who can show me the full solution in this problem?
Reofrir Reply
Got questions? Join the online conversation and get instant answers!
Jobilize.com Reply

Get Jobilize Job Search Mobile App in your pocket Now!

Get it on Google Play Download on the App Store Now




Source:  OpenStax, Dsp laboratory with ti tms320c54x. OpenStax CNX. Jan 22, 2004 Download for free at http://cnx.org/content/col10078/1.2
Google Play and the Google Play logo are trademarks of Google Inc.

Notification Switch

Would you like to follow the 'Dsp laboratory with ti tms320c54x' conversation and receive update notifications?

Ask