Implementation
For this exercise, you will extend the system from Audio Effects: Using External Memory to generate a feedback-echo effect. You will then extend this echo effect to use the serial port on the DSP EVM. The serial interface will receive data from a MATLAB GUI that allows the two system gains and the echo delay to be changed using on-screen sliders.
Feedback system implementation
First, modify code from Audio Effects: Using External Memory to create the feedback-echo system shown in Figure 1. A one-tap feedback-echo is a simple audio effect that sounds remarkably good. You will use both channels of input by summing the two inputs so that either or both may be used as an input to the system. Also, send several test signals to the six-channel board's D/A converters:
- The summed input signal
- The input signal after gain stage G1
- The data going into the long delay
- The data coming out of the delay
You will also need to set both the input gain G0 and the feedback gain G1 to prevent overflow.
As you implement this code, ensure that the delay
n
and the gain values G1 and G2 are stored in memory and can be easily changed using the debugger. If you do this, it will be easier to extend your code to accept its parameters from MATLAB in MATLAB Interface Implementation.To test your echo, connect a CD player or microphone to the input of the DSP EVM, and connect the output of the DSP EVM to a loudspeaker. Verify that an input signal echoes multiple times in the output and that the spacing between echoes matches the delay length you have chosen.
MATLAB interface implementation
After studying the MATLAB interface outlined at the end of Using the Serial Port with a MATLAB GUI, write MATLAB code to send commands to the serial interface based on three sliders: two gain sliders (for G1 and G2) and one delay slider (for
n
). Then modify your code to accept those commands and change the values for G1, G2 and n
. Make sure that n
can be set to values spanning the full range of 0 to 131,072, although it is not necessary that every number in that range be represented.
0 comments:
Post a Comment