mraa  0.9.0
Low Level Skeleton Library for Communication on GNU/Linux platforms
Functions | Macros | Typedefs
common.h File Reference

API Description

This file defines the basic shared values for libmraa

Go to the source code of this file.

Functions

mraa_result_t mraa_init () __attribute__((constructor))
 
void mraa_deinit ()
 
mraa_boolean_t mraa_pin_mode_test (int pin, mraa_pinmodes_t mode)
 
unsigned int mraa_adc_raw_bits ()
 
unsigned int mraa_get_platform_adc_raw_bits (uint8_t platform_offset)
 
unsigned int mraa_adc_supported_bits ()
 
unsigned int mraa_get_platform_adc_supported_bits (int platform_offset)
 
mraa_result_t mraa_set_log_level (int level)
 
char * mraa_get_platform_name ()
 
int mraa_set_priority (const unsigned int priority)
 
const char * mraa_get_version ()
 
void mraa_result_print (mraa_result_t result)
 
mraa_platform_t mraa_get_platform_type ()
 
int mraa_get_platform_combined_type ()
 
unsigned int mraa_get_pin_count ()
 
int mraa_get_i2c_bus_count ()
 
int mraa_get_i2c_bus_id (unsigned int i2c_bus)
 
unsigned int mraa_get_platform_pin_count (uint8_t platform_offset)
 
char * mraa_get_pin_name (int pin)
 
int mraa_get_default_i2c_bus (uint8_t platform_offset)
 
mraa_boolean_t mraa_has_sub_platform ()
 
mraa_boolean_t mraa_is_sub_platform_id (int pin_or_bus_id)
 
int mraa_get_sub_platform_id (int pin_or_bus_index)
 
int mraa_get_sub_platform_index (int pin_or_bus_id)
 

Macros

#define MRAA_PLATFORM_NAME_MAX_SIZE   64
 
#define MRAA_PIN_NAME_SIZE   12
 
#define MRAA_SUB_PLATFORM_BIT_SHIFT   9
 
#define MRAA_SUB_PLATFORM_MASK   (1<<MRAA_SUB_PLATFORM_BIT_SHIFT)
 
#define MRAA_MAIN_PLATFORM_OFFSET   0
 
#define MRAA_SUB_PLATFORM_OFFSET   1
 
#define MRAA_RETURN_FOR_ERROR(func)
 

Typedefs

typedef unsigned int mraa_boolean_t
 

Function Documentation

mraa_result_t mraa_init ( ) const

Initialise MRAA

Detects running platform and attempts to use included pinmap, this is run on module/library init/load but is handy to rerun to check board initialised correctly. MRAA_SUCCESS inidicates correct (first time) initialisation whilst MRAA_ERROR_PLATFORM_ALREADY_INITIALISED indicates the board is already initialised correctly

Returns
Result of operation

Here is the caller graph for this function:

void mraa_deinit ( )

De-Initilise MRAA

This is not a strict requirement but useful to test memory leaks and for people who like super clean code. If dynamically loading & unloading libmraa you need to call this before unloading the library.

mraa_boolean_t mraa_pin_mode_test ( int  pin,
mraa_pinmodes_t  mode 
)

Checks if a pin is able to use the passed in mode.

Parameters
pinPhysical Pin to be checked.
modethe mode to be tested.
Returns
boolean if the mode is supported, 0=false.

Here is the caller graph for this function:

unsigned int mraa_adc_raw_bits ( )

Check the board's bit size when reading the value

Returns
raw bits being read from kernel module. zero if no ADC

Here is the caller graph for this function:

unsigned int mraa_get_platform_adc_raw_bits ( uint8_t  platform_offset)

Check the specified board's bit size when reading the value

Parameters
specifiedplatform offset; 0 for main platform, 1 foor sub platform
Returns
raw bits being read from kernel module. zero if no ADC
unsigned int mraa_adc_supported_bits ( )

Return value that the raw value should be shifted to. Zero if no ADC

Returns
return actual bit size the adc value should be understood as.

Here is the caller graph for this function:

unsigned int mraa_get_platform_adc_supported_bits ( int  platform_offset)

Return value that the raw value should be shifted to. Zero if no ADC

Parameters
specifiedplatform offset; 0 for main platform, 1 foor sub platform
Returns
return actual bit size the adc value should be understood as.
mraa_result_t mraa_set_log_level ( int  level)

Sets the log level to use from 0-7 where 7 is very verbose. These are the syslog log levels, see syslog(3) for more information on the levels.

Returns
Result of operation

Here is the caller graph for this function:

char* mraa_get_platform_name ( )

Return the Platform's Name, If no platform detected return NULL

Returns
platform name

Here is the caller graph for this function:

int mraa_set_priority ( const unsigned int  priority)

This function attempts to set the mraa process to a given priority and the scheduler to SCHED_RR. Highest * priority is typically 99 and minimum is 0. This function * will set to MAX if * priority is > MAX. Function will return -1 on failure.

Parameters
priorityValue from typically 0 to 99
Returns
The priority value set

Here is the caller graph for this function:

const char* mraa_get_version ( )

Get the version string of mraa autogenerated from git tag

The version returned may not be what is expected however it is a reliable number associated with the git tag closest to that version at build time

Returns
version string from version.h

Here is the caller graph for this function:

void mraa_result_print ( mraa_result_t  result)

Print a textual representation of the mraa_result_t

Parameters
resultthe result to print

Here is the caller graph for this function:

mraa_platform_t mraa_get_platform_type ( )

Get platform type, board must be initialised.

Returns
mraa_platform_t Platform type enum

Here is the caller graph for this function:

int mraa_get_platform_combined_type ( )

Get combined platform type, board must be initialised. The combined type is represented as (sub_platform_type << 8) | main_platform_type

Returns
int combined platform type
unsigned int mraa_get_pin_count ( )

Get platform pincount, board must be initialised.

Returns
uint of physical pin count on the in-use platform

Here is the caller graph for this function:

int mraa_get_i2c_bus_count ( )

Get platform usable I2C bus count, board must be initialised.

Returns
number f usable I2C bus count on the current platform. Function will return -1 on failure

Here is the caller graph for this function:

int mraa_get_i2c_bus_id ( unsigned int  i2c_bus)

Get I2C adapter number in sysfs.

Parameters
i2c_busthe logical I2C bus number
Returns
I2C adapter number in sysfs. Function will return -1 on failure

Here is the caller graph for this function:

unsigned int mraa_get_platform_pin_count ( uint8_t  platform_offset)

Get specified platform pincount, board must be initialised.

Parameters
specifiedplatform offset; 0 for main platform, 1 foor sub platform
Returns
uint of physical pin count on the in-use platform
char* mraa_get_pin_name ( int  pin)

Get name of pin, board must be initialised.

Parameters
pinnumber
Returns
char* of pin name

Here is the caller graph for this function:

int mraa_get_default_i2c_bus ( uint8_t  platform_offset)

Get default i2c bus, board must be initialised.

Returns
int default i2c bus index
mraa_boolean_t mraa_has_sub_platform ( )

Detect presence of sub platform.

Returns
mraa_boolean_t 1 if sub platform is present and initialized, 0 otherwise

Here is the caller graph for this function:

mraa_boolean_t mraa_is_sub_platform_id ( int  pin_or_bus_id)

Check if pin or bus id includes sub platform mask.

Parameters
intpin or bus number
Returns
mraa_boolean_t 1 if pin or bus is for sub platform, 0 otherwise

Here is the caller graph for this function:

int mraa_get_sub_platform_id ( int  pin_or_bus_index)

Convert pin or bus index to corresponding sub platform id.

Parameters
intpin or bus index
Returns
int sub platform pin or bus number

Here is the caller graph for this function:

int mraa_get_sub_platform_index ( int  pin_or_bus_id)

Convert pin or bus sub platform id to index.

Parameters
intsub platform pin or bus id
Returns
int pin or bus index

Here is the caller graph for this function:

Macro Definition Documentation

#define MRAA_RETURN_FOR_ERROR (   func)
Value:
do { \
res = func; \
if (res != MRAA_SUCCESS) \
return res;} while(0)
Definition: types.h:192
mraa_result_t
Definition: types.h:191

Executes function func and returns its result in case of error

Typedef Documentation

typedef unsigned int mraa_boolean_t

MRAA boolean type 1 For TRUE

Include dependency graph for common.h: