I have a application where I need to measure and act upon a 12v pulsed signal ranging from 4000 pulses/second to 500,000 pulses/second.
Is the Arduino fast enough to see and act upon the pulse rate?
I have a application where I need to measure and act upon a 12v pulsed signal ranging from 4000 pulses/second to 500,000 pulses/second.
Is the Arduino fast enough to see and act upon the pulse rate?
Depends on what you mean by "act on". 500kHz = a pulse every 2 microseconds. It could count them, but if you needed to do anything too complex with the results you could drop pulses while they get "handled" (e.g., serial I/O, I2C I/O, etc).
-j
what I mean by act upon is - display the value somehow, probably a 7-segment display. "speedometer for my car"
"speedometer for my car"
That means you don't have to count them all which is good. In that case you have plenty of processing power in the Arduino.
yeah, as long as it will energize my flux capacitor at 77mph give or take a few seconds, Il be fine
If you don't really need 1:1 accuracy all the way out to six digits, then I would suggest you get a cheap clock divisor chip, and count THOSE pulses. For example, a divide-by-eight circuit feeding into the arduino. Then just add eight to your internal count. If timing is still tight, you can do other time-saving tricks like only updating one digit display at a time, or updating the whole thing only 30 times per second, etc. Just display an 8 in the last digit(s) if the count is over 1000 ticks/second to give a sense of "too fast to count".
Thanks, That is a great idea, very simple also.
If i could find a decade divider, which would output 1 pulse for every ten it see's. - That should reduce the workload on the Arduino quite a bit, while maintaining good accuracy.
A signal buffer, more or less.
Any suggestions on a divider?