I'm currently working on a project where I need to implement 9 different bandwidth filters on the TMS320C6713 DSK. From what I understand, I can change these settings using the DIP switches. However, there are only 4 DIP switches, so does that mean I am constrained to only implement 4 different filters instead? How can I increase the number of different settings available? I also plan to probably connect a rotary switch which is able to change these settings. Can anyone advise me on this?
You are constrained by the available hardware, any expansion hardware you design or add, your design creativity, and your system requirements.
For example, you could use switches 2-0 as a binary code for one of 8 filters and use switch 3 to toggle a setting. Return sw3 to off or 0, then change sw2-0. This does not give you 9 settings, but it gives you more than 4 and an idea of what you can do. Change the protocol for using the switches to cause a state machine to step through some sequence, but keep in mind that you will have to worry about switch de-bounce.
Search for answers, Ask a question, click Verify when complete, Help others, Learn more.
Thanks for the reply. So does that mean that for every switch, an "off" and "on" position would correspond to a setting? And if my train of thought is right, that means that the 4 DIP switches would correspond to 4X2 = 8 settings? Sorry if I didnt get you right..could you please further explain to me? And also FYI, I need to get the c6713 DSK board to incorporate other settings such as changing gains, lcd, etc...so I would need more settings. Is this even possible??
Please advise. Desperate for help.
Thanks so much.
In my opinion, you need to start with just getting one of your nine filters implemented and working right. Then you can add the DIP switch control fro that one filter, and then you can add additional filters and additional controls once you have the basic system working right. Stick with the basics for now, then worry about getting creative later.
With 4 DIP switches you can select 2 to the 4th power possibilities. That is binary encoding, and you really should have learned it early in your programming studies, but better late than never.
You don't need a separate switch to indicate switch-pattern changes. Just keep track of the "current" pattern, for which you have generated filter coefficients etc., and poll the switches every so often. Whenever the pattern doesn't match the stored pattern, store the new pattern as "current" and generate new coefficients etc.
As to specifying additional parameters, so long as you have a host PC attached running Code Composer Studio, you can use standard C stdin and stdout, so you can prompt for input and read input from a console window just as you normally would in any hosted C environment.
The interesting issue is how to interrupt a continous process, such as a read-process-write-repeat loop, which is necessary since whatever you try to type unsolicited at a console window does not cause an interrupt that your program can see to redirect its attention. So it is probably wise to reserve use of the DIP switches for things that need to be changeable during such a processing loop; for example, switch #1 might be used to indicate that the loop should be terminated and the user prompted for new input parameters via the console window, after which processing can resume. It is up to you to figure out how to design the user-input procedure so that the user can exert all the control he needs to.
Thanks for the feedback RandyP and Douglas. Now that I've managed to get some filters working, it would be good to trial and error some of the settings. Will post if things work out in the end.
Appreciate it guys.
All content and materials on this site are provided "as is". TI and its respective suppliers and providers of content make no representations about the suitability of these materials for any purpose and disclaim all warranties and conditions with regard to these materials, including but not limited to all implied warranties and conditions of merchantability, fitness for a particular purpose, title and non-infringement of any third party intellectual property right. TI and its respective suppliers and providers of content make no representations about the suitability of these materials for any purpose and disclaim all warranties and conditions with respect to these materials. No license, either express or implied, by estoppel or otherwise, is granted by TI. Use of the information on this site may require a license from a third party, or a license from TI.
TI is a global semiconductor design and manufacturing company. Innovate with 100,000+ analog ICs andembedded processors, along with software, tools and the industry’s largest sales/support staff.