Go Down

Topic: Use a POT to control a time limit (Read 964 times) previous topic - next topic

Tomsta

I wanna use a POT to control the time of a certain function and for the life of me i can't work out how to get the POT to control the time could someone try to explain it to me (no code if you can help it)

Note; already read the "BlinkWithoutDelay" just wanna adapt it slightly

dhenry

Forget about the pot portion: can you control the time of a certain function?

Once you  have that figured out, try to read the pot's value and then use that value to control the time of a certain function.

AWOL

The analogRead will return a value in the range 0 .. 1023.
If this isn't a convenient range of values, you could use the "map" function to get it to more convenient units, or, as you did in your LED dimmer, just use simple arithmetic.

Plug the resulting value into the "interval" variable in blink-without-delay.
"Pete, it's a fool looks for logic in the chambers of the human heart." Ulysses Everett McGill.
Do not send technical questions via personal messaging - they will be ignored.

Tomsta


The analogRead will return a value in the range 0 .. 1023.
If this isn't a convenient range of values, you could use the "map" function to get it to more convenient units, or, as you did in your LED dimmer, just use simple arithmetic.

Plug the resulting value into the "interval" variable in blink-without-delay.

that's what i ended up doing but not sure if it works (as i have no cable can't tell if it's working) and i don't wanna use interputs in my programme just yet

AWOL

You're over-thinking - user-defined interrupts are not part of this problem.
"Pete, it's a fool looks for logic in the chambers of the human heart." Ulysses Everett McGill.
Do not send technical questions via personal messaging - they will be ignored.

kf2qd

Read the POT using analog in. Write or scale that value into the variable you use in your time delay loop.

No need for interrupts  or other complex processing. Every time through loop read the POT and update the variable with the delay time.

Tomsta


Read the POT using analog in. Write or scale that value into the variable you use in your time delay loop.

No need for interrupts  or other complex processing. Every time through loop read the POT and update the variable with the delay time.

no idea how to scale that value, i've used "analogeRead" but doesn't work

AWOL

#7
Nov 13, 2012, 10:50 pm Last Edit: Nov 13, 2012, 10:53 pm by AWOL Reason: 1
Quote
i've used "analogeRead" but doesn't work
And that means what exactly?
(The compiler expects you to spell it correctly, if that's what you meant)

Scaling usually involves an arithmetic function.
"Pete, it's a fool looks for logic in the chambers of the human heart." Ulysses Everett McGill.
Do not send technical questions via personal messaging - they will be ignored.

Tomsta


Quote
i've used "analogeRead" but doesn't work
And that means what exactly?
(The compiler expects you to spell it correctly, if that's what you meant)

Scaling usually involves an arithmetic function.

using the "analogeRead()" read in the pot value, but i don't know what to devid the value by to get the scale right

AWOL

How do you normally divide something?
"Pete, it's a fool looks for logic in the chambers of the human heart." Ulysses Everett McGill.
Do not send technical questions via personal messaging - they will be ignored.


AWOL

So what's the problem?
Did you read reply #2?
"Pete, it's a fool looks for logic in the chambers of the human heart." Ulysses Everett McGill.
Do not send technical questions via personal messaging - they will be ignored.

Go Up