wiki:spec_COM
COM


概要

  • 他ECUとのデータ通信機能をRTEへ提供する
    • 周期送信やデッドラインモニタリングなど多岐に渡るECU間通信機能を有する
  • OSEK/COM仕様を部分的に採用している
  • 時間管理は、Com_MainFunctionRxCom_MainFunctionTx等のMainFunctionを周期的に呼び出すことにより実現する
    • 各MainFunctionは、BSW Scheduler Moduleによって周期的に呼び出される
    • MainFunctionの呼出し間隔は、ComRxTimeBaseComTxTimeBase等に、秒単位で設定する
    • デッドラインモニタリングや周期送信に設定する値も秒単位で設定する
      • 設定値が、MainFunctionの何回分の呼出しに相当するかを計算して時間管理を実現する
      • 当然、MainFunctionの呼出し間隔より短い時間を設定しても、時間管理を実現できない
      • 設定値が、MainFunctionの呼出し間隔の倍数になっていない場合、厳密な時間を実現できない
  • TMS(Transmission Mode Selector)
    • IPDUを送信する周期などのタイミングの設定(TM:Transmission Mode)は、1IPDU毎に2種類(TRUEとFALSEで区別)設定できる
    • IPDUに所属するシグナルに対するフィルタリングの結果で、TMが切り替わる
    • IPDUに所属するシグナルのフィルタリング結果が1つでもTRUEの場合は、TMはTRUEとなる
  • API一覧
API ID
[Dec]
ID
[Hex]
Com_Init 1 0x01
Com_DeInit 2 0x02
Com_IpduGroupControl 3 0x03
Com_ReceptionDMControl 6 0x06
Com_GetStatus 7 0x07
Com_GetConfigurationId 8 0x08
Com_GetVersionInfo 9 0x09
Com_ClearIpduGroupVector 28 0x1C
Com_SetIpduGroup 29 0x1D
Com_SendSignal 10 0x0A
Com_SendDynSignal 33 0x21
Com_ReceiveSignal 11 0x0B
Com_ReceiveDynSignal 34 0x22
Com_UpdateShadowSignal 12 0x0C
Com_SendSignalGroup 13 0x0D
Com_ReceiveSignalGroup 14 0x0E
Com_ReceiveShadowSignal 15 0x0F
Com_InvalidateSignal 16 0x10
Com_InvalidateShadowSignal 22 0x16
Com_InvalidateSignalGroup 27 0x1B
Com_TriggerIPDUSend 23 0x17
Com_SwitchIpduTxMode 39 0x27
Com_TriggerTransmit 65 0x41
Com_RxIndication 66 0x42
Com_TpRxIndication 30 0x1E
Com_TxConfirmation 64 0x40
Com_TpTxConfirmation 38 0x26
Com_StartOfReception 37 0x25
Com_CopyRxData 35 0x23
Com_CopyTxData 36 0x24
Com_MainFunctionRx 24 0x18
Com_MainFunctionTx 25 0x19
Com_MainFunctionRouteSignals 26 0x1A
  • エラーコード一覧
エラーコード Dec Hex
COM_E_PARAM 1 0x01
COM_E_UNINIT 2 0x02
COM_E_PARAM_POINTER 3 0x03

API仕様

Com_Init

void Com_Init(const Com_ConfigType* config)
  • Comモジュールの初期化を行う
  • 引数configで与えたポインタが指すコンフィギュレーションデータを使用して初期化される
  • CanIfのCanIf_Initでは、引数にNULLを与えた場合、デフォルトのコンフィギュレーションが設定される仕様となっていることから、TOPPERS/A-COMではCom_Initも同様にNULLが与えられた場合、デフォルトのコンフィギュレーション(ComConfigurationIdが0)を設定するように実装している

Com_DeInit

void Com_DeInit(void)
  • Comモジュールの未初期化を行い、Comモジュールが提供するサービスを終了する
  • AUTOSAR_SWS_COM.pdfのCaveats of Com_DeInitでは、Com_DeinitがComモジュールのAPIに割り込んで呼び出されるような使い方を考慮しなくてよいと書かれている

Com_IpduGroupControl

void Com_IpduGroupControl(Com_IpduGroupVector ipduGroupVector, boolean initialize)
  • 引数ipduGroupVectorで指定したIPDUグループの起動および停止行う
  • 各IPDUグループが各ビットにアサインされたCom_IpduGroupVector型を引数に与える
    • 起動するビットを1、停止するビットを0とする
  • 意図したCom_IpduGroupVector型の変数は、Com_SetIpduGroupを用いれば、ビットアサインを知らなくてもIPDUグループIDにより作成できる
  • initializeをtrueにするかfalseにするかで、初期化されるデータの範囲が変わる

Com_ReceptionDMControl

void Com_ReceptionDMControl(Com_IpduGroupVector ipduGroupVector)
  • 引数ipduGroupVectorで指定したIPDUグループの受信デッドラインモニタリングの有効化および無効化を行う
  • Com_IpduGroupVector型の設定は、Com_IpduGroupControlと同じ

Com_GetStatus

Com_StatusType Com_GetStatus(void)
  • Comモジュールの初期化状態(COM_UNINIT:未初期化状態、COM_INIT:初期化状態)を返す

Com_GetConfigurationId

uint32 Com_GetConfigurationId(void)
  • Com_Initで設定されたコンフィギュレーションIDを返す
    • 未初期化状態で呼び出された場合の振る舞いは規定されていない
    • TOPPERS/A-COMでは、COM_INVALID_UINT32(0xFFFFFFFF)を返すように実装している
  • コンフィギュレーションIDは、ComConfigurationIdで指定した値となる

Com_GetVersionInfo

void Com_GetVersionInfo(Std_VersionInfoType* versioninfo)
  • 以下の情報が格納された構造体(Std_VersionInfoType型)を返す
    • ベンダID
    • モジュールID
    • SWメジャーバージョン
    • SWマイナーバージョン
    • SWパッチバージョン

Com_ClearIpduGroupVector

void Com_ClearIpduGroupVector(Com_IpduGroupVector ipduGroupVector)
  • 引数ipduGroupVectorに与えたCom_IpduGroupVector型の全ビットを0クリアする

Com_SetIpduGroup

void Com_SetIpduGroup(Com_IpduGroupVector ipduGroupVector, Com_IpduGroupIdType ipduGroupId, boolean bitval)
  • 引数ipduGroupVectorに与えた変数に対し、引数ipduGroupIdのIPDUグループIDにアサインされたビットを、引数bitvalがtrueの場合1、falseの場合0にする

Com_SendSignal

uint8 Com_SendSignal(Com_SignalIdType SignalId, const void* SignalDataPtr)
  • 引数SignalIdで与えたシグナルIDに対して、引数SignalDataPtrで指定したデータを送信する
  • 送信するシグナルのComTransferPropertyや、シグナルが所属するIPDUのComTxIPduの設定によって、実際に送信されるタイミングが変わる

Com_SendDynSignal

uint8 Com_SendDynSignal(Com_SignalIdType SignalId, const void* SignalDataPtr, uint16 Length)
  • 可変長シグナルを送信する
  • 基本的な機能はCom_SendSignalと同じ

Com_ReceiveSignal

uint8 Com_ReceiveSignal(Com_SignalIdType SignalId, void* SignalDataPtr)
  • 引数SignalIdで与えたシグナルIDのデータを、引数SignalDataPtrで指定した領域に取得(受信)する

Com_ReceiveDynSignal

uint8 Com_ReceiveDynSignal(Com_SignalIdType SignalId, void* SignalDataPtr, uint16* Length)
  • 可変長シグナルを受信する
  • 基本的な機能はCom_ReceiveSignalと同じ

Com_UpdateShadowSignal

void Com_UpdateShadowSignal(Com_SignalIdType SignalId, const void* SignalDataPtr)
  • 本APIは次のメジャーリリースで削除される予定

Com_SendSignalGroup

uint8 Com_SendSignalGroup(Com_SignalGroupIdType SignalGroupId)
  • 引数SignalGroupIdで指定したシグナルグループのシャドウバッファのデータで、所属するIPDUのデータを更新する

Com_ReceiveSignalGroup

uint8 Com_ReceiveSignalGroup(Com_SignalGroupIdType SignalGroupId)
  • 引数SignalGroupIdで指定したシグナルグループのシャドウバッファのデータを、所属するIPDUのデータで更新する

Com_ReceiveShadowSignal

void Com_ReceiveShadowSignal(Com_SignalIdType SignalId, void* SignalDataPtr)
  • 本APIは次のメジャーリリースで削除される予定

Com_InvalidateSignal

uint8 Com_InvalidateSignal(Com_SignalIdType SignalId)
  • 引数SignalIdで与えたシグナルIDに対して、無効を示すデータを送信する
  • 無効を示すデータは、ComSignalDataInvalidValueで設定する

Com_InvalidateShadowSignal

void Com_InvalidateShadowSignal(Com_SignalIdType SignalId)
  • 本APIは次のメジャーリリースで削除される予定

Com_InvalidateSignalGroup

uint8 Com_InvalidateSignalGroup(Com_SignalGroupIdType SignalGroupId)
  • 引数SignalGroupIdで与えたシグナルグループIDに対して、無効を示すデータを送信する
  • 基本的な機能はCom_InvalidateSignalと同じ

Com_TriggerIPDUSend

void Com_TriggerIPDUSend(PduIdType PduId)
  • 引数PduIdで指定したIPDUを強制的に送信する
  • RTE側ではIPDU-IDは知り得ないので、本APIはComモジュールのコールアウト等で使用することが想定される

Com_SwitchIpduTxMode

void Com_SwitchIpduTxMode(PduIdType PduId, boolean Mode)
  • 引数PduIdで指定したIPDUのTMを強制的に変更する
  • RTE側ではIPDU-IDは知り得ないので、本APIはComモジュールのコールアウト等で使用することが想定される

Com_TriggerTransmit

Std_ReturnType Com_TriggerTransmit(PduIdType TxPduId, PduInfoType* PduInfoPtr)
  • 引数TxPduIdで指定したIPDUに対して、引数PduInfoPtrで指定したデータを送信する
  • Comモジュールをゲートウェイで使用する場合等に、下位モジュール(PduR)から使用される

Com_RxIndication

void Com_RxIndication(PduIdType RxPduId, const PduInfoType* PduInfoPtr)
  • 引数RxPduIdで指定したIPDUに対して、引数PduInfoPtrで指定したデータを受信する
  • 下位モジュール(PduR)からのデータ受信時に使用される

Com_TpRxIndication

void Com_TpRxIndication(PduIdType PduId, Std_ReturnType Result)
  • 大型IPDU、可変長IPDUを受信する
  • 基本的な機能はCom_RxIndicationと同じ

Com_TxConfirmation

void Com_TxConfirmation(PduIdType TxPduId)
  • 引数TxPduIdで指定したIPDUに対して、送信完了を受け付ける
  • 下位モジュール(PduR)からの送信完了通知時に使用される

Com_TpTxConfirmation

void Com_TpTxConfirmation(PduIdType PduId, Std_ReturnType Result)
  • 大型IPDU、可変長IPDUの送信完了を受け付ける
  • 基本的な機能はCom_TxConfirmationと同じ

Com_StartOfReception

BufReq_ReturnType Com_StartOfReception(PduIdType ComRxPduId, const PduInfoType* TpSduInfoPtr, PduLengthType TpSduLength, PduLengthType* RxBufferSizePtr)
  • 引数ComRxPduIdで指定した大型IPDUの受信を開始する

Com_CopyRxData

BufReq_ReturnType Com_CopyRxData(PduIdType PduId, const PduInfoType* PduInfoPointer, PduLengthType* RxBufferSizePtr)

Com_CopyTxData

BufReq_ReturnType Com_CopyTxData(PduIdType PduId, const PduInfoType* PduInfoPtr, RetryInfoType* RetryInfoPtr, PduLengthType* TxDataCntPtr)

Com_MainFunctionRx

void Com_MainFunctionRx(void)
  • SchMによって周期的に呼び出され、受信処理を行う
  • 起動周期は、ComRxTimeBaseで設定する

Com_MainFunctionTx

void Com_MainFunctionTx(void)
  • SchMによって周期的に呼び出され、送信処理を行う
  • 起動周期は、ComTxTimeBaseで設定する

Com_MainFunctionRouteSignals

void Com_MainFunctionRouteSignals(void)
  • SchMによって周期的に呼び出され、シグナルゲートウェイに関する処理を行う
  • 起動周期は、ComGwTimeBaseで設定する

コンフィギュレーション仕様

ComConfig

/AUTOSAR/EcucDefs/Com/ComConfig
  • 型:Container
  • 多重度:1
  • Com_Initにより設定されるコンフィギュレーション全体のコンテナ
  • TOPPERS/A-COMでは、ポストビルドによる複数のコンフィギュレーション定義に対応するため、多重度を1..*として本コンテナを複数定義可能としている

ComConfigurationId

/AUTOSAR/EcucDefs/Com/ComConfig/ComConfigurationId
  • 型:IntegerParam
  • 多重度:1
  • Com_Initで設定したコンフィギュレーションを識別するID
  • TOPPERS/A-COMでは、処理速度向上のため、0から連番とする制約を設けている

ComIPdu

/AUTOSAR/EcucDefs/Com/ComConfig/ComIPdu
  • 型:Container
  • 多重度:0..*
  • IPDUを設定するコンテナ

ComIPduCallout

/AUTOSAR/EcucDefs/Com/ComConfig/ComIPdu/ComIPduCallout
  • 型:FunctionName
  • 多重度:0..1
  • 下位モジュール(PduR)からIPDUを受信した直後に呼び出すコールアウト関数名
  • コールアウト関数は以下のシンタックスで定義する
    boolean Com_RxIpduCallout(PduIdType Id, const uint8* IpduData)
    

ComIPduCancellationSupport

/AUTOSAR/EcucDefs/Com/ComConfig/ComIPdu/ComIPduCancellationSupport
  • 型:BooleanParam
  • 多重度:0..1
  • IPDU通信要求キャンセルのサポート有無

ComIPduDirection

/AUTOSAR/EcucDefs/Com/ComConfig/ComIPdu/ComIPduDirection
  • 型:EnumerationParam
    • SEND:送信
    • RECEIVE:受信
  • 多重度:1
  • IPDUの通信の方向

ComIPduHandleId

/AUTOSAR/EcucDefs/Com/ComConfig/ComIPdu/ComIPduHandleId
  • 型:IntegerParam
  • 多重度:0..1
  • IPDUのID
  • 下位モジュール(PduR)との受信通知、送信完了通知において、IPDUを識別するために使用される
  • 多重度は0..1であるが、送信完了通知と受信通知のどちらも使用しないIPDUが想定されないため、TOPPERS/A-COMでは、多重度1としている
  • TOPPERS/A-COMでは、処理速度向上のため、0から連番とする制約を設けている

ComIPduSignalProcessing

/AUTOSAR/EcucDefs/Com/ComConfig/ComIPdu/ComIPduSignalProcessing
  • 型:EnumerationParam
  • 多重度:1
  • シグナルに対する処理タイミングを指定する
  • 受信の場合、IMMEDIATEを設定すれば受信したタイミングでIPDUからシグナルをアンパッキングするため、すぐに最新値を取り出せるが、コールバック関数の処理時間が長くなる

ComIPduTriggerTransmitCallout

/AUTOSAR/EcucDefs/Com/ComConfig/ComIPdu/ComIPduTriggerTransmitCallout
  • 型:FunctionName
  • 多重度:1
  • IPDUトリガ送信時に呼び出されるコールアウト関数名
  • Comモジュールから下位モジュール(PduR)にIPDUを通信する直前に呼び出すコールアウト関数名
  • コールアウト関数は以下のシンタックスで定義する
    boolean Com_TxIpduCallout(PduIdType Id, uint8* IpduData)
    

ComIPduType

/AUTOSAR/EcucDefs/Com/ComConfig/ComIPdu/ComIPduType
  • 型:EnumerationParam
    • NORMAL:通常のIPDU
    • TP:TP通信のIPDU(TP:Transport)
  • 多重度:1
  • IPDUの種別

ComIPduGroupRef

/AUTOSAR/EcucDefs/Com/ComConfig/ComIPdu/ComIPduGroupRef
  • 型:Reference
  • 多重度:0..*
  • 所属するIPDUグループへの参照

ComIPduSignalGroupRef

/AUTOSAR/EcucDefs/Com/ComConfig/ComIPdu/ComIPduSignalGroupRef
  • 型:Reference
  • 多重度:0..*
  • IPDUに所属するシグナルグループへの参照

ComIPduSignalRef

/AUTOSAR/EcucDefs/Com/ComConfig/ComIPdu/ComIPduSignalRef
  • 型:Reference
  • 多重度:0..*
  • IPDUに所属するシグナルへの参照

ComPduIdRef

/AUTOSAR/EcucDefs/Com/ComConfig/ComIPdu/ComPduIdRef
  • 型:Reference
  • 多重度:1
  • システム全体として同一PDUを識別するためのPDU(グローバルPDU)への参照
  • 詳細はモジュール間のPDU-IDの関係を参照

ComIPduCounter

/AUTOSAR/EcucDefs/Com/ComConfig/ComIPdu/ComIPduCounter
  • 型:Container
  • 多重度:0..1

ComIPduCounterErrorNotification

/AUTOSAR/EcucDefs/Com/ComConfig/ComIPdu/ComIPduCounter/ComIPduCounterErrorNotification
  • 型:FunctionName
  • 多重度:0..1

ComIPduCounterSize

/AUTOSAR/EcucDefs/Com/ComConfig/ComIPdu/ComIPduCounter/ComIPduCounterSize
  • 型:IntegerParam
  • 多重度:1

ComIPduCounterStartPosition

/AUTOSAR/EcucDefs/Com/ComConfig/ComIPdu/ComIPduCounter/ComIPduCounterStartPosition
  • 型:IntegerParam
  • 多重度:1

ComIPduCounterThreshold

/AUTOSAR/EcucDefs/Com/ComConfig/ComIPdu/ComIPduCounter/ComIPduCounterThreshold
  • 型:IntegerParam
  • 多重度:0..1

ComIPduReplication

/AUTOSAR/EcucDefs/Com/ComConfig/ComIPdu/ComIPduReplication
  • 型:Container
  • 多重度:0..1

ComIPduReplicationQuorum

/AUTOSAR/EcucDefs/Com/ComConfig/ComIPdu/ComIPduReplication/ComIPduReplicationQuorum
  • 型:IntegerParam
  • 多重度:1

ComIPduReplicaRef

/AUTOSAR/EcucDefs/Com/ComConfig/ComIPdu/ComIPduReplication/ComIPduReplicaRef
  • 型:Reference
  • 多重度:1..2

ComTxIPdu

/AUTOSAR/EcucDefs/Com/ComConfig/ComIPdu/ComTxIPdu
  • 型:Container
  • 多重度:0..1
  • 送信IPDUを設定するコンテナ

ComMinimumDelayTime

/AUTOSAR/EcucDefs/Com/ComConfig/ComIPdu/ComTxIPdu/ComMinimumDelayTime
  • 型:FloatParam
  • 多重度:0..1
  • 最小遅延時間
  • 本パラメータで指定した時間未満であれば、送信要求が来ても送信せず遅延させる
  • 単位は秒

ComTxIPduClearUpdateBit

/AUTOSAR/EcucDefs/Com/ComConfig/ComIPdu/ComTxIPdu/ComTxIPduClearUpdateBit
  • 型:EnumerationParam
    • CONFIRMATION:送信完了通知を受け取った際にクリア
    • TRANSMIT:PduR_ComTransmitを呼び出した際にクリア
    • TRIGGER_TRANSMIT:Com_TriggerTransmitが呼び出された際にクリア
  • 多重度:0..1
  • 送信IPDUに所属するシグナルおよびシグナルグループのアップデートビットをクリアするタイミング

ComTxIPduUnusedAreasDefault

/AUTOSAR/EcucDefs/Com/ComConfig/ComIPdu/ComTxIPdu/ComTxIPduUnusedAreasDefault
  • 型:IntegerParam
  • 多重度:1
  • IPDU内でシグナルやアップデートビットで使用していない領域に設定する値

ComTxModeFalse

/AUTOSAR/EcucDefs/Com/ComConfig/ComIPdu/ComTxIPdu/ComTxModeFalse
  • 型:Container
  • 多重度:0..1
  • TMSがFALSEの場合の送信モードを設定するコンテナ

ComTxMode

/AUTOSAR/EcucDefs/Com/ComConfig/ComIPdu/ComTxIPdu/ComTxModeFalse/ComTxMode
  • 型:Container
  • 多重度:1
  • 送信モードを設定するコンテナ
  • ComTxModeTrue側にも同じコンテナが含まれる

ComTxModeMode

/AUTOSAR/EcucDefs/Com/ComConfig/ComIPdu/ComTxIPdu/ComTxModeFalse/ComTxMode/ComTxModeMode
  • 型:EnumerationParam
    • DIRECT:即時送信(+N回リピート送信)
    • PERIODIC:周期送信
    • MIXED:DIRECT+PERIODIC
    • NONE:送信しない
  • 多重度:1
  • 送信モードを選択する

ComTxModeNumberOfRepetitions

/AUTOSAR/EcucDefs/Com/ComConfig/ComIPdu/ComTxIPdu/ComTxModeFalse/ComTxMode/ComTxModeNumberOfRepetitions
  • 型:IntegerParam
  • 多重度:0..1
  • ComTxModeModeがDIRECT、MIXEDの場合に、即時送信に加え、リピート送信する場合の回数(N回)

ComTxModeRepetitionPeriod

/AUTOSAR/EcucDefs/Com/ComConfig/ComIPdu/ComTxIPdu/ComTxModeFalse/ComTxMode/ComTxModeRepetitionPeriod
  • 型:FloatParam
  • 多重度:0..1
  • ComTxModeModeがDIRECT、MIXEDの場合に、即時送信に加え、リピート送信する場合の送信間隔
  • 単位は秒

ComTxModeTimeOffset

/AUTOSAR/EcucDefs/Com/ComConfig/ComIPdu/ComTxIPdu/ComTxModeFalse/ComTxMode/ComTxModeTimeOffset
  • 型:FloatParam
  • 多重度:0..1
  • ComTxModeModeがPERIODIC、MIXEDの場合の、周期送信開始時のオフセット値
  • 単位は秒

ComTxModeTimePeriod

/AUTOSAR/EcucDefs/Com/ComConfig/ComIPdu/ComTxIPdu/ComTxModeFalse/ComTxMode/ComTxModeTimePeriod
  • 型:FloatParam
  • 多重度:0..1
  • ComTxModeModeがPERIODIC、MIXEDの場合の、周期送信間隔
  • 単位は秒

ComTxModeTrue

/AUTOSAR/EcucDefs/Com/ComConfig/ComIPdu/ComTxIPdu/ComTxModeTrue
  • 型:Container
  • 多重度:0..1
  • TMSがTRUEの場合の送信モードを設定するコンテナ

ComTxMode

/AUTOSAR/EcucDefs/Com/ComConfig/ComIPdu/ComTxIPdu/ComTxModeTrue/ComTxMode
  • 型:Container
  • 多重度:1
  • ComTxModeと同じ

ComTxModeMode

/AUTOSAR/EcucDefs/Com/ComConfig/ComIPdu/ComTxIPdu/ComTxModeTrue/ComTxMode/ComTxModeMode

ComTxModeNumberOfRepetitions

/AUTOSAR/EcucDefs/Com/ComConfig/ComIPdu/ComTxIPdu/ComTxModeTrue/ComTxMode/ComTxModeNumberOfRepetitions

ComTxModeRepetitionPeriod

/AUTOSAR/EcucDefs/Com/ComConfig/ComIPdu/ComTxIPdu/ComTxModeTrue/ComTxMode/ComTxModeRepetitionPeriod

ComTxModeTimeOffset

/AUTOSAR/EcucDefs/Com/ComConfig/ComIPdu/ComTxIPdu/ComTxModeTrue/ComTxMode/ComTxModeTimeOffset

ComTxModeTimePeriod

/AUTOSAR/EcucDefs/Com/ComConfig/ComIPdu/ComTxIPdu/ComTxModeTrue/ComTxMode/ComTxModeTimePeriod

ComIPduGroup

/AUTOSAR/EcucDefs/Com/ComConfig/ComIPduGroup
  • 型:Container
  • 多重度:0..*
  • IPDUグループを設定するコンテナ

ComIPduGroupHandleId

/AUTOSAR/EcucDefs/Com/ComConfig/ComIPduGroup/ComIPduGroupHandleId
  • 型:IntegerParam
  • 多重度:1
  • IPDUグループのID
  • TOPPERS/A-COMでは、処理速度向上のため、0から連番とする制約を設けている

ComIPduGroupGroupRef

/AUTOSAR/EcucDefs/Com/ComConfig/ComIPduGroup/ComIPduGroupGroupRef
  • 型:Reference
  • 多重度:0..*
  • 所属するIPDUグループ参照
  • IPDUグループはネストすることが可能

ComSignal

/AUTOSAR/EcucDefs/Com/ComConfig/ComSignal
  • 型:Container
  • 多重度:0..*
  • シグナルを設定するコンテナ

ComBitPosition

/AUTOSAR/EcucDefs/Com/ComConfig/ComSignal/ComBitPosition
  • 型:IntegerParam
  • 多重度:1
  • IPDU内のシグナルの開始ビット位置
  • 0~(IPDUのサイズ-1)の間で指定する

ComBitSize

/AUTOSAR/EcucDefs/Com/ComConfig/ComSignal/ComBitSize
  • 型:IntegerParam
  • 多重度:0..1
  • シグナルのビットサイズ

ComDataInvalidAction

/AUTOSAR/EcucDefs/Com/ComConfig/ComSignal/ComDataInvalidAction
  • 型:EnumerationParam
    • NOTIFY:無効値受信通知用コールバック関数(ComInvalidNotification)を呼び出す
    • REPLACE:初期値に置き換える
  • 多重度:0..1
  • シグナルの無効値を受信した場合の処理を選択する

ComErrorNotification

/AUTOSAR/EcucDefs/Com/ComConfig/ComSignal/ComErrorNotification
  • 型:FunctionName
  • 多重度:0..1
  • エラー発生を通知するコールバック関数名
  • Com_IpduGroupControlの呼び出しによって無効化された送信IPDUに対して、送信完了通知が届いていない場合に、所属するシグナルに設定された本コールバック関数が呼び出される
  • コールバック関数は以下のシンタックスで定義する
    void Com_CbkTxErr(void)
    

ComFirstTimeout

/AUTOSAR/EcucDefs/Com/ComConfig/ComSignal/ComFirstTimeout
  • 型:FloatParam
  • 多重度:0..1
  • 受信デッドラインモニタリングにおける1回目のタイムアウト時間
  • 単位は秒

ComHandleId

/AUTOSAR/EcucDefs/Com/ComConfig/ComSignal/ComHandleId
  • 型:IntegerParam
  • 多重度:1
  • シグナルのID
  • TOPPERS/A-COMでは、処理速度向上のため、0から連番とする制約を設けている

ComInvalidNotification

/AUTOSAR/EcucDefs/Com/ComConfig/ComSignal/ComInvalidNotification
  • 型:FunctionName
  • 多重度:0..1
  • シグナルの無効値受信を通知するコールバック関数名
  • コールバック関数は以下のシンタックスで定義する
    void Com_CbkInv(void)
    

ComNotification

/AUTOSAR/EcucDefs/Com/ComConfig/ComSignal/ComNotification
  • 型:FunctionName
  • 多重度:0..1
  • シグナルの送信完了通知または受信通知のコールバック関数名
  • コールバック関数は以下のシンタックスで定義する
    void Com_CbkTxAck(void)
    
    void Com_CbkRxAck(void)
    

ComRxDataTimeoutAction

/AUTOSAR/EcucDefs/Com/ComConfig/ComSignal/ComRxDataTimeoutAction
  • 型:EnumerationParam
    • NONE:何もしない
    • REPLACE:初期値に置き換える
  • 多重度:0..1
  • シグナルの受信デッドラインモニタリングでタイムアウトが発生した場合の処理

ComSignalDataInvalidValue

/AUTOSAR/EcucDefs/Com/ComConfig/ComSignal/ComSignalDataInvalidValue
  • 型:StringParam
  • 多重度:0..1
  • シグナルの無効値

ComSignalEndianness

/AUTOSAR/EcucDefs/Com/ComConfig/ComSignal/ComSignalEndianness
  • 型:EnumerationParam
    • LITTLE_ENDIAN:リトルエンディアン
    • BIG_ENDIAN:ビッグエンディアン
    • OPAQUE:オペーク(UINT8_N型で使用する)
  • 多重度:1
  • IPDUにシグナルをパッキングする際のエンディアン(バイトオーダー)

ComSignalInitValue

/AUTOSAR/EcucDefs/Com/ComConfig/ComSignal/ComSignalInitValue
  • 型:StringParam
  • 多重度:0..1
  • シグナルの初期値
  • 周期送信されるシグナルであれば、Com_SendSignal実行前でも初期値が送信される
  • 他のECUからデータを受信する前にCom_ReceiveSignalを実行すると初期値が返る

ComSignalLength

/AUTOSAR/EcucDefs/Com/ComConfig/ComSignal/ComSignalLength
  • 型:IntegerParam
  • 多重度:0..1
  • シグナルの長さ
  • 単位はバイト
  • ComSignalTypeがUINT8_NまたはUINT8_DYNの場合に使用する

ComSignalType

/AUTOSAR/EcucDefs/Com/ComConfig/ComSignal/ComSignalType
  • 型:EnumerationParam
    • BOOLEAN:boolean
    • UINT8:符号なし整数(8bit)
    • UINT16:符号なし整数(16bit)
    • UINT32:符号なし整数(32bit)
    • SINT8:符号あり整数(8bit)
    • SINT16:符号あり整数(16bit)
    • SINT32:符号あり整数(32bit)
    • FLOAT32:浮動小数点(32bit)
    • FLOAT64:浮動小数点(64bit)
    • UINT8_N:配列(8bit×N)
    • UINT8_DYN:可変長配列(8bit×N)
  • 多重度:1
  • シグナルのデータ型

ComTimeout

/AUTOSAR/EcucDefs/Com/ComConfig/ComSignal/ComTimeout
  • 型:FloatParam
  • 多重度:0..1
  • デッドラインモニタリングにおけるタイムアウト時間
  • 単位は秒

ComTimeoutNotification

/AUTOSAR/EcucDefs/Com/ComConfig/ComSignal/ComTimeoutNotification
  • 型:FunctionName
  • 多重度:0..1
  • デッドラインモニタリングにおいてタイムアウト発生を通知するコールバック関数名
  • コールバック関数は以下のシンタックスで定義する
    void Com_CbkTxTOut(void)
    
    void Com_CbkRxTOut(void)
    

ComTransferProperty

/AUTOSAR/EcucDefs/Com/ComConfig/ComSignal/ComTransferProperty
  • 型:EnumerationParam
    • PENDING:シグナルの書き込みが発生しても、所属IPDUを即時送信しない
    • TRIGGERED:シグナル書き込みが発生した場合、所属IPDUを即時送信する
    • TRIGGERED_WITHOUT_REPETITION:シグナルの書込みが発生した場合、所属IPDUを繰り返しなしで即時送信する
    • TRIGGERED_ON_CHANGE:シグナルの書き込みが発生し、書き込んだ値が前回値と異なる場合、所属IPDUを即時送信する
    • TRIGGERED_ON_CHANGE_WITHOUT_REPETITION:シグナルの書き込みが発生し、書き込んだ値が前回値と異なる場合、所属IPDUを繰り返しなしで即時送信する
  • 多重度:0..1
  • シグナルの送信プロパティ

ComUpdateBitPosition

/AUTOSAR/EcucDefs/Com/ComConfig/ComSignal/ComUpdateBitPosition
  • 型:IntegerParam
  • 多重度:0..1
  • IPDU内のシグナルのアップデートビット位置
  • シグナルデータが格納される位置とオーバーラップしないように注意する必要がある

ComSystemTemplateSystemSignalRef

/AUTOSAR/EcucDefs/Com/ComConfig/ComSignal/ComSystemTemplateSystemSignalRef
  • 型:Reference
  • 多重度:0..1
  • システムシグナルへの参照
  • この参照情報により、異なるECU間で通信するシグナルの情報を関連付けることができる

ComFilter

/AUTOSAR/EcucDefs/Com/ComConfig/ComSignal/ComFilter
  • 型:Container
  • 多重度:0..1
  • シグナルに対するフィルタを設定するコンテナ

ComFilterAlgorithm

/AUTOSAR/EcucDefs/Com/ComConfig/ComSignal/ComFilter/ComFilterAlgorithm

ComFilterMask

/AUTOSAR/EcucDefs/Com/ComConfig/ComSignal/ComFilter/ComFilterMask
  • 型:IntegerParam
  • 多重度:0..1
  • フィルタに設定するマスク値
  • ComFilterAlgorithmがMASKED_NEW_DIFFERS_MASKED_OLD、MASKED_NEW_DIFFERS_X、MASKED_NEW_EQUALS_Xの場合のみ使用する

ComFilterMax

/AUTOSAR/EcucDefs/Com/ComConfig/ComSignal/ComFilter/ComFilterMax
  • 型:IntegerParam
  • 多重度:0..1
  • フィルタに設定する最大値
  • ComFilterAlgorithmがNEW_IS_OUTSIDE、NEW_IS_WITHINの場合のみ使用する

ComFilterMin

/AUTOSAR/EcucDefs/Com/ComConfig/ComSignal/ComFilter/ComFilterMin
  • 型:IntegerParam
  • 多重度:0..1
  • フィルタに設定する最小値
  • ComFilterAlgorithmがNEW_IS_OUTSIDE、NEW_IS_WITHINの場合のみ使用する

ComFilterOffset

/AUTOSAR/EcucDefs/Com/ComConfig/ComSignal/ComFilter/ComFilterOffset
  • 型:IntegerParam
  • 多重度:0..1
  • フィルタに設定するオフセット
  • ComFilterAlgorithmがONE_EVERY_Nの場合のみ使用する

ComFilterPeriod

/AUTOSAR/EcucDefs/Com/ComConfig/ComSignal/ComFilter/ComFilterPeriod
  • 型:IntegerParam
  • 多重度:0..1
  • フィルタに設定する周期
  • ComFilterAlgorithmがONE_EVERY_Nの場合のみ使用する

ComFilterX

/AUTOSAR/EcucDefs/Com/ComConfig/ComSignal/ComFilter/ComFilterX
  • 型:IntegerParam
  • 多重度:0..1
  • フィルタに設定するXの値
  • ComFilterAlgorithmがMASKED_NEW_DIFFERS_X、MASKED_NEW_EQUALS_Xの場合のみ使用する

ComSignalGroup

/AUTOSAR/EcucDefs/Com/ComConfig/ComSignalGroup
  • 型:Container
  • 多重度:0..*
  • シグナルグループを設定するコンテナ
  • サブコンテナに含まれるパラメータはシグナルのものと同じである

ComDataInvalidAction

/AUTOSAR/EcucDefs/Com/ComConfig/ComSignalGroup/ComDataInvalidAction
  • 型:EnumerationParam
  • 多重度:0..1

ComErrorNotification

/AUTOSAR/EcucDefs/Com/ComConfig/ComSignalGroup/ComErrorNotification
  • 型:FunctionName
  • 多重度:0..1

ComFirstTimeout

/AUTOSAR/EcucDefs/Com/ComConfig/ComSignalGroup/ComFirstTimeout
  • 型:FloatParam
  • 多重度:0..1

ComHandleId

/AUTOSAR/EcucDefs/Com/ComConfig/ComSignalGroup/ComHandleId
  • 型:IntegerParam
  • 多重度:1

ComInvalidNotification

/AUTOSAR/EcucDefs/Com/ComConfig/ComSignalGroup/ComInvalidNotification
  • 型:FunctionName
  • 多重度:0..1

ComNotification

/AUTOSAR/EcucDefs/Com/ComConfig/ComSignalGroup/ComNotification
  • 型:FunctionName
  • 多重度:0..1

ComRxDataTimeoutAction

/AUTOSAR/EcucDefs/Com/ComConfig/ComSignalGroup/ComRxDataTimeoutAction
  • 型:EnumerationParam
  • 多重度:0..1

ComTimeout

/AUTOSAR/EcucDefs/Com/ComConfig/ComSignalGroup/ComTimeout
  • 型:FloatParam
  • 多重度:0..1

ComTimeoutNotification

/AUTOSAR/EcucDefs/Com/ComConfig/ComSignalGroup/ComTimeoutNotification
  • 型:FunctionName
  • 多重度:0..1

ComTransferProperty

/AUTOSAR/EcucDefs/Com/ComConfig/ComSignalGroup/ComTransferProperty
  • 型:EnumerationParam
  • 多重度:0..1

ComUpdateBitPosition

/AUTOSAR/EcucDefs/Com/ComConfig/ComSignalGroup/ComUpdateBitPosition
  • 型:IntegerParam
  • 多重度:0..1

ComSystemTemplateSignalGroupRef

/AUTOSAR/EcucDefs/Com/ComConfig/ComSignalGroup/ComSystemTemplateSignalGroupRef
  • 型:Reference
  • 多重度:0..1

ComGroupSignal

/AUTOSAR/EcucDefs/Com/ComConfig/ComSignalGroup/ComGroupSignal
  • 型:Container
  • 多重度:0..*

ComBitPosition

/AUTOSAR/EcucDefs/Com/ComConfig/ComSignalGroup/ComGroupSignal/ComBitPosition
  • 型:IntegerParam
  • 多重度:1

ComBitSize

/AUTOSAR/EcucDefs/Com/ComConfig/ComSignalGroup/ComGroupSignal/ComBitSize
  • 型:IntegerParam
  • 多重度:0..1

ComHandleId

/AUTOSAR/EcucDefs/Com/ComConfig/ComSignalGroup/ComGroupSignal/ComHandleId
  • 型:IntegerParam
  • 多重度:1

ComSignalDataInvalidValue

/AUTOSAR/EcucDefs/Com/ComConfig/ComSignalGroup/ComGroupSignal/ComSignalDataInvalidValue
  • 型:StringParam
  • 多重度:0..1

ComSignalEndianness

/AUTOSAR/EcucDefs/Com/ComConfig/ComSignalGroup/ComGroupSignal/ComSignalEndianness
  • 型:EnumerationParam
  • 多重度:1

ComSignalInitValue

/AUTOSAR/EcucDefs/Com/ComConfig/ComSignalGroup/ComGroupSignal/ComSignalInitValue
  • 型:StringParam
  • 多重度:0..1

ComSignalLength

/AUTOSAR/EcucDefs/Com/ComConfig/ComSignalGroup/ComGroupSignal/ComSignalLength
  • 型:IntegerParam
  • 多重度:0..1

ComSignalType

/AUTOSAR/EcucDefs/Com/ComConfig/ComSignalGroup/ComGroupSignal/ComSignalType
  • 型:EnumerationParam
  • 多重度:1

ComTransferProperty

/AUTOSAR/EcucDefs/Com/ComConfig/ComSignalGroup/ComGroupSignal/ComTransferProperty
  • 型:EnumerationParam
  • 多重度:1

ComSystemTemplateSystemSignalRef

/AUTOSAR/EcucDefs/Com/ComConfig/ComSignalGroup/ComGroupSignal/ComSystemTemplateSystemSignalRef
  • 型:Reference
  • 多重度:0..1

ComFilter

/AUTOSAR/EcucDefs/Com/ComConfig/ComSignalGroup/ComGroupSignal/ComFilter
  • 型:Container
  • 多重度:0..1

ComFilterAlgorithm

/AUTOSAR/EcucDefs/Com/ComConfig/ComSignalGroup/ComGroupSignal/ComFilter/ComFilterAlgorithm
  • 型:EnumerationParam
  • 多重度:1

ComFilterMask

/AUTOSAR/EcucDefs/Com/ComConfig/ComSignalGroup/ComGroupSignal/ComFilter/ComFilterMask
  • 型:IntegerParam
  • 多重度:0..1

ComFilterMax

/AUTOSAR/EcucDefs/Com/ComConfig/ComSignalGroup/ComGroupSignal/ComFilter/ComFilterMax
  • 型:IntegerParam
  • 多重度:0..1

ComFilterMin

/AUTOSAR/EcucDefs/Com/ComConfig/ComSignalGroup/ComGroupSignal/ComFilter/ComFilterMin
  • 型:IntegerParam
  • 多重度:0..1

ComFilterOffset

/AUTOSAR/EcucDefs/Com/ComConfig/ComSignalGroup/ComGroupSignal/ComFilter/ComFilterOffset
  • 型:IntegerParam
  • 多重度:0..1

ComFilterPeriod

/AUTOSAR/EcucDefs/Com/ComConfig/ComSignalGroup/ComGroupSignal/ComFilter/ComFilterPeriod
  • 型:IntegerParam
  • 多重度:0..1

ComFilterX

/AUTOSAR/EcucDefs/Com/ComConfig/ComSignalGroup/ComGroupSignal/ComFilter/ComFilterX
  • 型:IntegerParam
  • 多重度:0..1

ComGwMapping

/AUTOSAR/EcucDefs/Com/ComConfig/ComGwMapping
  • 型:Container
  • 多重度:0..*
  • シグナルゲートウェイ設定のコンテナ

ComGwDestination

/AUTOSAR/EcucDefs/Com/ComConfig/ComGwMapping/ComGwDestination
  • 型:Container
  • 多重度:1..*

ComGwDestinationDescription

/AUTOSAR/EcucDefs/Com/ComConfig/ComGwMapping/ComGwDestination/ComGwDestinationDescription
  • 型:Container
  • 多重度:0..1

ComBitPosition

/AUTOSAR/EcucDefs/Com/ComConfig/ComGwMapping/ComGwDestination/ComGwDestinationDescription/ComBitPosition
  • 型:IntegerParam

ComSignalEndianness

/AUTOSAR/EcucDefs/Com/ComConfig/ComGwMapping/ComGwDestination/ComGwDestinationDescription/ComSignalEndianness
  • 型:EnumerationParam
  • 多重度:1

ComSignalInitValue

/AUTOSAR/EcucDefs/Com/ComConfig/ComGwMapping/ComGwDestination/ComGwDestinationDescription/ComSignalInitValue
  • 型:StringParam
  • 多重度:0..1

ComTransferProperty

/AUTOSAR/EcucDefs/Com/ComConfig/ComGwMapping/ComGwDestination/ComGwDestinationDescription/ComTransferProperty
  • 型:EnumerationParam
  • 多重度:0..1

ComUpdateBitPosition

/AUTOSAR/EcucDefs/Com/ComConfig/ComGwMapping/ComGwDestination/ComGwDestinationDescription/ComUpdateBitPosition
  • 型:IntegerParam
  • 多重度:0..1

ComGwIPduRef

/AUTOSAR/EcucDefs/Com/ComConfig/ComGwMapping/ComGwDestination/ComGwDestinationDescription/ComGwIPduRef
  • 型:Reference
  • 多重度:1

ComFilter

/AUTOSAR/EcucDefs/Com/ComConfig/ComGwMapping/ComGwDestination/ComGwDestinationDescription/ComFilter
  • 型:Container
  • 多重度:0..1

ComFilterAlgorithm

/AUTOSAR/EcucDefs/Com/ComConfig/ComGwMapping/ComGwDestination/ComGwDestinationDescription/ComFilter/ComFilterAlgorithm
  • 型:EnumerationParam
  • 多重度:1

ComFilterMask

/AUTOSAR/EcucDefs/Com/ComConfig/ComGwMapping/ComGwDestination/ComGwDestinationDescription/ComFilter/ComFilterMask
  • 型:IntegerParam
  • 多重度:0..1

ComFilterMax

/AUTOSAR/EcucDefs/Com/ComConfig/ComGwMapping/ComGwDestination/ComGwDestinationDescription/ComFilter/ComFilterMax
  • 型:IntegerParam
  • 多重度:0..1

ComFilterMin

/AUTOSAR/EcucDefs/Com/ComConfig/ComGwMapping/ComGwDestination/ComGwDestinationDescription/ComFilter/ComFilterMin
  • 型:IntegerParam
  • 多重度:0..1

ComFilterOffset

/AUTOSAR/EcucDefs/Com/ComConfig/ComGwMapping/ComGwDestination/ComGwDestinationDescription/ComFilter/ComFilterOffset
  • 型:IntegerParam
  • 多重度:0..1

ComFilterPeriod

/AUTOSAR/EcucDefs/Com/ComConfig/ComGwMapping/ComGwDestination/ComGwDestinationDescription/ComFilter/ComFilterPeriod
  • 型:IntegerParam
  • 多重度:0..1

ComFilterX

/AUTOSAR/EcucDefs/Com/ComConfig/ComGwMapping/ComGwDestination/ComGwDestinationDescription/ComFilter/ComFilterX
  • 型:IntegerParam
  • 多重度:0..1

ComGwSignal

/AUTOSAR/EcucDefs/Com/ComConfig/ComGwMapping/ComGwDestination/ComGwSignal
  • 型:Container
  • 多重度:0..1

ComGwSignalRef

/AUTOSAR/EcucDefs/Com/ComConfig/ComGwMapping/ComGwDestination/ComGwSignal/ComGwSignalRef
  • 型:Reference
  • 多重度:1

ComGwSource

/AUTOSAR/EcucDefs/Com/ComConfig/ComGwMapping/ComGwSource
  • 型:Container
  • 多重度:1

ComGwSignal

/AUTOSAR/EcucDefs/Com/ComConfig/ComGwMapping/ComGwSource/ComGwSignal
  • 型:Container
  • 多重度:0..1

ComGwSignalRef

/AUTOSAR/EcucDefs/Com/ComConfig/ComGwMapping/ComGwSource/ComGwSignal/ComGwSignalRef
  • 型:Reference
  • 多重度:1

ComGwSourceDescription

/AUTOSAR/EcucDefs/Com/ComConfig/ComGwMapping/ComGwSource/ComGwSourceDescription
  • 型:Container
  • 多重度:0..1

ComBitPosition

/AUTOSAR/EcucDefs/Com/ComConfig/ComGwMapping/ComGwSource/ComGwSourceDescription/ComBitPosition
  • 型:IntegerParam
  • 多重度:1

ComBitSize

/AUTOSAR/EcucDefs/Com/ComConfig/ComGwMapping/ComGwSource/ComGwSourceDescription/ComBitSize
  • 型:IntegerParam
  • 多重度:0..1

ComSignalEndianness

/AUTOSAR/EcucDefs/Com/ComConfig/ComGwMapping/ComGwSource/ComGwSourceDescription/ComSignalEndianness
  • 型:EnumerationParam
  • 多重度:1

ComSignalLength

/AUTOSAR/EcucDefs/Com/ComConfig/ComGwMapping/ComGwSource/ComGwSourceDescription/ComSignalLength
  • 型:IntegerParam
  • 多重度:0..1

ComSignalType

/AUTOSAR/EcucDefs/Com/ComConfig/ComGwMapping/ComGwSource/ComGwSourceDescription/ComSignalType
  • 型:EnumerationParam
  • 多重度:1

ComUpdateBitPosition

/AUTOSAR/EcucDefs/Com/ComConfig/ComGwMapping/ComGwSource/ComGwSourceDescription/ComUpdateBitPosition
  • 型:IntegerParam
  • 多重度:0..1

ComGwIPduRef

/AUTOSAR/EcucDefs/Com/ComConfig/ComGwMapping/ComGwSource/ComGwSourceDescription/ComGwIPduRef
  • 型:Reference
  • 多重度:1

ComTimeBase

/AUTOSAR/EcucDefs/Com/ComConfig/ComTimeBase
  • 型:Container
  • 多重度:1
  • 周期関数の時間に関する設定を行うコンテナ

ComGwTimeBase

/AUTOSAR/EcucDefs/Com/ComConfig/ComTimeBase/ComGwTimeBase

ComRxTimeBase

/AUTOSAR/EcucDefs/Com/ComConfig/ComTimeBase/ComRxTimeBase

ComTxTimeBase

/AUTOSAR/EcucDefs/Com/ComConfig/ComTimeBase/ComTxTimeBase

ComGeneral

/AUTOSAR/EcucDefs/Com/ComGeneral
  • 型:Container
  • 多重度:1
  • Comモジュールの全般的な設定を行うコンテナ

ComConfigurationUseDet

/AUTOSAR/EcucDefs/Com/ComGeneral/ComConfigurationUseDet

ComEnableMDTForCyclicTransmission

/AUTOSAR/EcucDefs/Com/ComGeneral/ComEnableMDTForCyclicTransmission
  • 型:BooleanParam
  • 多重度:0..1
  • 周期送信におけるComMinimumDelayTimeの使用有無

ComRetryFailedTransmitRequests

/AUTOSAR/EcucDefs/Com/ComGeneral/ComRetryFailedTransmitRequests
  • 型:BooleanParam
  • 多重度:0..1
  • 失敗送信要求のリトライの使用有無

ComSupportedIPduGroups

/AUTOSAR/EcucDefs/Com/ComGeneral/ComSupportedIPduGroups
  • 型:IntegerParam
  • 多重度:1
  • IPDUグループ数の最大値

ComVersionInfoApi

/AUTOSAR/EcucDefs/Com/ComGeneral/ComVersionInfoApi
Last modified 2 years ago Last modified on 03/09/15 16:23:37