LabVIEW Embedded

cancel
Showing results for 
Search instead for 
Did you mean: 

Peak Poke GPIO LM3S8962

I need to be able to use a GPIO as both an input and an output in an application  When configuring a GPIO pin as an input and as an output using EIO nodes, I get a broken arrow.  I am using the Peak / Poke VIs to setup the GPIO lines manually.  To setup a Port/Line I've configured the

Run Mode Clock Gating Control Register 2 (RCGC2) register and the GPIO Direction Register (GPIODIR). 

 

In using the Peak/Poke VIs, I have not been able to set the data on GPIO Port D Line 6, but I have been able to set the direction.  I verfied using Keil.  Is there another register that I must write to in order to setup a GPIO line?  Or is there a workaround to use the EIO nodes?

 

Jeff

 

 

 

 

0 Kudos
Message 1 of 4
(6,945 Views)

I would recommend using C nodes and the peripheral driver library API provided by LuminaryMicro - which is already linked into the project by LV ARM, as it is using it in the background.

Check out this link for complete documentation: http://www.luminarymicro.com/products/peripheral_library.html . The API actually has a very good documentation.

Message 2 of 4
(6,932 Views)

As Paul mentioned, I would use inline C nodes.  You can look at \LabVIEW 2009\Targets\Keil\Embedded\RealView\Generic\LM3Sxxxx\lib\src\LM3Sxxxx_GPIO.c (which is the GPIO EIO driver) for examples on how to call into the luminary driver API.

 

Also, LM3S8962 GPIO EIO will allow read/write on the same pin in the next release of LabVIEW for ARM.

Message 3 of 4
(6,929 Views)
I tried looking in the source files myself, and got a bit confused. Before doing that, I`d recommend installing the StellarisWare package (for the specific board/device you are working on, the LM3S8962) from LuminaryMicro and checking out the very vast PDF that documents the API - I found almost everything I needed in there. Indeed, for finer control/documentation, you can look into the library`s source files.
Message 4 of 4
(6,927 Views)