reztronics
Home - Products - News - Services - Music - About Us
The TMS320C5416 DSP Starter Kit
The TMS320C56 is fixed-point Digital Signal Processor produced by Texas Instruments. It is one of the most popular fixed-point signal processors.
Spectrum Digital produces a DSK( DSP Starter Kit) called the DSK5416. It is one of the most useful development environments I've used. The DSK consists of:
One TMS320C542 enhanced fixed-point DSP with 40 MIPS (25-ns instruction cycle time)
10K words of dual-access RAM
2K words of boot ROM
One time-division-multiplexed (TDM) serial point
One buffered serial port (DSP)
One host port interface (HPI) to PC-to-DSP communications
One on-chip timer
Three power-down modes on the TMS320C542
Programmable, voice-quality TLC320AC01 (DAC, ADC interface circuit)
Socketed PAL22V10 for board customization
Socketed Oscillator
Phase-locked-loop (PLL) clock generator
XDS510 emulator header
I/O expansion bus and control signals for external designs
Standard 1/8-inch mono mini-jacks for analog I/O (microphone and multimedia speakers.
Ok, so that's the official description, but what does it mean? Well the board provided you with four main components of interest.
The Code Composer Studio integrated development environment. This allows you to write code, compile it and download it to the processor.
The PCM Codec. This allows you to read and write 16 and 32-bit audio samples to and from the 1/8 inch jacks.
The DIP switch. This provides you with four binary switches the you physically change and whose state can be read by the processor.
The LED's. This provides you with an interface to use for conveying the state of control signals or the state of the switches.
The DSK5416 API
One of the great features of the DSK is the custom API provided to interface with the specific kit configuration (i.e. where the PCM codec tied to the buffered serial ports).
here is a program to test the DIP switches and LED's.
here is a program to test the PCM Codec by reading and writing samples.
The PCM codec API
Here are commands that let you control the PCM codec
DSK5415_PCM3002_openCodec() : This
command allows you to open the PCM codec and communicate with it using a
handle.
DSK5416_PCM3002_closeCodec() : This
command allows you to close the PCM codec.
DSK5416_PCM3002_setParams() : This
command allows you to set parameters relating to the codec's
operation.
DSK5416_PCM3002_read16()
: This command reads16 bits from the codec data stream .
DSK5416_PCM3002_read32()
: This command reads 32 bits from the codec data stream.
DSK5416_PCM3002_write16()
: This command writes 16 bit value to the codec data stream.
DSK5416_PCM3002_write32()
: This command writes 32 bit value to the codec data stream.
DSK5416_PCM3002_rset()
: This commands sets the value of a codec control register.
DSK5416_PCM3002_rget()
: This command returns the value of a codec register.
DSK5416_PCM3002_outGain()
: This command sets the codec output gain.
DSK5416_PCM3002_loopback()
: This command enables/disable the codec loop-back mode.
DSK5416_PCM3002_mute()
: This command enables/disables the codec mute mode.
DSK5416_PCM3002_powerDown() : This command enables/disables the codec powerdown modes.
DSK5416_PCM3002_setFreq() : This command sets the codec sample rate.
The DIP Switch
Here are commands that let you control the DIP switch.
DSK5416_DIP_init()
: This command initializes the DIP switches.
DSK5416_DIP_get() : This command reads the DIP switches.
The LED's
Here are commands that let you control the LED's.
DSK5416_LED_init()
: This command initializes the LED’s.
DSK5416_LED_off()
: This command turns specified LED off.
DSK5416_LED_on()
: This command turns specified LED on.
DSK5416_LED_toggle() : This command toggles specified LED.