Hi everyone this is my first post on the forum!
I was wondering if anyone could point me to the right direction. I wanted to interface with a 555timer in astable mode and get its digital values so they could be compared programmatically with other parameters.
Returns the number of milliseconds since the Arduino board began running the current program. This number will overflow (go back to zero), after approximately 50 days.
digitalRead([pin#]); gives you digital status info.
milliscount=millis(); gives a time reference.
delay([ms]); gives a delay.
START
milliscount (start the count)
digitalRead (read the 555)
delay (delay known time in ms)
milliscount (read the count)
digitalRead (read the 555)
By alternating these three statements in a loop you develop data that would essentially plot the HIGH/LOW status with
respect to time.
Page 10.
I would suggest using the pulseIn() function.
Call it once to measure the width of the high pulses, then again to measeure the width of the low pulses.
Do whatever math needed to report period, % of time high or low, whatever.
See the Reference page for pulseIn.
Do not exceed 5V for the 555 signal you are measuring. Use a 2-resistor voltage divider if needed to bring output down to a 5V level.