Create and Debug a CCSv5.5 Project for DSK6713- or DUETT-Board1

Similar documents
NEW CEIBO DEBUGGER. Menus and Commands

Laboratory Assignment #4 Debugging in Eclipse CDT 1

Resource 2 Embedded computer and development environment

APPENDIX A. CODE COMPOSER STUDIO (CCS) v5: A BRIEF TUTORIAL FOR THE DSK6713

1 Introduction to MARS

Code Composer Studio Operation Manual

Note that FLIP is an Atmel program supplied by Crossware with Atmel s permission.

Digital Signal Processing and Applications with the TMS320C6713 DSK

DOMAIN TECHNOLOGIES. Getting Started Guide Version 1.1. BoxView IDE. Integrated Development Environment

Workshop Goals. Page 2 of 68

Debugging in AVR32 Studio

The Road to CCSv4. Status Update

As CCS starts up, a splash screen similar to one shown below will appear.

Lab 0 Introduction to the MSP430F5529 Launchpad-based Lab Board and Code Composer Studio

MEM MEM Control Applications of DSP. Lab 2. Project Creating & GPIO DSP28355 & CCSv5

AndeSight. User Manual. Working with AndESLive. Version 1.0

System Framework Overview Guide and Instructions on How to Use the Template Projects

Codewarrior for ColdFire (Eclipse) 10.0 Setup

AN1369 APPLICATION NOTE

Changing the Embedded World TM. Module 3: Getting Started Debugging

The board contains the connector for SWD bus to implement SWD method of programming. Fig. K190 VDD 2 GND 4

Project Debugging with MDK-ARM

MPLAB SIM. MPLAB IDE Software Simulation Engine Microchip Technology Incorporated MPLAB SIM Software Simulation Engine

ECE4703 Real-Time DSP Orientation Lab

STM32 Ecosystem workshop. T.O.M.A.S Team

This chapter introduces how to use the emulator of TOPICE quickly.

Using the KD30 Debugger

P&E Microcomputer Systems, Inc. PKGPPCNEXUS

Quick Start Guide for the Turbo upsd DK3300-ELCD Development Kit- RIDE

At the shell prompt, enter idlde

SKP16C26 Tutorial 1 Software Development Process using HEW. Renesas Technology America Inc.

STM32 Ecosystem Workshop. T.O.M.A.S Team

Required Setup for 32-bit Applications

Using the DSK In CalPoly EE Courses - Dr Fred DePiero

Floating-Point Unit. Introduction. Agenda

FR Family MB Emulator System Getting Started Guide

Parallel Debugging. ª Objective. ª Contents. ª Learn the basics of debugging parallel programs

ECE 5655/4655 Laboratory Problems

CodeWarrior Development Studio for etpu v10.x Quick Start SYSTEM REQUIREMENTS

3 TUTORIAL. In This Chapter. Figure 1-0. Table 1-0. Listing 1-0.

ToolStick-EK TOOLSTICK USER S GUIDE. 1. Kit Contents. 2. ToolStick Overview. Green and Red LEDs. C8051F321 provides USB debug interface.

Eclipse Quick Reference Windows Hosted

DOMAIN TECHNOLOGIES INC. Users Guide Version 2.0 SB-USB2. Emulator

Introduction. Key features and lab exercises to familiarize new users to the Visual environment

Exercise 1-2. The Assembler and Debugger EXERCISE OBJECTIVES

Section 1 AVR Studio User Guide

Tools Basics. Getting Started with Renesas Development Tools R8C/3LX Family

Getting Started in C Programming with Keil MDK-ARM Version 5

2 TUTORIAL. Overview. VisualDSP Getting Started Guide 2-1 for SHARC DSPs

F28069 ControlCard Lab1

PSoC Designer: Integrated Development Environment

Figure 1. Proper Method of Holding the ToolStick. Figure 2. Improper Method of Holding the ToolStick

As CCS starts up, a splash screen similar to one shown below will appear.

Outline. Debugging. In Class Exercise Solution. Review If Else If. Immediate Program Errors. Function Test Example

CPE 323: Laboratory Assignment #1 Getting Started with the MSP430 IAR Embedded Workbench

The following content has been imported from Legacy Help systems and is in the process of being checked for accuracy.

Experiment 6 Finite Impulse Response Digital Filter (FIR).

Figure 1. Proper Method of Holding the ToolStick. Figure 2. Improper Method of Holding the ToolStick

DAVE 3 Hands on / Quick Start Tutorial. Presentation Tutorial Start 1 v1.1: Creating a simple Project using PWM and Count Apps

Getting started with the PowerPC tools:

Using Code Composer Studio IDE with MSP432

Introduction to IntelliJ

Getting Started in C Programming with Keil MDK-ARM Version 5

Implementation Techniques for DSP

Getting Started in C Programming with Keil MDK-ARM Version 5

Software Installation Guide for S32 Design Studio IDE (S32DS): FRDM-KEAZ128Q80 FRDM-KEAZ64Q64 FRDM-KEAZN32Q64

Figure 1. Proper Method of Holding the ToolStick. Figure 2. Improper Method of Holding the ToolStick

H8 C-SPY. User Guide WINDOWS WORKBENCH VERSION

EUROScope lite 16FX Reference Manual

Code Composer Studio IDE Getting Started Guide. User's Guide

RVDS 3.0 Introductory Tutorial

Digital Signal Processing Laboratory 7: IIR Notch Filters Using the TMS320C6711

A Quick Introduction to MPLAB SIM

_ V Intel 8085 Family In-Circuit Emulation. Contents. Technical Notes

Training Simulator and Demo Software

QUICKSTART CODE COMPOSER STUDIO Stellaris Development and Evaluation Kits for Code Composer Studio

F28335 ControlCard Lab1

Disassemble the machine code present in any memory region. Single step through each assembly language instruction in the Nios II application.

ECE4703 B Term Laboratory Assignment 1

Intro to MS Visual C++ Debugging

An Introduction to Komodo

Parish . User Manual

Code Composer Studio Development Tools v3.3. Getting Started Guide

C Programming in Atmel Studio 7 Step by Step Tutorial

Figure 1. Proper Method of Holding the ToolStick. Figure 2. Improper Method of Holding the ToolStick

CodeWarrior Development Studio for StarCore DSP SC3900FP Architectures Quick Start for the Windows Edition

CodeWarrior Development Studio for Power Architecture Processors FAQ Guide

user guide January 2006 CSR Cambridge Science Park Milton Road Cambridge CB4 0WH United Kingdom Registered in England

Fujitsu 2010 FAE Training Lab Sunnyvale, CA

Tutorial. How to use Keil µvision with Spansion templates Spansion Inc.

Programming Logic - Beginning

Figure 1. Proper Method of Holding the ToolStick. Figure 2. Improper Method of Holding the ToolStick

6L00IA - Introduction to Synergy Software Package Short Version (SSP v1.2.0) Renesas Synergy Family - S7 Series

WebVisit User course

Engineer-to-Engineer Note

M16C/62P QSK QSK62P Plus Tutorial 1. Software Development Process using HEW4

1. Move your mouse to the location you wish text to appear in the document. 2. Click the mouse. The insertion point appears.

April 4, 2001: Debugging Your C24x DSP Design Using Code Composer Studio Real-Time Monitor

Introduction. This tutorial introduces the following SingleStep features:

SDKs - Eclipse. SENG 403, Tutorial 2

Transcription:

Praktikum Digitale Signalverarbeitung Department Informations- und Elektrotechnik Labor für Signalverarbeitung Create and Debug a CCSv5.5 Project for DSK6713- or DUETT-Board1 1 Start CCSv5 and create a project Start CCS 5 by double clicking the corresponding icon on the Desktop. If CCS does not start with the CCS Edit Perspective (see Fig. 1), open this via Window Open Perspective Other and doubleclick on CCS Edit (Fig. 2). Fig. 1: CCS Edit Perspective Create a new project in D:\ti_work5 with Project New CCS Project. Fill in the New CCS Project window as shown in figure 3 and click Finish. Hint: In the following, c-sourcecode and directory is called get_started.c and get started. Fig. 2: Open Perspective Dialog Note that the folder get_started will be automatically created. Three project files in this directory contain all project and build information in ASCII format (comparable to Windows INI-files). DSK6713.ccxml (Target Configuration File) contains information about the hardware. Copy the following files to your project directory.\get_started from D:\ti_work5\DSK6713\Lab_support_DSK6713: 1. get_started.c (C-Source Code) 2. C6713dsk_AIC23.cmd (Link command file) 3. DSK_vectors_AIC23.asm 4. c6713dskinit.h for DUETT: from D:\ti_work5\DSK6713\Lab_support_duett: 1. get_started_duett.c 2. C6713_DSK_DUETT.cmd 3. DSK_vectors_DUETT.ASM 4. c6713dsk_duett_init.c Fig. 3: New CCS Project By refreshing the perspective via <F5> the files appear in the CCS Project Explorer. Remove via right mouseclick the automatically inserted file main.c from the project. 1 Note the colored labeling: in case of differences, description is blue for DSK6713, green for DUETT. Kup, 1/5

Now, three Build Options has to be set. After right mouseclick on the project in CCS Edit Perspective, choose Properties, in section Build, subsection C6000 Compiler: I. at Advanced Options Predefined Symbols and via the red encircled button on the right, add: CHIP_6713 : II. at Advanced Options Runtime Model Options choose far for the Data access model : III. at Processor Options insert 6710 as Target processor version : A further option allows setting/removing breakpoints oder changing content of variables, while the program is running. After right mouseclick on the project in CCS Edit Perspective, choose Properties, in section Debug, subsection Auto Run and Lauch Options check the box Halt target before any debugger access : 2 Compile, link and load the project Connect the DSK6713- and DUETT-Board respectively via USB. Select now Run Debug (<F11>). By this command the inserted files will be compiled, linked, while the linker is interpreting the file C6713dsk_AIC23.cmd and an executable file will be created. The target hardware (DSK6713, DUETT) will be initialised and connected, the executable file..\get_started\debug\get_started.out will be loaded to the board. 2/5

The program will be started and stopped at the row main(). The Problems window should not show any error or warning and should not be opened respectively. After that, you re automatically switched to the Debug Perspective. You can return to the CCS Edit-Perspective via the buttons on the right top (Fig. 4, encircled in red). Fig. 4: View after Debug Run Run Resume or <F8> or the corresponding button (Fig. 4, left green arrow in the blue encircled area) starts the program on the DSP. You ll be asked for input in the Console window. 3 Example program get_started with signal input and output Using a simple demo program get_started.c and get_started_duett.c respectively you will now program the DSP for reading an audio signal via the CODEC and output the signal directly. The configuration of CODEC and McBSP is carried out in the given file c6713dskinit.h / c6713dsk_duett_init.h and in the system files dsk6713_aic23.h and dsk6713.h. The listed functions are implemented in the Board-System Library dsk6713bsl.lib, which will be added automatically while linking the project. Usually it s not needed to change one of these files! The desired samplerate has to be set in the variable fs. The following values can be set (Samplerate at the end of the strings): DSK6713_AIC23_FREQ_8KHZ DSK6713_AIC23_FREQ_32KHZ DSK6713_AIC23_FREQ_16KHZ DSK6713_AIC23_FREQ_24KHZ DSK6713_AIC23_FREQ_44KHZ DSK6713_AIC23_FREQ_48KHZ In fact, DSK6713_AIC23_FREQ_44KHZ workes with Fs=44,1 khz. The samplerate has to be set by dividers for 36621 Hz. The default case, div_timer0 = 1 and div_timer1 = 1 let work both McBSP at 36,621 khz. This allocation has to be carried out previous to: fs_act = SampleRates_DUETT(fs, div_timer0, div_timer1); The function MCBSP_read reads 32 bit integer from the ADC, so both channels together. These are buffered in an union. Via union_name.both you have access to the whole 32 Bit. An access to each single channel is delivered in union_name.channel[]. union_name.channel[1] contains the left channel data, the data from the right channel are stored in union_name.channel[0]. Correspondingly, function MCBSP_write outputs 32 bit integer to the DAC of the Codec. The DUETT version contains two interrupt service routines for both CODECs of PCM3003. 3/5

4 The CCS debugging tool Run Restart restarts the program and waits at the first row main(). Run Resume executes the program, with the Single Stepfunctions stepwise. Run Step Over or <F6> executes the program line by line. View further functions of the Run menu in Fig. 5. However, this will not produce internal DSP-register changes. If you wish to reinitialise the internal CPU and peripheral registers, you must execute Run Reset Reset CPU (before reloading via Run Debug). CCS offers excellent debugging possibilities, which will be introduced step by step. Among others you can: set and remove breakpoints in the source code run the program in single-step mode view mixed source and assembler code monitor variables view the content of the DSP register (DSP core registers, peripheral registers) view the content of any memory location Fig. 5: Debug functions (Run menu) Set a breakpoint right before the line you want to stop the program: place the cursor in front of the line number and double-click (or mark the line, right mouseclick, Breakpoint Breakpoint). A blue dot shows the breakpoint. The program in Fig. 6 run up to the breakpoint. View Breakpoints shows all breakpoints in a window. Right mouseclick on the breakpoint, then Breakpoint Properties opens a new window. You can choose as Action, whether the program should stop (Remain Halted) or e.g. run to the breakpoint again and again and refresh the windows choosing Update View or Refresh All Windows. This application is needed for graphical displays. You can set any number of breakpoints in all C or assembler code. Remember that the current position is marked with a blue arrow. In this way you can run the program piecewise. Individual breakpoints can be removed by double-clicking on the blue dot. Toggle Breakpoint in the menu (open with right mouseclick), sets or removes the breakpoint, Disable/Enable Breakpoint can be useful, setting a breakpoint always in the same line. Fig. 6: Halt at a breakpoint You can see the Disassembly window (View Disassembly) in the lower right part of Fig. 6. In this window you can observe assembly single steps. One or more (in case of parallel processing of statements) blue arrows show the current position of the program counter. 4/5

Fig. 7: Monitoring variables Fig. 8: View memory in the Memory Browser To monitor a variable, mark it, right mouseclick, then Add Watch Expression. Alternatively call View Expressions, add the variable in the opening window, see. Fig. 7. You have to suspend the program, if you want to change the variables content. Right mouseclick on Type allows changing the Number Format, e.g. to hex. You can also check the value of a variable without using the Expressions window: simply place the mouse arrow on the variable, and its value (and the start address respectively, if it is a function) is displayed. View the content of a memory location with View Memory Browser. The Memory Browser opens. Here you can enter the address like &a in the example in figure 8, click on <Go> and choose the data format, e.g. Hex 32 Bit C Style. View Registers opens a new window to observe the registers. Choosing Core Registers (interne CPU-Register), you can monitor and change the content of the 32 A and B registers and program counters PC. Further important registers are the interrupt registers ISTP, IFR, IER and IRP and the interrupt flag GIE (bit #0 in the CSR, see Fig. 9). Currently changed register content is highlighted in yellow; to change register content, select it with a mouseclick. Further registers can be monitored directly in this window: Peripheral Registers (for Timer, Interrupt and EMIF) as well as registers of the serial interfaces McBSP0 and McBSP1, controlling the CODEC. Fig. 9: View Registers Hint (arrange windows in CCS): A click on the right mousebutton to e.g. the register-tab, then choose Detached, releases the window, so you can move it freely and group it. Removing the checkmark in front of Detached implants the window in the CCS surface again. You can drag the subwindows easily to other parts of the CCS surface with the mouse. 5/5