Need help with VHDL code for metal detector

OP #2703792
Rate this post
useful
not useful
I am working on a metal detector at the moment but cant figure out how 
to implement it my VHDL code.
1
ENTITY sensor IS
2
     port ( metaldetector : in std_logic;
3
            metal : out std_logic;
4
          );
5
END ENTITY sensor;
As long as there isnt any metal close to the sensor 'metaldetector' gets 
pulses on a 6.1kHz frequency. So as long as the 'metaldetector' keeps 
getting pulses the out port 'metal' should be '0'.

When there is a pulse missing (or multiple pulses) 'metal' should become 
'1' until the next pulse.

It shouldnt be that hard to make a code that can do that, but i just 
cant figure it out. Any help would realy be great!
#2703833
Rate this post
useful
not useful
You need a reference clock of some kind.

Then, implement a watchdog counter. If the counter is bigger than the 
required trigger value, stop counting and set metal = '1'. Restart the 
counter and set metal = '0' with each pulse you get.

As the reference clock is asynchronous (most probably) don't forget 
proper synchronisation.

Reply

Please log in before posting.

or

Log in with Google account

Registration is free and takes only a minute.

Register now