Strictly necessary cookies are on by default and cannot be turned off. Functional, Performance and Tracking/targeting/sharing cookies can be turned on below based on your preferences (this banner will remain available for you to accept cookies). You may change your cookie settings by deleting cookies from your browser. Then this banner will appear again. You can learn more details about cookies HERE.
Strictly necessary (always on)
Functional, Performance and Tracking/targeting/sharing (default off)
Im working on some existing code that takes a PDM signal from a digi MEMS mic and Im looking to edit the 128 filter coefficients in the DFB (Droop filter) component. I came across this post: http://www.cypress.com/forum/psoc-3-architecture/digital-filter-block which goes some way to explain how to do this but Im stumped on the conversion from my custom floating point filter coefficients (between -1 and +1) to the required uint32 hex values required in the file "Filter_RAM_Data.c", variable "CYCODE Filter_data_b". These values are in the form: 0x00FFF293u.
Im trying to re-purpose the DFB that is already present in the firmware rather than bring in a Filter component.
Any help would be much appreciated, and push my project nicely!
To clarify your query, would you like to know about adding custom coefficients in the Filter Component? If you add the custom coefficients in the component, you need not worry about converting them to uint32 hex and Creator by itself does that. We recommend to use Filter component for this.
Could you please clarify the requirement in more detail?
The filter component does seem to make life easy by handling the coefficient conversion, but Im working on an existing code base that implements the DFB component to perform a CIC droop compensation. Ive attached a cysch shot for info. Replacing the DFB with a Filter component would be great, but that may be punching above my PSoC weight. Help on doing this would be much appreciated or a way to do it using the existing DFB would also be fantastic.