Skip to content

Arduino library to read the pulse-width of digital signals

License

Notifications You must be signed in to change notification settings

RCmags/pulseInput

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

20 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

PulseInput

This is a simple library for an interrupt based, non-blocking alternative to Arduino's pulseIn function. Since it uses interrupts to measure signals, one can read multiple signals without fear of delays in the main loop.

How it works

A pin change interrupt is used to detect when a signal is rising or falling, and the on-time of the signal is measured in microseconds. As such, this library is only suited to decode PWM-like signals, where the time of the pulse-width (on-time) determines the value of the signal.

image

Dependencies

This library depends on the PinChangeInterrupt library, so it works with standard Arduinos (Uno, Nano, Mega, etc) and the digiSpark ATTinys boards. Please see the documentation of PinChangeInterrupt to see if your board is supported.