Search the Community

Showing results for tags 'pmodmic3'.

More search options

  • Search By Tags

    Type tags separated by commas.
  • Search By Author

Content Type


  • News
    • New Users Introduction
    • Announcements
  • Digilent Technical Forums
    • FPGA
    • Digilent Microcontroller Boards
    • Non-Digilent Microcontrollers
    • Add-on Boards
    • Scopes & Instruments and the WaveForms software
    • LabVIEW
    • FRC
    • Other
  • General Discussion
    • Project Vault
    • Learn
    • Suggestions & Feedback
    • Buy, Sell, Trade
    • Sales Questions
    • Off Topic
    • Educators
    • Technical Based Off-Topic Discussions


  • Community Calendar

Find results in...

Find results that contain...

Date Created

  • Start


Last Updated

  • Start


Filter by number of...


  • Start





Website URL







Found 5 results

  1. Hello everyone, I’m a newbie on working on zedboard, and I want to use my Zedboard to communicate with Pmod MIC3 this time. I did a few researches about how to use the Pmod MIC3, and I think I found something useful in another post, link: I’m really appreciate and thanks for their help, but unfortunately I still have no idea of how to make my Pmod MIC3 to run with my Zedboard. I know Pmod MIC3 is using SPI communication protocol and I read what SPI is, link: But I’m not sure is that Quad SPI is the same as SPI in Zedboard. About the Pmod MIC3, I know that it used a MEMS Mic and an ADC, but I also don’t know how to implement it, like do I need a code or IP cores to handle these 2 components? Here is a simply conclusion of my questions: 1. How to use SPI in Zedboard? (Any pin configuration is required?) 2. Do I need a code or something else to handle the ADC and MEMS Mic in Pmod MIC3? 3. Is it possible to make this project work in .vhdl? Or I need something else? 4. How to getting start with? 5. Importance of IP core I know IP cores is an important thing, but I don’t get a clear idea about it and how it works with Vivado. Any help and reference suggestions is appreciated! Thanks 😊 !!
  2. Junior_jessy


    Hello, I'm trying to make a voice-activated on a nesys4 and i want to use the pmodMic3.To do si, I want to use the SPI protocol but i don't know how. So how can i choose the SPI protocol ? Furthermore, I got some issues when filling in the constraint's file. On the web-site of Diligent, the pin2 is not connected but, the protocol SPI show the opposite. So how to Well connect the in/out of the peripheral to the board in the constraint's file? Thank you in advance for your answer. Junior
  3. We are trying to investigate whether the PmodMIC3 would be a suitable microphone to use for a project, but we cannot find details on how the 12-bits of digital data sent should be interepreted. There is a link on your website to a "user guide" but that link is broken. Go to and click "user guide", it will bring you to where it says "This topic does not exist yet". Is it possible to repair this link so we can obtain this user guide? Thank you very much.
  4. I got a bit bored yesterday, and hooked the PMODmic3 up to my PMODamp3 design, and put a small delay (of 32768 samples). The VHDL module for the microphone interface is actually surprisingly small : ---------------------------------------------------------------------------------- -- Engineer: Mike Field <[email protected]> -- -- Module Name: pmod_mic3 - Behavioral -- -- Description: Sample input form a PMOD_MIC3, once every 256 ticks of the -- master clock (mclk). ---------------------------------------------------------------------------------- library IEEE; use IEEE.STD_LOGIC_1164.ALL; use IEEE.NUMERIC_STD.ALL; entity pmod_mic3 is Port ( mclk : in STD_LOGIC; sclk : out STD_LOGIC; cs : out STD_LOGIC; sdat : in STD_LOGIC; de : out STD_LOGIC; sample : out STD_LOGIC_VECTOR (15 downto 0) := (others => '0')); end pmod_mic3; architecture Behavioral of pmod_mic3 is signal counter : unsigned(7 downto 0) := (others => '0'); signal data_sr : std_logic_vector(11 downto 0) := (others => '0'); begin process(mclk) begin if rising_edge(mclk) then de <= '0'; if counter > 5 and counter < 6 + 16*8 then cs <= '0'; else cs <= '1'; end if; if counter(2 downto 0) = 0 then data_sr <= data_sr(10 downto 0) & sdat; end if; if counter = 17 * 8 then --------------------------------------------- -- convert the 12-bit unsigned sample to the -- lowest 12 bits of a 16-bit signed sample -- by adding it to -2048 --------------------------------------------- de <= '1'; sample <= std_logic_vector(to_unsigned(63488,16) + unsigned(data_sr)); end if; sclk <= std_logic(counter(2)); counter <= counter + 1; end if; end process; end Behavioral; If interested, the rest of the code is at
  5. I've finally got my PmodMIC3 out of it's back and have it up and running. It's pretty interesting how the MEMS microphones work - it seems to be much like this, but at audio frequencies: