No, I don't, but having taught programming for over 40 years, I know
that students would take your equation and plug it in and then be
surprised that they get 0 for an answer.
On 11/1/2015 6:13 PM, William Hermans wrote:
/Or 4024 * 1.8 / 4096?/
Ok, so let us put this another way. Do you think that is clear when
written in code ? What if 1.8 were actually assigned to a constant
pointer ?
On Sat, Oct 31, 2015 at 5:01 AM, Chad Baker <[email protected]
<mailto:[email protected]>> wrote:
Or 4024 * 1.8 / 4096?
On 10/30/2015 12:18 PM, William Hermans wrote:
By the way, the ADC gives out a value of 0-4095. So scaling
voltage is really simple. Say you get a value of 4024 for a
reading. In order to get a reading from 0-1.8v from this . . .
((4024 / 4096) * 1.8) or 1.768359375v
The max voltage on the pins still can not exceed 1.8v, this is
why one needs an opamp, or similar device to keep the input
scaled down. But, in this manner you could even track large
voltages. Hundreds or even thousands of volts, at the cost of
resolution. Which unfortunately can not be avoided. So going by
the above example . . .
((4024 / 4096) * 300) or 294.7265625v
Does this make sense ?
On Fri, Oct 30, 2015 at 9:59 AM, William Hermans
<[email protected] <mailto:[email protected]>> wrote:
/BBB and Linux are new to me. One of the things I would
like to do is compute a ratio between two voltages, each
of which might exceed 1.8 VDC. One solution might be to
use DACs to sent feedback voltages to operational
amplifiers that are supplied by 1.8 VDC. The goal is to
determine the ratio as quickly as possible and without
waiting for Linux to get around to it (waiting for the
ADC to happen)./
What sample rate do you need ? If something around only a few
thousand samples a second. This can be done from userspace
without using the PRU's. You can even use mmap() with
/dev/mem/ and directly manipulate the ADC's registers, which
can sample the ADC faster than 200ksps. However, the sample
rate would not be as deterministic as using the PRU's.
You can use a PRU to read the ADC's for sure. If you search
the web for Beaglebone PRU + ADC
, you will find many ways. People have been doing this for a
long time( since the beaglebone white ), and if you search
this google group, you'll even find full code for something
someone called "ADCcollector". It's C, and PASM assembly, but
is a very short / easy read / understanding.
As for how to physically connect to the ADC, I'd listen to
evilwulfile. He's been an EE for longer than many people on
this group have been alive, and he knows his stuff ( I know
him personally ). Don't risk burning up your board, as I've
seen several people on these groups do . . .
On Fri, Oct 30, 2015 at 9:43 AM, TJF <[email protected]
<mailto:[email protected]>> wrote:
Hi John!
As Przemek mentioned, a simple voltage divider can scale
the input voltage. Additionaly I use a LED (orange color)
between the ADC input and ground in order to block
overvoltage. (The LED starts to light up at 1V5 and
consumes full power at 1V8. 1 / 6 of the ADC resolution
get lost (is less accurate), but the burning LED as
indicatior is a nice side effect.)
Regarding software you should have a look at libpruio
<http://hackaday.com/2015/02/16/library-upgrade-to-pru-gives-fast-io-on-beaglebone/#comments>.
BR
--
For more options, visit http://beagleboard.org/discuss
---
You received this message because you are subscribed to
the Google Groups "BeagleBoard" group.
To unsubscribe from this group and stop receiving emails
from it, send an email to
[email protected]
<mailto:[email protected]>.
For more options, visit https://groups.google.com/d/optout.
--
For more options, visit http://beagleboard.org/discuss
---
You received this message because you are subscribed to the
Google Groups "BeagleBoard" group.
To unsubscribe from this group and stop receiving emails from it,
send an email to [email protected]
<mailto:[email protected]>.
For more options, visit https://groups.google.com/d/optout.
--
Chad Baker Memphis, TN
--
For more options, visit http://beagleboard.org/discuss
---
You received this message because you are subscribed to the Google
Groups "BeagleBoard" group.
To unsubscribe from this group and stop receiving emails from it,
send an email to [email protected]
<mailto:[email protected]>.
For more options, visit https://groups.google.com/d/optout.
--
For more options, visit http://beagleboard.org/discuss
---
You received this message because you are subscribed to the Google
Groups "BeagleBoard" group.
To unsubscribe from this group and stop receiving emails from it, send
an email to [email protected]
<mailto:[email protected]>.
For more options, visit https://groups.google.com/d/optout.
--
Chad Baker Memphis, TN
--
For more options, visit http://beagleboard.org/discuss
---
You received this message because you are subscribed to the Google Groups "BeagleBoard" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
For more options, visit https://groups.google.com/d/optout.