Dual Tone Multi-Frequency (DTMF) Generation with TI-DSP TMS320C6713 Processor Objective The goals of this lab are to gain familiarity with TI DSP code composer studio and the TI-DSP Starter Kit (DSK). These goals can be accomplish by: • Programming the 4 dip switches, • Controlling the leds with dip switches, • Output through onboard codec. Walk-through 1. Power up the TI-DSP evaluation module. 2. Make sure the speaker is connected to the headphone jack. 3. Reset the board, by pressing the on-board reset button, there will be running LEDs and also an available “beep” as an indication that the on-board sound CODEC is working fine. 4. Perform the 6713 DSK Diagnostic Utility to verify the functionality of the DSK. 5. Make sure all the DSK passed all the diagnostics.
Figure 1: 6713 DSK Diagnostic Utility.
Part 1 1. Create a folder called “myprojects” on the desktop.
The location of the “myprojects” folder.
Figure 2: Code composer Studio.
2. 3. 4. 5. 6.
Run the C6713 DSK Code Composer Studio (C6713 DSK CCS). Go to Project Î New, create a project called dtmf. Make sure the Project Type is Executalble (.out) and Target is TMS329C67XX. Download the dtmf.cdb file from http://www.ece.mtu.edu/labs/EElabs/EE3306/resources. Once the project is created, go to Project Î Add files to project, add the DSK6713 Board Support Library (BSL)file. This library will simplify the communication with the board using C language. The file is located at C:\ti\c6000\dsk6713\lib\dsk6713bsl.lib. More information about this library can be found in HelpÎ TMS320C6713 DSK Î Software Î Board Support Library. 7. Next, include the “dtmf.cdb” file from the webpage. This configuration file will setup all the DSP/BIOS correctly for the use of this lab. 8. Finally, you can create a new file and begin the laboratory assignment. Remember to save the file as “dtmf.c” and include it to the project in order for it to run.
Figure 3: After including all necessary files.
Compiling into Machine Language 1. After writing the code, the next step is to compile the code to machine language. Go to Project Î Build. 2. The Build command will compile all the files that are include in this project and make an executable file for the DSP. 3. Compiler results are shown at the bottom of the window.
Rebuild All
Compiler windows
Figure 4: Compiler Comments.
4. Loading Program into DSP Processor 1. Finally, to run the program, load the program into the DSP. Go to File Î Load Program. Load the executable file (.out) that the compiler generated (generally in the Debug directory of the project).
Figure 5: Load Program.
2. The run the file loaded into the DSP. Go to Debug Î Run.
Run
Figure 6: Program running.
Laboratory Assignment Task 1 First part of the laboratory is to program the each dip switch to control their respectively numbered led (e.g. dip switch # 1 controls led #1, etc). HAVE YOUR TA VERIFY YOUR WORK TO THIS POINT
(initials) ___________
Task 2 DTMF tones are used in telephone for tone dialing. Each key on a keypad has a distinct sound made up of two single-frequency tones. One tone represents the column and the other tone represents the row as shown in Figure 7. For example if you push the 2 key, you get two tones one at 1336Hz because it is in column 2 and one at 697 Hz because it is in row 1. Therefore, when a number is dial on a dial tone phone, the actual detection of the number dial is through detection of what tones that are being dialed.
Figure 7: DTMF frequencies.
In task 2, you are required to generate the all the 12 buttons/keys on a conventional dial-tone phone. You are going to program the dip switches to generate different DTMF tone. The dip switches will act as binary bit which correspond to Table 1. Binary 0000 0001 0010 0011 0100 0101
Symbol 0 1 2 3 4 5
Binary 0110 0111 1000 1001 1010 1011
Symbol 6 7 8 9 * #
Table 1: Dip switch condition and symbol.
The dip switches and LEDs are labeled from 0 – 3. Therefore, your program will reflect that the least significant bit correspond to dip switch # 3 and led # 3. Hint : Basically, the DSP must (1) read the input from the dip switches, (2) determined which switch is pressed, (3) generate the standard touch-tone frequencies for that switch combination corresponding to Table 1 and finally, output the tones through the connected speaker. HAVE YOUR TA VERIFY YOUR WORK TO THIS POINT
(initials) ___________