Appendix C of this manual has information on how to add field programming capabili- ty. A circuit diagram is provided that may be added to the field application of the SPPDM-01 which emulates the SPPDB-01 development board and permits field loading of new filter coefficient sets.
SPPDF-01 Development Suite User’s Manual Chapter I Introduction See Figure 1 for SPPDF-01 hardware configuration: Figure 1 - SPPDF-01 Hardware Configuration An oscilloscope is recommended for troubleshooting and a network analyzer is presented as an example of a frequency-magnitude, frequency-phase signal characteristic analyzer. 25 Locust St, Haverhill, Massachusetts 01830 •...
Chapter II of this document will be directed to MatLab users who wish to use Frequency Devices’ FCG-GUI to design standard FIR filters for the SPPDM-01. The experienced MatLab filter designer may skip Chapter II and go right to Chapter III, the Filter Coefficient Loader (FCL) section.
SPPDF-01 Development Suite User’s Manual Chapter II Filter Coefficient Generator 2.1. FCG Installation and Startup: Install the FCG software by inserting the CDDF-01 disk into the PC, CDRom drive. Select the drive in Explorer or use the RUN menu. CLICK on the Filter Coefficient Generator folder, then CLICK on "SETUP"...
Page 7
Control (Fp2) and the Second Stop-band Cutoff Input Control (Fs2) will be disabled. 2. Sampling Frequency Input Control: Specifies the sampling frequency. Sampling fre- quency must be entered. Required sampling rate for the SPPDM-01 family of prod- ucts is always 48000Hz.
Page 8
SPPDF-01 Development Suite User’s Manual Chapter II Filter Coefficient Generator Rp: Pass-band Ripple Input Control enters a numeric value interpreted as the Pass- band Ripple (Rp in dB) for every type of filter selected. When entering values, a good ripple value is one that produces convergence in the FIR coefficient generation algo- rithms when combined with the other relative specifications.
Page 9
SPPDF-01 Development Suite User’s Manual Chapter II Filter Coefficient Generator 2.2.4 Group D, Message (Items 15 - 16) - contains an indicator that shows system status, and generation process information at specific instances. This group also presents controls’ (tooltips) about functional characteristics. 15.Message Text Box Window: This window continuously shows messages and process status conditions.
"raw" coefficient data into FIR specifications recognized by the SPPDM-01 FIR filter algorithm. For this to occur, the FCL uses a "software plug" (see Appendix B) that groups a set of dynamically linked subroutines for translation formatting of coefficient data into a recognizable pattern of information.
SPPDF-01 Development Suite User’s Manual Chapter III Filter Coefficient Loader After installation of the software, two shortcuts are inserted on the desktop, namely FCL and FCLScript. The software must be configured to run under the installed version of MatLab by running the FCLConfig file located under the FCG directory Program Files in the Windows directory.
Page 12
Filter Coefficient Loader 1. Filter Number: CLICK on this control whenever a single set of coefficients is to be loaded into the SPPDM-01 external memory. Selecting this control enables the Filter Number Input Control Window (Item 2). 2. Filter Number Input Control Window: This control is enabled whenever the Filter Number Selector is used.
Page 13
This starts the translation, formatting and loading process through the "software plug (Appendix B)". After successful com- pletion, the coefficients will reside in the SPPDM-01 external memory. This command will only execute after all required parameters have been entered and validated.
Page 14
SPPDF-01 Development Suite User’s Manual Chapter III Filter Coefficient Loader 19. "Verify" & 20. "Erase": These command buttons are "dummy" buttons. They are for features yet to be implemented. They are provided as tools for the experienced pro- grammer who wishes to add commands to start a specific sequence of instructions. Their default function is to present a message to the user.
), up to 512 different filter numbers (coefficients) can be selected for each channel on SPPDM-01. Although the FCG can create 1 to 682 sets of filter coefficients at one time, only the first 512 sets are accessible. To select a filter number, set D according to the following formula.
Second Stop-band Cutoff Input Control are disabled and no longer visible. 3. Sampling Frequency: Enter 48000 (Hertz) as the sampling frequency. This value is con- stant for the SPPDM-01 family of products. Remember to drop units (Hertz) when enter- ing this and the following parameters 4.
SPPDF-01 Development Suite User’s Manual FCG Immediate Mode Operation Appendix A - Example 2 Single Set Coefficient 9. Fs/Fs1 - Enter the Stop-band Cutoff Frequency: Enter 11050 (Hertz) as the stop-band cutoff frequency. 10. Rs - Enter the Stop-band Attenuation: Enter 98.5 (dB) as the Stop band Attenuation. Drop the negative sign when entering this parameter.
Page 18
Remember: When clearing or quitting the workspace, the coefficients data will be lost unless the variables are saved to the workspace. After saving them, the coeffi- cients may be used as desired: i.e. loading into the SPPDM-01 platform, mathemati- cal transformation, inspection, etc. Follow MatLab ’s and the FCL’s instructions for...
FCL-GUI. 3. Sampling Frequency: Enter 48000 (Hertz) as the sampling frequency. This value is con- stant for the SPPDM-01 family of products. Remember to drop units (Hertz) when enter- ing this and the following parameters 4. Frequency Step: Enter 1000 as the frequency increment between sets of coefficients.
SPPDF-01 Development Suite User’s Manual FCG Immediate Mode Operation Appendix A - Example 3 Multiple Coefficient Sets 8. Rp - Enter the Pass-band Ripple: Enter 0.01 (dB) as the pass-band ripple. 9. Fs/Fs1 - Enter the Stop-band Cutoff Frequency: Enter 11050 (Hertz) as the stop-band cutoff frequency.
Page 21
Remember that, when clearing or quitting the workspace, the coefficients data will be lost unless the variables are saved to the workspace. After saving them, the coefficients may be used as desired: i.e. loading into the SPPDM-01 platform, mathematical transforma- tion, inspection, etc. Follow MatLab ’s and the FCL’s instructions for performing these...
7. Select the Data (Bits) Number: Select 8 as the number of data bits for the selected com- munication port. This value is constant for the SPPDM-01 family of products. 8. Select the Stop (Bits) Number: Select 1 as the number of stop bits for the selected com- munication port.
Page 23
SPPDM-01’s external memory into the DSP internal memory where it is interpreted as valid FIR filter characteristics in the frequency domain. 16. Inspect or work with the SPPDM-01’s FIR filter: The filter may now be selected in Manual Mode Operation, Appendix A - Example 1 (with DIP switches), or automatically (with a computer program).
7. Select the Data (Bits) Number: Select 8 as the number of data bits for the selected com- munication port. This value is constant for the SPPDM-01 family of products. 25 Locust St, Haverhill, Massachusetts 01830 • Tel: 800/252-7074, 978/374-0761 • FAX: 978/521-1839...
Page 25
DSP internal memory where it is interpreted as a valid FIR filter char- acteristics in the frequency domain. 14. Inspect or work with the SPPDM-01’s FIR filter: The filter may now be selected in Manual Mode Operation, Appendix A - Example 1 (with DIP switches), or automatically (with a computer program) by setting the selection code to the desired filter location (num- ber).
M-file. The "software plug", MEX-file or DLL using the FCL implements serial communication rou- tines that provide the protocol link for the loading of coefficients into the SPPDM-01 filter plat- form. The Software "Plug" syntax: The "software plug" may be called using the following syntax: [data, status] = RS232MEX (command, parameters) The command input is a character string.
Page 27
SPPDF-01 Development Suite User’s Manual Appendix B Sotware Plug OutFlushCommPort: Purpose: Removes all data from the output queue. Algorithm: Removes all characters from the output queue of the specified port. Syntax: [data, status] = RS232MEX(action, [CommPort]) Parameters: int CommPort - communication port to flush Examples: [result, condition] = RS232MEX('FO', [2]) [result, condition] = RS232MEX('fo', [2])
Page 28
SPPDF-01 Development Suite User’s Manual Appendix B Software Plug 9.1.4. ReadCommPort: Purpose: To read the specified number of bytes from the input queue. Algorithm: Reads desired number of bytes from input queue of the specified port and stores them in Buffer. Returns either on timeout or when Count bytes have been read.
Page 29
SPPDF-01 Development Suite User’s Manual Appendix B Software Plug 9.1.6. WriteCommPort: Purpose: To write the specified number of bytes to the output queue. Algorithm: Writes Count bytes to output queue of specified port. Returns an integer indicating number of bytes placed in queue. Syntax: [data, status] = RS232MEX(action, [CommPort, Buffer, Count]) Parameters:...
Page 30
SPPDF-01 Development Suite User’s Manual Appendix B Software Plug Example: % assign values to structure element parameter3.port = 2; parameter3.file = 'c:\RS232MEX\TextFileToWriteTo.txt'; parameter3.position = 0; parameter3.count = 24; parameter3.temination = -1; [result, condition] = RS232MEX('RF', parameter3) [result, condition] = RS232MEX('rf', parameter3) 9.1.8.
Page 31
• Run Filter Coefficients Generator (FCG) software to create a set of filter coefficients. • Run Filter Coefficients Loader (FCL) software to download the coefficients into the SPPDM-01 via the RS232 port on the SPPDB-01 development board. • Remove and re-apply power to reset the SPPDM-01 •...
Coefficient Memory Access Incorporation of the following circuit schematic into the OEM subassembly permits reprogram- ming and modification of the SPPDM-01 with the SPPDF-01 Filter Coefficient Loader (FCL) soft- ware utilizing MatLab V5.3 or V6.0 and an RS232 interface. Essentially, the circuit below mim- ics the SPPDB-01.
Need help?
Do you have a question about the SPPDM-01 and is the answer not in the manual?
Questions and answers