Main Page | Directories | Namespace List | Class Hierarchy | Alphabetical List | Class List | File List | Namespace Members | Class Members | File Members | Related Pages | Examples

2_9_RemoteWriteSetpointStdIso.cc File Reference

#include <IsoAgLib/util/igetypos_c.h>
#include <IsoAgLib/driver/system/isystem_c.h>
#include <IsoAgLib/driver/can/icanio_c.h>
#include <IsoAgLib/comm/Scheduler/ischeduler_c.h>
#include <IsoAgLib/comm/SystemMgmt/iidentitem_c.h>
#include <IsoAgLib/comm/SystemMgmt/isystemmgmt_c.h>
#include <IsoAgLib/comm/Process/proc_c.h>
#include <IsoAgLib/comm/Process/Remote/Std/iprocdataremote_c.h>
#include <IsoAgLib/comm/Process/processdatachangehandler_c.h>

Include dependency graph for 2_9_RemoteWriteSetpointStdIso.cc:

Include dependency graph

Go to the source code of this file.

Classes

class  MyProcDataHandler_c

Defines

#define PRJ_USE_AUTOGEN_CONFIG   config_2_9_RemoteWriteSetpointStdIso.h
 the define PRJ_USE_AUTOGEN_CONFIG is used by lgpl_src/Application_Config/isoaglib_config.h to include project specific configuration settings.
#define USE_PROC_HANDLER

Functions

void controlRemoteWorkState (bool rb_isWorking)
 dummy function which can be called from some other module to control the remote work state
void controlRemoteApplicationRate (int32_t ri32_applicationRate)
 dummy function which can be called from some other module to control the remote application rate
void indicateRemoteWorkStateResponse (bool)
 dummy function which is called upon reaction from to be controlled remote device - for work state
void indicateRemoteApplicationRateResponse (bool)
 dummy function which is called upon reaction from to be controlled remote device - for Application Rate
int main ()

Variables

const uint8_t cui8_indexWorkState = 0
const uint8_t cui8_indexApplicationRate = 1
IsoAgLib::iProcDataRemote_c arr_procData [2]
MyProcDataHandler_c c_myMeasurementHandler


Define Documentation

#define PRJ_USE_AUTOGEN_CONFIG   config_2_9_RemoteWriteSetpointStdIso.h
 

the define PRJ_USE_AUTOGEN_CONFIG is used by lgpl_src/Application_Config/isoaglib_config.h to include project specific configuration settings.

Set this define in the project file or Makefile of the whole project, so that each source file is compiled with this setting

Definition at line 190 of file 2_9_RemoteWriteSetpointStdIso.cc.

#define USE_PROC_HANDLER
 

Definition at line 214 of file 2_9_RemoteWriteSetpointStdIso.cc.


Function Documentation

void controlRemoteApplicationRate int32_t  ri32_applicationRate  ) 
 

dummy function which can be called from some other module to control the remote application rate

void controlRemoteWorkState bool  rb_isWorking  ) 
 

dummy function which can be called from some other module to control the remote work state

void indicateRemoteApplicationRateResponse bool   ) 
 

dummy function which is called upon reaction from to be controlled remote device - for Application Rate

Definition at line 241 of file 2_9_RemoteWriteSetpointStdIso.cc.

Referenced by main(), and MyProcDataHandler_c::processSetpointResponse().

void indicateRemoteWorkStateResponse bool   ) 
 

dummy function which is called upon reaction from to be controlled remote device - for work state

Definition at line 234 of file 2_9_RemoteWriteSetpointStdIso.cc.

Referenced by main(), and MyProcDataHandler_c::processSetpointResponse().

int main  ) 
 

IMPORTANT:

  • The following loop could be replaced of any repeating call of IsoAgLib::getISchedulerInstance().timeEvent(); which is needed to perform all internal activities of the IsoAgLib.
  • Define the time intervall for IsoAgLib::getISchedulerInstance().timeEvent() in a way, that allows IsoAgLib to trigger all reactions on BUS in the ISO 11783 defined time resolution - especially the address claim process has some tight time restrictions, that suggest a trigger rate of at least 100msec ( you could call the function only during address claim, mask updload and other special circumstances in a high repetition rate )
  • The main loop is running until iSystem_c::canEn() is returning false. This function can be configured by the #define BUFFER_SHORT_CAN_EN_LOSS_MSEC in isoaglib_config.h to ignore short CAN_EN loss.
  • This explicit control of power state without automatic powerdown on CanEn loss can be controled with the central config define #define DEFAULT_POWERDOWN_STRATEGY IsoAgLib::PowerdownByExplcitCall or #define DEFAULT_POWERDOWN_STRATEGY IsoAgLib::PowerdownOnCanEnLoss in the header lgpl_src/Application_Config/isoaglib_config.h
  • This can be also controlled during runtime with the function call: getIsystemInstance().setPowerdownStrategy( IsoAgLib::PowerdownByExplcitCall ) or getIsystemInstance().setPowerdownStrategy( IsoAgLib::PowerdownOnCanEnLoss )

Definition at line 302 of file 2_9_RemoteWriteSetpointStdIso.cc.

References IsoAgLib::iSetpointRemote_c::accepted(), IsoAgLib::iSetpointRemote_c::answered(), arr_procData, c_myMeasurementHandler, IsoAgLib::getIcanInstance(), IsoAgLib::getISchedulerInstance(), indicateRemoteApplicationRateResponse(), indicateRemoteWorkStateResponse(), IsoAgLib::iProcDataRemoteSimpleSetpoint_c::init(), IsoAgLib::iProcDataRemote_c::setpoint(), uint16_t, uint32_t, and uint8_t.

Here is the call graph for this function:


Variable Documentation

IsoAgLib::iProcDataRemote_c arr_procData[2]
 

Definition at line 250 of file 2_9_RemoteWriteSetpointStdIso.cc.

MyProcDataHandler_c c_myMeasurementHandler
 

Definition at line 298 of file 2_9_RemoteWriteSetpointStdIso.cc.

const uint8_t cui8_indexApplicationRate = 1
 

Definition at line 249 of file 2_9_RemoteWriteSetpointStdIso.cc.

const uint8_t cui8_indexWorkState = 0
 

Definition at line 248 of file 2_9_RemoteWriteSetpointStdIso.cc.


Generated on Wed Oct 13 14:59:54 2004 for IsoAgLib by  doxygen 1.3.8-20040913