1.4.3.1 MMHI_Initialize Function

C

SYS_MODULE_OBJ MMHI_Initialize (
  const SYS_MODULE_INDEX index,
  const SYS_MODULE_INIT * const init
);

Summary

Initializes the Meters And More HI module according to initialization parameters.

Description

This routine initializes the Meters And More HI module.

The initialization data is specified by the init parameter.

It is a single instance module and thus only one index is allowed.

Parameters

Param Description

index

Identifier for the instance to be initialized (single instance allowed)

init

Pointer to the init data structure containing any data necessary to initialize the module.

See MMHI_INIT Struct

Returns

If successful, returns a valid handle to a module instance object.

Otherwise, it returns SYS_MODULE_OBJ_INVALID.

Example

    SYS_MODULE_OBJ   sysObjMetersandmore;

    static const MMHI_PLIB_INTERFACE mmhiUARTPlibAPI =
    {
        .readCallbackRegister = (MMHI_PLIB_READCALLBACKREGISTER)FLEXCOM7_USART_ReadCallbackRegister,
        .write = (MMHI_PLIB_WRITE)FLEXCOM7_USART_Write,
        .writeCountGet = (MMHI_PLIB_WRITE_COUNT_GET)FLEXCOM7_USART_WriteCountGet,
        .writeIsBusy = (MMHI_PLIB_WRITE_IS_BUSY)FLEXCOM7_USART_WriteIsBusy,
    };

    static const MMHI_INIT_DATA mmhiUARTInitData =
    {
        .uartPLIB = &mmhiUARTPlibAPI,
        .treqSignalPin = SYS_PORT_PIN_PB26
    };

    MMHI_INIT mmhiInit = {
        .deviceInitData = (const void*)&mmhiUARTInitData
    };

    sysObjMetersandmore = MMHI_Initialize(0, (SYS_MODULE_INIT *)&mmhiInit);

Remarks

This routine must be called before any other HI routine is called.

It is called from System Initialize module. User Application does not need to call this function.