Changes between Version 6 and Version 7 of spec/Com


Ignore:
Timestamp:
Jul 14, 2015, 3:30:55 PM (9 years ago)
Author:
fujisft-shigihara
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • spec/Com

    v6 v7  
    216216void Com_Init(const Com_ConfigType* config)
    217217}}}
     218* Comモジュールの初期化を行う
     219* 引数configで与えたポインタが指すコンフィギュレーションデータを使用して初期化される
     220  * [wiki:tips_configuration_class#%E3%83%9D%E3%82%B9%E3%83%88%E3%83%93%E3%83%AB%E3%83%89%E3%82%BF%E3%82%A4%E3%83%A0 ポストビルド]のパラメータは本初期化により設定値を変更できる
    218221
    219222== Com_DeInit ==
     
    221224void Com_DeInit(void)
    222225}}}
     226* Comモジュールの未初期化を行い、Comモジュールが提供するサービスを終了する
     227* [http://www.autosar.org/fileadmin/files/releases/4-0/software-architecture/communication-stack/standard/AUTOSAR_SWS_COM.pdf#page=87&view=fitv AUTOSAR_SWS_COM.pdfのCaveats]では、Com_DeinitがComモジュールのAPIに割り込んで呼び出されるような使い方を考慮しなくてよいと書かれている
    223228
    224229== Com_IpduGroupControl ==
     
    226231void Com_IpduGroupControl(Com_IpduGroupVector ipduGroupVector, boolean initialize)
    227232}}}
     233* 引数ipduGroupVectorで指定したIPDUグループの起動および停止行う
     234* 各IPDUグループが各ビットにアサインされたCom_IpduGroupVector型を引数に与える
     235  * 起動するビットを1、停止するビットを0とする
     236* 意図したCom_IpduGroupVector型の変数は、[#Com_SetIpduGroup Com_SetIpduGroup]を用いれば、ビットアサインを知らなくてもIPDUグループIDにより作成できる
     237* initializeをtrueにするかfalseにするかで、初期化されるデータの範囲が変わる
    228238
    229239== Com_ReceptionDMControl ==
     
    231241void Com_ReceptionDMControl(Com_IpduGroupVector ipduGroupVector)
    232242}}}
     243* 引数ipduGroupVectorで指定したIPDUグループの受信デッドラインモニタリングの有効化および無効化を行う
     244* Com_IpduGroupVector型の設定は、[#Com_IpduGroupControl Com_IpduGroupControl]と同じ
    233245
    234246== Com_GetStatus ==
     
    236248Com_StatusType Com_GetStatus(void)
    237249}}}
     250* Comモジュールの初期化状態(COM_UNINIT:未初期化状態、COM_INIT:初期化状態)を返す
    238251
    239252== Com_GetConfigurationId ==
     
    241254uint32 Com_GetConfigurationId(void)
    242255}}}
     256* [#Com_Init Com_Init]で設定されたコンフィギュレーションIDを返す
     257  * 未初期化状態で呼び出された場合の振る舞いは規定されていない
     258  * TOPPERS/A-COMでは、COM_INVALID_UINT32(0xFFFFFFFF)を返すように実装している
     259* コンフィギュレーションIDは、[#ComConfigurationId ComConfigurationId]で指定した値となる
    243260
    244261== Com_GetVersionInfo ==
     
    246263void Com_GetVersionInfo(Std_VersionInfoType* versioninfo)
    247264}}}
     265* 以下の情報が格納された構造体(Std_VersionInfoType型)を返す
     266  * ベンダID
     267  * モジュールID
     268  * SWメジャーバージョン
     269  * SWマイナーバージョン
     270  * SWパッチバージョン
    248271
    249272== Com_ClearIpduGroupVector ==
     
    251274void Com_ClearIpduGroupVector(Com_IpduGroupVector ipduGroupVector)
    252275}}}
     276* 引数ipduGroupVectorに与えたCom_IpduGroupVector型の全ビットを0クリアする
    253277
    254278== Com_SetIpduGroup ==
     
    256280void Com_SetIpduGroup(Com_IpduGroupVector ipduGroupVector, Com_IpduGroupIdType ipduGroupId, boolean bitval)
    257281}}}
     282* 引数ipduGroupVectorに与えた変数に対し、引数ipduGroupIdのIPDUグループIDにアサインされたビットを、引数bitvalがtrueの場合1、falseの場合0にする
    258283
    259284== Com_SendSignal ==
     
    261286uint8 Com_SendSignal(Com_SignalIdType SignalId, const void* SignalDataPtr)
    262287}}}
     288* 引数SignalIdで与えたシグナルIDに対して、引数SignalDataPtrで指定したデータを送信する
     289* 送信するシグナルの[#ComTransferProperty ComTransferProperty]や、シグナルが所属するIPDUの[#ComTxIPdu ComTxIPdu]の設定によって、実際に送信されるタイミングが変わる
    263290
    264291== Com_SendDynSignal ==
     
    266293uint8 Com_SendDynSignal(Com_SignalIdType SignalId, const void* SignalDataPtr, uint16 Length)
    267294}}}
     295* 可変長シグナルを送信する
     296* 基本的な機能は[#Com_SendSignal Com_SendSignal]と同じ
    268297
    269298== Com_ReceiveSignal ==
     
    271300uint8 Com_ReceiveSignal(Com_SignalIdType SignalId, void* SignalDataPtr)
    272301}}}
     302* 引数SignalIdで与えたシグナルIDのデータを、引数SignalDataPtrで指定した領域に取得(受信)する
    273303
    274304== Com_ReceiveDynSignal ==
     
    276306uint8 Com_ReceiveDynSignal(Com_SignalIdType SignalId, void* SignalDataPtr, uint16* Length)
    277307}}}
     308* 可変長シグナルを受信する
     309* 基本的な機能は[#Com_ReceiveSignal Com_ReceiveSignal]と同じ
    278310
    279311== Com_UpdateShadowSignal ==
     
    281313void Com_UpdateShadowSignal(Com_SignalIdType SignalId, const void* SignalDataPtr)
    282314}}}
     315* 本APIは次のメジャーリリースで削除される予定
    283316
    284317== Com_SendSignalGroup ==
     
    286319uint8 Com_SendSignalGroup(Com_SignalGroupIdType SignalGroupId)
    287320}}}
     321* 引数SignalGroupIdで指定したシグナルグループのシャドウバッファのデータで、所属するIPDUのデータを更新する
    288322
    289323== Com_ReceiveSignalGroup ==
     
    291325uint8 Com_ReceiveSignalGroup(Com_SignalGroupIdType SignalGroupId)
    292326}}}
     327* 引数SignalGroupIdで指定したシグナルグループのシャドウバッファのデータを、所属するIPDUのデータで更新する
    293328
    294329== Com_ReceiveShadowSignal ==
     
    296331void Com_ReceiveShadowSignal(Com_SignalIdType SignalId, void* SignalDataPtr)
    297332}}}
     333* 本APIは次のメジャーリリースで削除される予定
    298334
    299335== Com_InvalidateSignal ==
     
    301337uint8 Com_InvalidateSignal(Com_SignalIdType SignalId)
    302338}}}
     339* 引数SignalIdで与えたシグナルIDに対して、無効を示すデータを送信する
     340* 無効を示すデータは、[#ComSignalDataInvalidValue ComSignalDataInvalidValue]で設定する
    303341
    304342== Com_InvalidateShadowSignal ==
     
    306344void Com_InvalidateShadowSignal(Com_SignalIdType SignalId)
    307345}}}
     346* 本APIは次のメジャーリリースで削除される予定
    308347
    309348== Com_InvalidateSignalGroup ==
     
    311350uint8 Com_InvalidateSignalGroup(Com_SignalGroupIdType SignalGroupId)
    312351}}}
     352* 引数SignalGroupIdで与えたシグナルグループIDに対して、無効を示すデータを送信する
     353* 基本的な機能は[#Com_InvalidateSignal Com_InvalidateSignal]と同じ
    313354
    314355== Com_TriggerIPDUSend ==
     
    316357void Com_TriggerIPDUSend(PduIdType PduId)
    317358}}}
     359* 引数PduIdで指定したIPDUを強制的に送信する
     360* RTE側ではIPDU-IDは知り得ないので、本APIはComモジュールのコールアウト等で使用することが想定される
    318361
    319362== Com_SwitchIpduTxMode ==
     
    321364void Com_SwitchIpduTxMode(PduIdType PduId, boolean Mode)
    322365}}}
     366* 引数PduIdで指定したIPDUの送信モード(TMS)を強制的に変更する
     367* RTE側ではIPDU-IDは知り得ないので、本APIはComモジュールのコールアウト等で使用することが想定される
    323368
    324369== Com_TriggerTransmit ==
     
    326371Std_ReturnType Com_TriggerTransmit(PduIdType TxPduId, PduInfoType* PduInfoPtr)
    327372}}}
     373* 引数TxPduIdで指定したIPDUに対して、引数PduInfoPtrで指定したデータを送信する
     374* Comモジュールをゲートウェイで使用する場合等に、下位モジュール([wiki:spec_PDURouter PduR])から使用される
    328375
    329376== Com_RxIndication ==
     
    331378void Com_RxIndication(PduIdType RxPduId, const PduInfoType* PduInfoPtr)
    332379}}}
     380* 引数RxPduIdで指定したIPDUに対して、引数PduInfoPtrで指定したデータを受信する
     381* 下位モジュール([wiki:spec_PDURouter PduR])からのデータ受信時に使用される
    333382
    334383== Com_TpRxIndication ==
     
    336385void Com_TpRxIndication(PduIdType PduId, Std_ReturnType Result)
    337386}}}
     387* 大型IPDU、可変長IPDUを受信する
     388* 基本的な機能は[#Com_RxIndication Com_RxIndication]と同じ
    338389
    339390== Com_TxConfirmation ==
     
    341392void Com_TxConfirmation(PduIdType TxPduId)
    342393}}}
     394* 引数TxPduIdで指定したIPDUに対して、送信完了を受け付ける
     395* 下位モジュール([wiki:spec_PDURouter PduR])からの送信完了通知時に使用される
    343396
    344397== Com_TpTxConfirmation ==
     
    346399void Com_TpTxConfirmation(PduIdType PduId, Std_ReturnType Result)
    347400}}}
     401* 大型IPDU、可変長IPDUの送信完了を受け付ける
     402* 基本的な機能は[#Com_TxConfirmation Com_TxConfirmation]と同じ
    348403
    349404== Com_StartOfReception ==
     
    351406BufReq_ReturnType Com_StartOfReception(PduIdType ComRxPduId, const PduInfoType* TpSduInfoPtr, PduLengthType TpSduLength, PduLengthType* RxBufferSizePtr)
    352407}}}
     408* 引数ComRxPduIdで指定した大型IPDUの受信を開始する
    353409
    354410== Com_CopyRxData ==
     
    366422void Com_MainFunctionRx(void)
    367423}}}
     424* [wiki:spec_BSWSchedulerModule SchM]によって周期的に呼び出され、受信処理を行う
     425* 起動周期は、[#ComRxTimeBase ComRxTimeBase]で設定する
    368426
    369427== Com_MainFunctionTx ==
     
    371429void Com_MainFunctionTx(void)
    372430}}}
     431* [wiki:spec_BSWSchedulerModule SchM]によって周期的に呼び出され、送信処理を行う
     432* 起動周期は、[#ComTxTimeBase ComTxTimeBase]で設定する
    373433
    374434== Com_MainFunctionRouteSignals ==
     
    376436void Com_MainFunctionRouteSignals(void)
    377437}}}
     438* [wiki:spec_BSWSchedulerModule SchM]によって周期的に呼び出され、シグナルゲートウェイに関する処理を行う
     439* 起動周期は、[#ComGwTimeBase ComGwTimeBase]で設定する
    378440
    379441----