FreeBASIC header file for libpruio. More...
#include "BBB/prussdrv.bi"
#include "BBB/pruss_intc_mapping.bi"
#include "pruio.hp"
#include "pruio_adc.bi"
#include "pruio_gpio.bi"
#include "pruio_pwmss.bi"
Go to the source code of this file.
Classes | |
class | BallSet |
Structure for Control Module, containing pad configurations. More... | |
class | PruIo |
Main structure, binding all components together. More... | |
Macros | |
#define | PRUIO_VERSION /* "0.2" */ |
version string | |
#define | AM33XX |
tell pruss_intc_mapping.bi that we use ARM33xx | |
#define | PRUIO_CHAN /* CHANNEL5 */ |
the channel for PRU messages (must match PRUIO_IRPT) | |
#define | PRUIO_MASK /* PRU_EVTOUT5_HOSTEN_MASK */ |
the mask to enable PRU interrupts (must match PRUIO_IRPT) | |
#define | PRUIO_EMAP /* PRU_EVTOUT5 */ |
the event for PRU messages (mapping, must match PRUIO_IRPT) | |
#define | PRUIO_EVNT /* PRU_EVTOUT_5 */ |
the event for PRU messages (must match PRUIO_IRPT) | |
#define | ArrayBytes(_A_) /* (UBOUND(_A_) + 1) * SIZEOF(_A_) */ |
Macro to calculate the total size of an array in bytes. | |
#define | BallCheck(_T_, _R_) /* IF Ball > PRUIO_AZ_BALL THEN .Errr = @"unknown" _T_ " pin number" : RETURN _R_ */ |
macro to check a CPU ball number (0 to 109 is valid range) | |
Typedefs | |
typedef BYTE | Int8 |
8 bit signed integer data type | |
typedef SHORT | Int16 |
16 bit signed integer data type | |
typedef LONG | Int32 |
32 bit signed integer data type | |
typedef UBYTE | UInt8 |
8 bit unsigned integer data type | |
typedef USHORT | UInt16 |
16 bit unsigned integer data type | |
typedef ULONG | UInt32 |
32 bit unsigned integer data type | |
typedef SINGLE | Float_t |
float data type | |
typedef PruIo | Pruio_ |
forward declaration | |
Enumerations | |
enum | PinMuxing { PRUIO_NO_PULL = &b001000, PRUIO_PULL_UP = &b010000, PRUIO_PULL_DOWN = &b000000, PRUIO_RX_ACTIV = &b100000, PRUIO_GPIO_OUT0 = 7 + PRUIO_NO_PULL, PRUIO_GPIO_OUT1 = 7 + PRUIO_NO_PULL + 128, PRUIO_GPIO_IN = 7 + PRUIO_NO_PULL + PRUIO_RX_ACTIV, PRUIO_GPIO_IN_0 = 7 + PRUIO_PULL_DOWN + PRUIO_RX_ACTIV, PRUIO_GPIO_IN_1 = 7 + PRUIO_PULL_UP + PRUIO_RX_ACTIV, PRUIO_PIN_RESET = &hFF } |
constants for pinmuxing: pullup/-down resistors and GPIO states More... | |
enum | ActivateDevice { PRUIO_ACT_PRU1 = &b000000000001, PRUIO_ACT_ADC = &b000000000010, PRUIO_ACT_GPIO0 = &b000000000100, PRUIO_ACT_GPIO1 = &b000000001000, PRUIO_ACT_GPIO2 = &b000000010000, PRUIO_ACT_GPIO3 = &b000000100000, PRUIO_ACT_PWM0 = &b000001000000, PRUIO_ACT_PWM1 = &b000010000000, PRUIO_ACT_PWM2 = &b000100000000, PRUIO_DEF_ACTIVE = &b111111111111 } |
Mask to be used in the constructor to choose PRUSS number and enable divices controls. More... | |
FreeBASIC header file for libpruio.
Header file for including libpruio to FreeBASIC programs. It binds the different components together and provides all declarations.
Definition in file pruio.bi.
enum ActivateDevice |
Mask to be used in the constructor to choose PRUSS number and enable divices controls.
This enumerators are used in the constructor PruIo::PruIo() to enable single subsystems. By default all subsystems are enabled. If a device is not enabled, libpruio wont wake it up nor allocate memory to control it. It just reads the version information to see if the subsystem is in operation.
An enabled subsystem will get activated in the constructor PruIo::PruIo() and libpruio will set its configuration.
enum PinMuxing |
constants for pinmuxing: pullup/-down resistors and GPIO states