On Sun, Mar 12, 2017 at 5:47 AM, Dror Lugasi <[email protected]> wrote:

> Hi guys!
>
> I am writing a program with C++ for the BBB that has some serial ports and
> Ethernet communication, and i want to control the GPIO with it.
>
> At this moment i am able to activate / read / write / and choose in or out
> for the digital GPIO, and also read the analog input.
> I am doing everything with the function "system" that runs a terminal
> command.
>
> I am doing this only cause all the tutorials i saw about GPIO are from the
> terminal, sending 'echo' and 'cat' to the GPIO's files in the
> /sys/class/gpio path's..
>
>
> is this a reasonable way? i don't need the GPIO switching to be lightning
> fast.
> I saw that there are some libraries (like BlackLib for example) for
> controlling the GPIO but my question is: does they do exactly that?
> or do they reach the hardware from a better/faster way??
>
> same goes to all other features like PWM, I2C etc...
>
> Thanks for your attention!
>

You need only learn how to read, and write from / to files using C++. Once
you have that figured out, you just need to learn what files to read from,
and write to for the desired effect.

One thing to understand, is that the only real advantage of C++ over C in
this case. Is that C++ has "real" string objects. Instead of C's character
arrays. So some may argue that C++ is "safer", which to some extent may be
true. But most of your code will be C. . . and if you  pay attention to
what you're doing. Either language will work fine.

Anyway, if you search the internet with keywords such as "beaglebone GPIO
in C", then ignore all the mention of libraries. You'll get a good idea of
how this is done. But you can view the command "cat" as a read, and "echo"
as a write to a file. So you could adapt command line examples into C or
C++ just as easily. If you're familiar with either language.

Here is a real C++ example for GPIO on the beaglebone through, using the fs
object:
http://stackoverflow.com/questions/21198933/how-to-control-beaglebone-gpio-pins
It's not as clean as I like for C, but it's true C++.

-- 
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].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/beagleboard/CALHSORo9mDEjJUEn4%3Df1mjx0XJ6HmozKeus5o-z%3DUZzafRyniA%40mail.gmail.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to