{{{ #!html
CAN Driver
}}} [[BR]] = 概要 = * COMスタックのMCALで、CANプロトコルを扱う * 送受信に使用するメールボックスのハンドルを、HOH(Hardware Object Handle)と呼ぶ * 送信のHOHをHTH、受信のHOHをHRHと区別する * CANに関する解説サイト * [https://vector.com/vj_beginners-can_jp.html はじめてのCAN(ベクター・ジャパン株式会社)] * API一覧 ||= API =||= ID[[BR]][Dec] =||= ID[[BR]][Hex] =||= R4.0.3 =||= R4.2.2 =|| || [#Can_Init Can_Init] || 0|| 0x00|| ○ || ○ || || [#Can_GetVersionInfo Can_GetVersionInfo] || 7|| 0x07|| ○ || ○ || || [#Can_CheckBaudrate Can_CheckBaudrate] || 14|| 0x0E|| ○ || ○ || || [#Can_ChangeBaudrate Can_ChangeBaudrate] || 13|| 0x0D|| ○ || ○ || || [#Can_SetBaudrate Can_SetBaudrate] || 15|| 0x0F|| - || ○ || || [#Can_SetControllerMode Can_SetControllerMode] || 3|| 0x03|| ○ || ○ || || [#Can_DisableControllerInterrupts Can_DisableControllerInterrupts] || 4|| 0x04|| ○ || ○ || || [#Can_EnableControllerInterrupts Can_EnableControllerInterrupts] || 5|| 0x05|| ○ || ○ || || [#Can_CheckWakeup Can_CheckWakeup] || 11|| 0x0B|| ○ || ○ || || [#Can_Write Can_Write] || 6|| 0x06|| ○ || ○ || || [#Can_MainFunction_Write Can_MainFunction_Write] || 1|| 0x01|| ○ || ○ || || [#Can_MainFunction_Read Can_MainFunction_Read] || 8|| 0x08|| ○ || ○ || || [#Can_MainFunction_BusOff Can_MainFunction_BusOff] || 9|| 0x09|| ○ || ○ || || [#Can_MainFunction_Wakeup Can_MainFunction_Wakeup] || 10|| 0x0A|| ○ || ○ || || [#Can_MainFunction_Mode Can_MainFunction_Mode] || 12|| 0x0C|| ○ || ○ || || [#Can_SetIcomConfiguration Can_SetIcomConfiguration] || 15|| 0x0F|| - || ○ || * コンフィギュレーション一覧(R4.0.3 / R4.2.2) * [#CanConfigSet CanConfigSet] (○/○) * [#CanController CanController] (○/○) * [#CanBusoffProcessing CanBusoffProcessing] (○/○) * [#CanControllerActivation CanControllerActivation] (○/○) * [#CanControllerBaseAddress CanControllerBaseAddress] (○/○) * [#CanControllerId CanControllerId] (○/○) * [#CanRxProcessing CanRxProcessing] (○/○) * [#CanTxProcessing CanTxProcessing] (○/○) * [#CanWakeupFunctionalityAPI CanWakeupFunctionalityAPI] (-/○) * [#CanWakeupProcessing CanWakeupProcessing] (○/○) * [#CanWakeupSupport CanWakeupSupport] (○/○) * [#CanControllerDefaultBaudrate CanControllerDefaultBaudrate] (○/○) * [#CanCpuClockRef CanCpuClockRef] (○/○) * [#CanWakeupSourceRef CanWakeupSourceRef] (○/○) * [#CanControllerBaudrateConfig CanControllerBaudrateConfig] (○/○) * [#CanControllerBaudRate CanControllerBaudRate] (○/○) * [#CanControllerBaudRateConfigID CanControllerBaudRateConfigID] (-/○) * [#CanControllerPropSeg CanControllerPropSeg] (○/○) * [#CanControllerSeg1 CanControllerSeg1] (○/○) * [#CanControllerSeg2 CanControllerSeg2] (○/○) * [#CanControllerSyncJumpWidth CanControllerSyncJumpWidth] (○/○) * [#CanControllerFdBaudrateConfig CanControllerFdBaudrateConfig] (-/○) * [#CanControllerFdBaudRate CanControllerFdBaudRate] (-/○) * [#CanControllerPropSeg CanControllerPropSeg] (-/○) * [#CanControllerSeg1 CanControllerSeg1] (-/○) * [#CanControllerSeg2 CanControllerSeg2] (-/○) * [#CanControllerSyncJumpWidth CanControllerSyncJumpWidth] (-/○) * [#CanControllerTrcvDelayCompensationOffset CanControllerTrcvDelayCompensationOffset] (-/○) * [#CanControllerTxBitRateSwitch CanControllerTxBitRateSwitch] (-/○) * [#CanFilterMask CanFilterMask] (○/-) * [#CanFilterMaskValue CanFilterMaskValue] (○/-) * [#CanTTController CanTTController] (○/○) * [#CanTTControllerApplWatchdogLimit CanTTControllerApplWatchdogLimit] (-/○) * [#CanTTControllerCycleCountMax CanTTControllerCycleCountMax] (-/○) * [#CanTTControllerExpectedTxTrigger CanTTControllerExpectedTxTrigger] (-/○) * [#CanTTControllerExternalClockSynchronisation CanTTControllerExternalClockSynchronisation] (-/○) * [#CanTTControllerGlobalTimeFiltering CanTTControllerGlobalTimeFiltering] (-/○) * [#CanTTControllerInitialRefOffset CanTTControllerInitialRefOffset] (-/○) * [#CanTTControllerInterruptEnable CanTTControllerInterruptEnable] (-/○) * [#CanTTControllerLevel2 CanTTControllerLevel2] (-/○) * [#CanTTControllerNTUConfig CanTTControllerNTUConfig] (-/○) * [#CanTTControllerOperationMode CanTTControllerOperationMode] (-/○) * [#CanTTControllerSyncDeviation CanTTControllerSyncDeviation] (-/○) * [#CanTTControllerTURRestore CanTTControllerTURRestore] (-/○) * [#CanTTControllerTimeMaster CanTTControllerTimeMaster] (-/○) * [#CanTTControllerTimeMasterPriority CanTTControllerTimeMasterPriority] (-/○) * [#CanTTControllerTxEnableWindowLength CanTTControllerTxEnableWindowLength] (-/○) * [#CanTTControllerWatchTriggerGapTimeMark CanTTControllerWatchTriggerGapTimeMark] (-/○) * [#CanTTControllerWatchTriggerTimeMark CanTTControllerWatchTriggerTimeMark] (-/○) * [#CanTTIRQProcessing CanTTIRQProcessing] (-/○) * [#CanHardwareObject CanHardwareObject] (○/○) * [#CanFdPaddingValue CanFdPaddingValue] (-/○) * [#CanHandleType CanHandleType] (○/○) * [#CanHwObjectCount CanHwObjectCount] (-/○) * [#CanIdType CanIdType] (○/○) * [#CanIdValue CanIdValue] (○/-) * [#CanObjectId CanObjectId] (○/○) * [#CanObjectType CanObjectType] (○/○) * [#CanTriggerTransmitEnable CanTriggerTransmitEnable] (-/○) * [#CanControllerRef CanControllerRef] (○/○) * [#CanFilterMaskRef CanFilterMaskRef] (○/-) * [#CanMainFunctionRWPeriodRef CanMainFunctionRWPeriodRef] (○/○) * [#CanHwFilter CanHwFilter] (-/○) * [#CanHwFilterCode CanHwFilterCode] (-/○) * [#CanHwFilterMask CanHwFilterMask] (-/○) * [#CanTTHardwareObjectTrigger CanTTHardwareObjectTrigger] (○/○) * [#CanTTHardwareObjectBaseCycle CanTTHardwareObjectBaseCycle] (-/○) * [#CanTTHardwareObjectCycleRepetition CanTTHardwareObjectCycleRepetition] (-/○) * [#CanTTHardwareObjectTimeMark CanTTHardwareObjectTimeMark] (-/○) * [#CanTTHardwareObjectTriggerId CanTTHardwareObjectTriggerId] (-/○) * [#CanTTHardwareObjectTriggerType CanTTHardwareObjectTriggerType] (-/○) * [#CanIcom CanIcom] (-/○) * [#CanIcomConfig CanIcomConfig] (-/○) * [#CanIcomConfigId CanIcomConfigId] (-/○) * [#CanIcomWakeOnBusOff CanIcomWakeOnBusOff] (-/○) * [#CanIcomWakeupCauses CanIcomWakeupCauses] (-/○) * [#CanIcomRxMessage CanIcomRxMessage] (-/○) * [#CanIcomCounterValue CanIcomCounterValue] (-/○) * [#CanIcomMessageId CanIcomMessageId] (-/○) * [#CanIcomMessageIdMask CanIcomMessageIdMask] (-/○) * [#CanIcomMissingMessageTimerValue CanIcomMissingMessageTimerValue] (-/○) * [#CanIcomPayloadLengthError CanIcomPayloadLengthError] (-/○) * [#CanIcomRxMessageSignalConfig CanIcomRxMessageSignalConfig] (-/○) * [#CanIcomSignalMask CanIcomSignalMask] (-/○) * [#CanIcomSignalOperation CanIcomSignalOperation] (-/○) * [#CanIcomSignalValue CanIcomSignalValue] (-/○) * [#CanIcomSignalRef CanIcomSignalRef] (-/○) * [#CanGeneral CanGeneral] (○/○) * [#CanChangeBaudrateApi CanChangeBaudrateApi] (○/-) * [#CanDevErrorDetection CanDevErrorDetection] (○/○) * [#CanHardwareCancellation CanHardwareCancellation] (○/-) * [#CanIdenticalIdCancellation CanIdenticalIdCancellation] (○/-) * [#CanIndex CanIndex] (○/○) * [#CanLPduReceiveCalloutFunction CanLPduReceiveCalloutFunction] (○/○) * [#CanMainFunctionBusoffPeriod CanMainFunctionBusoffPeriod] (○/○) * [#CanMainFunctionModePeriod CanMainFunctionModePeriod] (○/○) * [#CanMainFunctionWakeupPeriod CanMainFunctionWakeupPeriod] (○/○) * [#CanMultiplexedTransmission CanMultiplexedTransmission] (○/○) * [#CanPublicIcomSupport CanPublicIcomSupport] (-/○) * [#CanSetBaudrateApi CanSetBaudrateApi] (-/○) * [#CanTimeoutDuration CanTimeoutDuration] (○/○) * [#CanVersionInfoApi CanVersionInfoApi] (○/○) * [#CanCounterRef CanCounterRef] (○/-) * [#CanOsCounterRef CanOsCounterRef] * [#CanSupportTTCANRef CanSupportTTCANRef] (○/○) * [#CanIcomGeneral CanIcomGeneral] (-/○) * [#CanIcomLevel CanIcomLevel] (-/○) * [#CanIcomVariant CanIcomVariant] (-/○) * [#CanMainFunctionRWPeriods CanMainFunctionRWPeriods] (○/○) * [#CanMainFunctionReadPeriod CanMainFunctionReadPeriod] (○/-) * [#CanMainFunctionWritePeriod CanMainFunctionWritePeriod] (○/-) * [#CanMainFunctionPeriod CanMainFunctionPeriod] (-/○) * エラーコード一覧 ||= エラーコード =||= Dec =||= Hex =||= R4.0.3 =||= R4.2.2 =|| || CAN_E_PARAM_POINTER || 1|| 0x01|| ○ || ○ || || CAN_E_PARAM_HANDLE || 2|| 0x02|| ○ || ○ || || CAN_E_PARAM_DLC || 3|| 0x03|| ○ || ○ || || CAN_E_PARAM_CONTROLLER || 4|| 0x04|| ○ || ○ || || CAN_E_UNINIT || 5|| 0x05|| ○ || ○ || || CAN_E_TRANSITION || 6|| 0x06|| ○ || ○ || || CAN_E_DATALOST || 7|| 0x07|| ○ || ○ || || CAN_E_PARAM_BAUDRATE || 8|| 0x08|| - || ○ || || CAN_E_ICOM_CONFIG_INVALID || 9|| 0x09|| - || ○ || || CAN_E_INIT_FAILED || 10|| 0x0A|| - || ○ || ---- = API仕様 = == Can_Init == {{{ void Can_Init(const Can_ConfigType* Config) }}} * Canモジュールの初期化を行う * 引数Configで与えたポインタが指すコンフィギュレーションデータを使用して初期化される * [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 ポストビルド]のパラメータは本初期化により設定値を変更できる * 引数にNULLを与えた場合、デフォルトのコンフィギュレーションが設定される(本仕様はR4.1系で削除された) * [wiki:spec/CanIf#CanIf_Init CanIfのCanIf_Init]では、引数にNULLを与えた場合、デフォルトのコンフィギュレーションが設定される仕様となっていることから、TOPPERS/A-CANではCan_Initも同様にNULLが与えられた場合、デフォルトのコンフィギュレーションを設定するように実装している == Can_GetVersionInfo == {{{ void Can_GetVersionInfo(Std_VersionInfoType* versioninfo) }}} == Can_CheckBaudrate == {{{ R4.0.3: Std_ReturnType Can_CheckBaudrate(uint8 Controller, const uint16 Baudrate) R4.2.2: Std_ReturnType Can_CheckBaudrate(uint8 Controller, uint16 Baudrate) }}} * 引数Controllerで与えたCANコントローラが、引数Baudrateで与えたボーレートが使用可能かチェックする == Can_ChangeBaudrate == {{{ R4.0.3: Std_ReturnType Can_ChangeBaudrate(uint8 Controller, const uint16 Baudrate) R4.2.2: Std_ReturnType Can_ChangeBaudrate(uint8 Controller, uint16 Baudrate) }}} * 引数Controllerで与えたCANコントローラを、引数Baudrateで与えたボーレートへ変更する == Can_SetBaudrate == {{{ Std_ReturnType Can_SetBaudrate(uint8 Controller, uint16 BaudRateConfigID) }}} == Can_SetControllerMode == {{{ Can_ReturnType Can_SetControllerMode(uint8 Controller, Can_StateTransitionType Transition) }}} * 引数Controllerで与えたCANコントローラを、引数Transitionで与えた状態へ変更する == Can_DisableControllerInterrupts == {{{ void Can_DisableControllerInterrupts(uint8 Controller) }}} * 引数Controllerで与えたCANコントローラに関連する割込みを禁止する == Can_EnableControllerInterrupts == {{{ void Can_EnableControllerInterrupts(uint8 Controller) }}} * 引数Controllerで与えたCANコントローラに関連する割込みを許可する == Can_CheckWakeup == {{{ Can_ReturnType Can_CheckWakeup(uint8 Controller) }}} == Can_Write == {{{ Can_ReturnType Can_Write(Can_HwHandleType Hth, const Can_PduType* PduInfo) }}} * 引数Hthで与えたHTHから、引数PduInfoで与えたデータを送信する == Can_MainFunction_Write == {{{ void Can_MainFunction_Write(void) }}} == Can_MainFunction_Read == {{{ void Can_MainFunction_Read(void) }}} == Can_MainFunction_BusOff == {{{ void Can_MainFunction_BusOff(void) }}} == Can_MainFunction_Wakeup == {{{ void Can_MainFunction_Wakeup(void) }}} == Can_MainFunction_Mode == {{{ void Can_MainFunction_Mode(void) }}} == Can_SetIcomConfiguration == {{{ Std_ReturnType Can_SetIcomConfiguration(uint8 Controller, IcomConfigIdType ConfigurationId) }}} ---- = コンフィギュレーション仕様 = == CanConfigSet == {{{ /AUTOSAR/EcucDefs/Can/CanConfigSet }}} * 型:Container * 多重度:1 * [#Can_Init Can_Init]により設定されるコンフィギュレーション全体のコンテナ * TOPPERS/A-CANでは、[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 ポストビルド]による複数のコンフィギュレーション定義に対応するため、多重度を1..*として本コンテナを複数定義可能としている == CanController == {{{ /AUTOSAR/EcucDefs/Can/CanConfigSet/CanController }}} * 型:Container * 多重度:1..* * CANコントローラを設定するコンテナ == CanBusoffProcessing == {{{ /AUTOSAR/EcucDefs/Can/CanConfigSet/CanController/CanBusoffProcessing }}} * 型:EnumerationParam * 多重度:1 * 選択肢: * INTERRUPT:割込みによって行う * POLLING:ポーリングによって行う * バスオフ検知方法を設定する == CanControllerActivation == {{{ /AUTOSAR/EcucDefs/Can/CanConfigSet/CanController/CanControllerActivation }}} * 型:BooleanParam * 多重度:1 * CANコントローラの使用有無 == CanControllerBaseAddress == {{{ /AUTOSAR/EcucDefs/Can/CanConfigSet/CanController/CanControllerBaseAddress }}} * 型:IntegerParam * 多重度:1 * 上限値:4294967295 * 下限値:0 * CANコントローラのベースアドレス == CanControllerId == {{{ /AUTOSAR/EcucDefs/Can/CanConfigSet/CanController/CanControllerId }}} * 型:IntegerParam * 多重度:1 * 上限値:255 * 下限値:0 * CANコントローラのID * TOPPERS/A-CANでは、処理速度向上のため、0から連番とする制約を設けている == CanRxProcessing == {{{ /AUTOSAR/EcucDefs/Can/CanConfigSet/CanController/CanRxProcessing }}} * 型:EnumerationParam * 多重度:1 * 選択肢: * INTERRUPT:割込みによって行う * POLLING:ポーリングによって行う * メッセージ受信検知方法を設定する == CanTxProcessing == {{{ /AUTOSAR/EcucDefs/Can/CanConfigSet/CanController/CanTxProcessing }}} * 型:EnumerationParam * 多重度:1 * 選択肢: * INTERRUPT:割込みによって行う * POLLING:ポーリングによって行う * メッセージ送信完了検知方法を設定する == CanWakeupFunctionalityAPI == {{{ /AUTOSAR/EcucDefs/Can/CanConfigSet/CanController/CanWakeupFunctionalityAPI }}} * 型:BooleanParam * 多重度:1 * デフォルト値:false == CanWakeupProcessing == {{{ /AUTOSAR/EcucDefs/Can/CanConfigSet/CanController/CanWakeupProcessing }}} * 型:EnumerationParam * 多重度:1 * 選択肢: * INTERRUPT:割込みによって行う * POLLING:ポーリングによって行う * ウェイクアップ検知方法を設定する == CanWakeupSupport == {{{ /AUTOSAR/EcucDefs/Can/CanConfigSet/CanController/CanWakeupSupport }}} * 型:BooleanParam * 多重度:1 * ウェイクアップのサポート有無 == CanControllerDefaultBaudrate == {{{ /AUTOSAR/EcucDefs/Can/CanConfigSet/CanController/CanControllerDefaultBaudrate }}} * 型:Reference * 多重度:1 * 参照先:[#CanControllerBaudrateConfig CanControllerBaudrateConfig] * デフォルトのボーレートを設定する == CanCpuClockRef == {{{ /AUTOSAR/EcucDefs/Can/CanConfigSet/CanController/CanCpuClockRef }}} * 型:Reference * 多重度:1 * 参照先:{{{/AUTOSAR/EcucDefs/Mcu/McuModuleConfiguration/McuClockSettingConfig/McuClockReferencePoint}}} == CanWakeupSourceRef == {{{ /AUTOSAR/EcucDefs/Can/CanConfigSet/CanController/CanWakeupSourceRef }}} * 型:Reference * 多重度:0..1 * 参照先:{{{/AUTOSAR/EcucDefs/EcuM/EcuMConfiguration/EcuMCommonConfiguration/EcuMWakeupSource}}} == CanControllerBaudrateConfig == {{{ /AUTOSAR/EcucDefs/Can/CanConfigSet/CanController/CanControllerBaudrateConfig }}} * 型:Container * 多重度:1..* * ボーレートを設定するコンテナ == CanControllerBaudRate == {{{ /AUTOSAR/EcucDefs/Can/CanConfigSet/CanController/CanControllerBaudrateConfig/CanControllerBaudRate }}} * 型:IntegerParam * 多重度:1 * 上限値:2000 * 下限値:0 * ボーレートの値 == CanControllerBaudRateConfigID == {{{ /AUTOSAR/EcucDefs/Can/CanConfigSet/CanController/CanControllerBaudrateConfig/CanControllerBaudRateConfigID }}} * 型:IntegerParam * 多重度:1 * 上限値:65535 * 下限値:0 * デフォルト値:0 == CanControllerPropSeg == {{{ /AUTOSAR/EcucDefs/Can/CanConfigSet/CanController/CanControllerBaudrateConfig/CanControllerPropSeg }}} * 型:IntegerParam * 多重度:1 * 上限値:255 * 下限値:0 * 伝播時間セグメントを設定する * 参考:http://eetimes.jp/ee/articles/0912/15/news104_2.html == CanControllerSeg1 == {{{ /AUTOSAR/EcucDefs/Can/CanConfigSet/CanController/CanControllerBaudrateConfig/CanControllerSeg1 }}} * 型:IntegerParam * 多重度:1 * 上限値:255 * 下限値:0 * 位相バッファセグメント1を設定する * 参考:http://eetimes.jp/ee/articles/0912/15/news104_2.html == CanControllerSeg2 == {{{ /AUTOSAR/EcucDefs/Can/CanConfigSet/CanController/CanControllerBaudrateConfig/CanControllerSeg2 }}} * 型:IntegerParam * 多重度:1 * 上限値:255 * 下限値:0 * 位相バッファセグメント2を設定する * 参考:http://eetimes.jp/ee/articles/0912/15/news104_2.html == CanControllerSyncJumpWidth == {{{ /AUTOSAR/EcucDefs/Can/CanConfigSet/CanController/CanControllerBaudrateConfig/CanControllerSyncJumpWidth }}} * 型:IntegerParam * 多重度:1 * 上限値:255 * 下限値:0 * 再同期ジャンプ幅を設定する * 参考:http://eetimes.jp/ee/articles/0912/15/news104_2.html == CanFilterMask == {{{ /AUTOSAR/EcucDefs/Can/CanConfigSet/CanController/CanFilterMask }}} * 型:Container * 多重度:0..* * フィルタマスクを設定するコンテナ == CanFilterMaskValue == {{{ /AUTOSAR/EcucDefs/Can/CanConfigSet/CanController/CanFilterMask/CanFilterMaskValue }}} * 型:IntegerParam * 多重度:1 * 受信したCAN-IDに対して適用するフィルタマスクを設定する == CanControllerFdBaudrateConfig == {{{ /AUTOSAR/EcucDefs/Can/CanConfigSet/CanController/CanControllerBaudrateConfig/CanControllerFdBaudrateConfig }}} * 型:Container * 多重度:0..1 == CanControllerFdBaudRate == {{{ /AUTOSAR/EcucDefs/Can/CanConfigSet/CanController/CanControllerBaudrateConfig/CanControllerFdBaudrateConfig/CanControllerFdBaudRate }}} * 型:IntegerParam * 多重度:1 * 上限値:16000 * 下限値:0 == CanControllerPropSeg == {{{ /AUTOSAR/EcucDefs/Can/CanConfigSet/CanController/CanControllerBaudrateConfig/CanControllerFdBaudrateConfig/CanControllerPropSeg }}} * 型:IntegerParam * 多重度:1 * 上限値:255 * 下限値:0 == CanControllerSeg1 == {{{ /AUTOSAR/EcucDefs/Can/CanConfigSet/CanController/CanControllerBaudrateConfig/CanControllerFdBaudrateConfig/CanControllerSeg1 }}} * 型:IntegerParam * 多重度:1 * 上限値:255 * 下限値:0 == CanControllerSeg2 == {{{ /AUTOSAR/EcucDefs/Can/CanConfigSet/CanController/CanControllerBaudrateConfig/CanControllerFdBaudrateConfig/CanControllerSeg2 }}} * 型:IntegerParam * 多重度:1 * 上限値:255 * 下限値:0 == CanControllerSyncJumpWidth == {{{ /AUTOSAR/EcucDefs/Can/CanConfigSet/CanController/CanControllerBaudrateConfig/CanControllerFdBaudrateConfig/CanControllerSyncJumpWidth }}} * 型:IntegerParam * 多重度:1 * 上限値:255 * 下限値:0 == CanControllerTrcvDelayCompensationOffset == {{{ /AUTOSAR/EcucDefs/Can/CanConfigSet/CanController/CanControllerBaudrateConfig/CanControllerFdBaudrateConfig/CanControllerTrcvDelayCompensationOffset }}} * 型:IntegerParam * 多重度:0..1 * 上限値:400 * 下限値:0 == CanControllerTxBitRateSwitch == {{{ /AUTOSAR/EcucDefs/Can/CanConfigSet/CanController/CanControllerBaudrateConfig/CanControllerFdBaudrateConfig/CanControllerTxBitRateSwitch }}} * 型:BooleanParam * 多重度:1 * デフォルト値:true == CanTTController == {{{ /AUTOSAR/EcucDefs/Can/CanConfigSet/CanController/CanTTController }}} * 型:Container * 多重度:0..1 * R4.0.3:本コンテナに所属するパラメータ仕様は、[wiki:spec/Ttcan TTCAN Driver]の仕様書に規定されている == CanTTControllerApplWatchdogLimit == {{{ /AUTOSAR/EcucDefs/Can/CanConfigSet/CanController/CanTTController/CanTTControllerApplWatchdogLimit }}} * 型:IntegerParam * 多重度:1 * 上限値:255 * 下限値:0 == CanTTControllerCycleCountMax == {{{ /AUTOSAR/EcucDefs/Can/CanConfigSet/CanController/CanTTController/CanTTControllerCycleCountMax }}} * 型:IntegerParam * 多重度:1 * 上限値:63 * 下限値:0 == CanTTControllerExpectedTxTrigger == {{{ /AUTOSAR/EcucDefs/Can/CanConfigSet/CanController/CanTTController/CanTTControllerExpectedTxTrigger }}} * 型:IntegerParam * 多重度:1 * 上限値:255 * 下限値:0 == CanTTControllerExternalClockSynchronisation == {{{ /AUTOSAR/EcucDefs/Can/CanConfigSet/CanController/CanTTController/CanTTControllerExternalClockSynchronisation }}} * 型:BooleanParam * 多重度:1 == CanTTControllerGlobalTimeFiltering == {{{ /AUTOSAR/EcucDefs/Can/CanConfigSet/CanController/CanTTController/CanTTControllerGlobalTimeFiltering }}} * 型:BooleanParam * 多重度:1 == CanTTControllerInitialRefOffset == {{{ /AUTOSAR/EcucDefs/Can/CanConfigSet/CanController/CanTTController/CanTTControllerInitialRefOffset }}} * 型:IntegerParam * 多重度:1 * 上限値:127 * 下限値:0 == CanTTControllerInterruptEnable == {{{ /AUTOSAR/EcucDefs/Can/CanConfigSet/CanController/CanTTController/CanTTControllerInterruptEnable }}} * 型:IntegerParam * 多重度:1 * 上限値:1023 * 下限値:0 == CanTTControllerLevel2 == {{{ /AUTOSAR/EcucDefs/Can/CanConfigSet/CanController/CanTTController/CanTTControllerLevel2 }}} * 型:BooleanParam * 多重度:1 == CanTTControllerNTUConfig == {{{ /AUTOSAR/EcucDefs/Can/CanConfigSet/CanController/CanTTController/CanTTControllerNTUConfig }}} * 型:FloatParam * 多重度:1 * 上限値:100 * 下限値:0 == CanTTControllerOperationMode == {{{ /AUTOSAR/EcucDefs/Can/CanConfigSet/CanController/CanTTController/CanTTControllerOperationMode }}} * 型:EnumerationParam * 多重度:1 * 選択肢: * CAN_TT_EVENT_SYNC_TIME_TRIGGERED * CAN_TT_EVENT_TRIGGERED * CAN_TT_TIME_TRIGGERED == CanTTControllerSyncDeviation == {{{ /AUTOSAR/EcucDefs/Can/CanConfigSet/CanController/CanTTController/CanTTControllerSyncDeviation }}} * 型:FloatParam * 多重度:1 * 上限値:100 * 下限値:0 == CanTTControllerTURRestore == {{{ /AUTOSAR/EcucDefs/Can/CanConfigSet/CanController/CanTTController/CanTTControllerTURRestore }}} * 型:BooleanParam * 多重度:1 == CanTTControllerTimeMaster == {{{ /AUTOSAR/EcucDefs/Can/CanConfigSet/CanController/CanTTController/CanTTControllerTimeMaster }}} * 型:BooleanParam * 多重度:1 == CanTTControllerTimeMasterPriority == {{{ /AUTOSAR/EcucDefs/Can/CanConfigSet/CanController/CanTTController/CanTTControllerTimeMasterPriority }}} * 型:IntegerParam * 多重度:1 * 上限値:7 * 下限値:0 == CanTTControllerTxEnableWindowLength == {{{ /AUTOSAR/EcucDefs/Can/CanConfigSet/CanController/CanTTController/CanTTControllerTxEnableWindowLength }}} * 型:IntegerParam * 多重度:1 * 上限値:16 * 下限値:1 == CanTTControllerWatchTriggerGapTimeMark == {{{ /AUTOSAR/EcucDefs/Can/CanConfigSet/CanController/CanTTController/CanTTControllerWatchTriggerGapTimeMark }}} * 型:IntegerParam * 多重度:1 * 上限値:65535 * 下限値:0 == CanTTControllerWatchTriggerTimeMark == {{{ /AUTOSAR/EcucDefs/Can/CanConfigSet/CanController/CanTTController/CanTTControllerWatchTriggerTimeMark }}} * 型:IntegerParam * 多重度:1 * 上限値:65535 * 下限値:0 == CanTTIRQProcessing == {{{ /AUTOSAR/EcucDefs/Can/CanConfigSet/CanController/CanTTController/CanTTIRQProcessing }}} * 型:EnumerationParam * 多重度:1 * 選択肢: * INTERRUPT * POLLING == CanHardwareObject == {{{ /AUTOSAR/EcucDefs/Can/CanConfigSet/CanHardwareObject }}} * 型:Container * 多重度:1..* * ハードウェアオブジェクト(メールボックス)を設定するコンテナ == CanFdPaddingValue == {{{ /AUTOSAR/EcucDefs/Can/CanConfigSet/CanHardwareObject/CanFdPaddingValue }}} * 型:IntegerParam * 多重度:0..1 * 上限値:255 * 下限値:0 * デフォルト値:0 == CanHandleType == {{{ /AUTOSAR/EcucDefs/Can/CanConfigSet/CanHardwareObject/CanHandleType }}} * 型:EnumerationParam * 多重度:1 * 選択肢: * BASIC:ベーシックCAN * FULL:フルCAN * メッセージマネジメントを設定する * 参考:http://monoist.atmarkit.co.jp/mn/articles/0809/10/news140_2.html == CanHwObjectCount == {{{ /AUTOSAR/EcucDefs/Can/CanConfigSet/CanHardwareObject/CanHwObjectCount }}} * 型:IntegerParam * 多重度:1 * 上限値:65535 * 下限値:1 * デフォルト値:1 == CanIdType == {{{ /AUTOSAR/EcucDefs/Can/CanConfigSet/CanHardwareObject/CanIdType }}} * 型:EnumerationParam * 多重度:1 * 選択肢: * EXTENDED:拡張フォーマット * MIXED:混在 * STANDARD:標準フォーマット * データフレームの形式 == CanIdValue == {{{ /AUTOSAR/EcucDefs/Can/CanConfigSet/CanHardwareObject/CanIdValue }}} * 型:IntegerParam * 多重度:1 * [#CanFilterMaskValue CanFilterMaskValue]によるマスク後の値と比較する値を設定する == CanObjectId == {{{ /AUTOSAR/EcucDefs/Can/CanConfigSet/CanHardwareObject/CanObjectId }}} * 型:IntegerParam * 多重度:1 * 上限値:65535 * 下限値:0 * HOHのID * 0から連番とする制約がある == CanObjectType == {{{ /AUTOSAR/EcucDefs/Can/CanConfigSet/CanHardwareObject/CanObjectType }}} * 型:EnumerationParam * 多重度:1 * 選択肢: * RECEIVE:受信 * TRANSMIT:送信 * ハードウェアオブジェクトが、受信(HRH)か送信(HTH)かを設定する == CanTriggerTransmitEnable == {{{ /AUTOSAR/EcucDefs/Can/CanConfigSet/CanHardwareObject/CanTriggerTransmitEnable }}} * 型:BooleanParam * 多重度:0..1 * デフォルト値:false == CanControllerRef == {{{ /AUTOSAR/EcucDefs/Can/CanConfigSet/CanHardwareObject/CanControllerRef }}} * 型:Reference * 多重度:1 * 参照先:[#CanController CanController] * HOHで送受信されるCANコントローラを関連付ける == CanFilterMaskRef == {{{ /AUTOSAR/EcucDefs/Can/CanConfigSet/CanHardwareObject/CanFilterMaskRef }}} * 型:Reference * 多重度:0..1 * 参照先:[#CanFilterMask CanFilterMask] * HRHで使用されるフィルタマスクを指定する == CanMainFunctionRWPeriodRef == {{{ /AUTOSAR/EcucDefs/Can/CanConfigSet/CanHardwareObject/CanMainFunctionRWPeriodRef }}} * 型:Reference * 多重度:0..1 * 参照先:[#CanMainFunctionRWPeriods CanMainFunctionRWPeriods] * 送受信をポーリングで行う場合のポーリング周期を設定する == CanHwFilter == {{{ /AUTOSAR/EcucDefs/Can/CanConfigSet/CanHardwareObject/CanHwFilter }}} * 型:Container * 多重度:0..* == CanHwFilterCode == {{{ /AUTOSAR/EcucDefs/Can/CanConfigSet/CanHardwareObject/CanHwFilter/CanHwFilterCode }}} * 型:IntegerParam * 多重度:1 * 上限値:4294967295 * 下限値:0 == CanHwFilterMask == {{{ /AUTOSAR/EcucDefs/Can/CanConfigSet/CanHardwareObject/CanHwFilter/CanHwFilterMask }}} * 型:IntegerParam * 多重度:1 * 上限値:4294967295 * 下限値:0 == CanTTHardwareObjectTrigger == {{{ /AUTOSAR/EcucDefs/Can/CanConfigSet/CanHardwareObject/CanTTHardwareObjectTrigger }}} * 型:Container * 多重度:0..* * R4.0.3:本コンテナに所属するパラメータ仕様は、[wiki:spec/Ttcan TTCAN Driver]の仕様書に規定されている == CanTTHardwareObjectBaseCycle == {{{ /AUTOSAR/EcucDefs/Can/CanConfigSet/CanHardwareObject/CanTTHardwareObjectTrigger/CanTTHardwareObjectBaseCycle }}} * 型:IntegerParam * 多重度:1 * 上限値:63 * 下限値:0 == CanTTHardwareObjectCycleRepetition == {{{ /AUTOSAR/EcucDefs/Can/CanConfigSet/CanHardwareObject/CanTTHardwareObjectTrigger/CanTTHardwareObjectCycleRepetition }}} * 型:IntegerParam * 多重度:1 * 上限値:64 * 下限値:1 == CanTTHardwareObjectTimeMark == {{{ /AUTOSAR/EcucDefs/Can/CanConfigSet/CanHardwareObject/CanTTHardwareObjectTrigger/CanTTHardwareObjectTimeMark }}} * 型:IntegerParam * 多重度:1 * 上限値:65535 * 下限値:0 == CanTTHardwareObjectTriggerId == {{{ /AUTOSAR/EcucDefs/Can/CanConfigSet/CanHardwareObject/CanTTHardwareObjectTrigger/CanTTHardwareObjectTriggerId }}} * 型:IntegerParam * 多重度:1 * 上限値:63 * 下限値:0 == CanTTHardwareObjectTriggerType == {{{ /AUTOSAR/EcucDefs/Can/CanConfigSet/CanHardwareObject/CanTTHardwareObjectTrigger/CanTTHardwareObjectTriggerType }}} * 型:EnumerationParam * 多重度:1 * 選択肢: * CAN_TT_RX_TRIGGER * CAN_TT_TX_REF_TRIGGER * CAN_TT_TX_REF_TRIGGER_GAP * CAN_TT_TX_TRIGGER_EXCLUSIVE * CAN_TT_TX_TRIGGER_MERGED * CAN_TT_TX_TRIGGER_SINGLE == CanIcom == {{{ /AUTOSAR/EcucDefs/Can/CanConfigSet/CanIcom }}} * 型:Container * 多重度:0..1 == CanIcomConfig == {{{ /AUTOSAR/EcucDefs/Can/CanConfigSet/CanIcom/CanIcomConfig }}} * 型:Container * 多重度:1..* == CanIcomConfigId == {{{ /AUTOSAR/EcucDefs/Can/CanConfigSet/CanIcom/CanIcomConfig/CanIcomConfigId }}} * 型:IntegerParam * 多重度:1 * 上限値:255 * 下限値:1 == CanIcomWakeOnBusOff == {{{ /AUTOSAR/EcucDefs/Can/CanConfigSet/CanIcom/CanIcomConfig/CanIcomWakeOnBusOff }}} * 型:BooleanParam * 多重度:1 * デフォルト値:true == CanIcomWakeupCauses == {{{ /AUTOSAR/EcucDefs/Can/CanConfigSet/CanIcom/CanIcomConfig/CanIcomWakeupCauses }}} * 型:Container * 多重度:1 == CanIcomRxMessage == {{{ /AUTOSAR/EcucDefs/Can/CanConfigSet/CanIcom/CanIcomConfig/CanIcomWakeupCauses/CanIcomRxMessage }}} * 型:Container * 多重度:1..* == CanIcomCounterValue == {{{ /AUTOSAR/EcucDefs/Can/CanConfigSet/CanIcom/CanIcomConfig/CanIcomWakeupCauses/CanIcomRxMessage/CanIcomCounterValue }}} * 型:IntegerParam * 多重度:0..1 * 上限値:65536 * 下限値:1 == CanIcomMessageId == {{{ /AUTOSAR/EcucDefs/Can/CanConfigSet/CanIcom/CanIcomConfig/CanIcomWakeupCauses/CanIcomRxMessage/CanIcomMessageId }}} * 型:IntegerParam * 多重度:1 * 上限値:536870912 * 下限値:0 == CanIcomMessageIdMask == {{{ /AUTOSAR/EcucDefs/Can/CanConfigSet/CanIcom/CanIcomConfig/CanIcomWakeupCauses/CanIcomRxMessage/CanIcomMessageIdMask }}} * 型:IntegerParam * 多重度:0..1 * 上限値:536870912 * 下限値:0 == CanIcomMissingMessageTimerValue == {{{ /AUTOSAR/EcucDefs/Can/CanConfigSet/CanIcom/CanIcomConfig/CanIcomWakeupCauses/CanIcomRxMessage/CanIcomMissingMessageTimerValue }}} * 型:FloatParam * 多重度:0..1 == CanIcomPayloadLengthError == {{{ /AUTOSAR/EcucDefs/Can/CanConfigSet/CanIcom/CanIcomConfig/CanIcomWakeupCauses/CanIcomRxMessage/CanIcomPayloadLengthError }}} * 型:BooleanParam * 多重度:1 * デフォルト値:false == CanIcomRxMessageSignalConfig == {{{ /AUTOSAR/EcucDefs/Can/CanConfigSet/CanIcom/CanIcomConfig/CanIcomWakeupCauses/CanIcomRxMessage/CanIcomRxMessageSignalConfig }}} * 型:Container * 多重度:0..* == CanIcomSignalMask == {{{ /AUTOSAR/EcucDefs/Can/CanConfigSet/CanIcom/CanIcomConfig/CanIcomWakeupCauses/CanIcomRxMessage/CanIcomRxMessageSignalConfig/CanIcomSignalMask }}} * 型:IntegerParam * 多重度:1 * 上限値:18446744073709551615 * 下限値:0 == CanIcomSignalOperation == {{{ /AUTOSAR/EcucDefs/Can/CanConfigSet/CanIcom/CanIcomConfig/CanIcomWakeupCauses/CanIcomRxMessage/CanIcomRxMessageSignalConfig/CanIcomSignalOperation }}} * 型:EnumerationParam * 多重度:1 * 選択肢: * AND * EQUAL * GREATER * SMALLER * XOR == CanIcomSignalValue == {{{ /AUTOSAR/EcucDefs/Can/CanConfigSet/CanIcom/CanIcomConfig/CanIcomWakeupCauses/CanIcomRxMessage/CanIcomRxMessageSignalConfig/CanIcomSignalValue }}} * 型:IntegerParam * 多重度:1 * 上限値:18446744073709551615 * 下限値:0 == CanIcomSignalRef == {{{ /AUTOSAR/EcucDefs/Can/CanConfigSet/CanIcom/CanIcomConfig/CanIcomWakeupCauses/CanIcomRxMessage/CanIcomRxMessageSignalConfig/CanIcomSignalRef }}} * 型:Reference * 多重度:0..1 * 参照先:{{{/AUTOSAR/EcucDefs/Com/ComConfig/ComSignal}}} == CanGeneral == {{{ /AUTOSAR/EcucDefs/Can/CanGeneral }}} * 型:Container * 多重度:1 * Canモジュールの全体的な設定を行うコンテナ == CanChangeBaudrateApi == {{{ /AUTOSAR/EcucDefs/Can/CanGeneral/CanChangeBaudrateApi }}} * 型:BooleanParam * 多重度:1 * [#Can_ChangeBaudrate Can_ChangeBaudrate]の使用有無 == CanDevErrorDetection == {{{ /AUTOSAR/EcucDefs/Can/CanGeneral/CanDevErrorDetection }}} * 型:BooleanParam * 多重度:1 * DETエラー通知の使用有無 == CanHardwareCancellation == {{{ /AUTOSAR/EcucDefs/Can/CanGeneral/CanHardwareCancellation }}} * 型:BooleanParam * 多重度:1 * ハードウェアによる送信キャンセルの使用有無 * 本パラメータはR4.2系で削除された == CanIdenticalIdCancellation == {{{ /AUTOSAR/EcucDefs/Can/CanGeneral/CanIdenticalIdCancellation }}} * 型:BooleanParam * 多重度:1 * 送信を保留しているPDUの送信キャンセルの使用有無 * 本パラメータはR4.2系で削除された == CanIndex == {{{ /AUTOSAR/EcucDefs/Can/CanGeneral/CanIndex }}} * 型:IntegerParam * 多重度:1 * 上限値:255 * 下限値:0 * CanモジュールのインスタンスID * 1つしか使用しない場合0を指定する == CanLPduReceiveCalloutFunction == {{{ /AUTOSAR/EcucDefs/Can/CanGeneral/CanLPduReceiveCalloutFunction }}} * 型:FunctionName * 多重度:0..1 * CANバスからデータを受信し、PDUを上位レイヤへ送信する際のコールバック使用有無 == CanMainFunctionBusoffPeriod == {{{ /AUTOSAR/EcucDefs/Can/CanGeneral/CanMainFunctionBusoffPeriod }}} * 型:FloatParam * 多重度:0..1 * 上限値:65.535 * 下限値:0.001 * バスオフ検知をポーリングで行う場合のポーリング周期を設定する == CanMainFunctionModePeriod == {{{ /AUTOSAR/EcucDefs/Can/CanGeneral/CanMainFunctionModePeriod }}} * 型:FloatParam * 多重度:1 * 上限値:65.535 * 下限値:0.001 * CANコントローラのモード変更通知検知のポーリング周期を設定する == CanMainFunctionWakeupPeriod == {{{ /AUTOSAR/EcucDefs/Can/CanGeneral/CanMainFunctionWakeupPeriod }}} * 型:FloatParam * 多重度:0..1 * 上限値:65.535 * 下限値:0.001 * ウェイクアップ検知をポーリングで行う場合のポーリング周期を設定する == CanMultiplexedTransmission == {{{ /AUTOSAR/EcucDefs/Can/CanGeneral/CanMultiplexedTransmission }}} * 型:BooleanParam * 多重度:1 == CanPublicIcomSupport == {{{ /AUTOSAR/EcucDefs/Can/CanGeneral/CanPublicIcomSupport }}} * 型:BooleanParam * 多重度:1 * デフォルト値:false == CanSetBaudrateApi == {{{ /AUTOSAR/EcucDefs/Can/CanGeneral/CanSetBaudrateApi }}} * 型:BooleanParam * 多重度:0..1 * デフォルト値:false == CanTimeoutDuration == {{{ /AUTOSAR/EcucDefs/Can/CanGeneral/CanTimeoutDuration }}} * 型:FloatParam * 多重度:1 * 上限値:65.535 * 下限値: * R4.0.3:0.001 * R4.2.2:1E-6 * ハードウェア上のモードが切り替わるのを待機するタイムアウトの上限値 * 秒単位で指定する == CanVersionInfoApi == {{{ /AUTOSAR/EcucDefs/Can/CanGeneral/CanVersionInfoApi }}} * 型:BooleanParam * 多重度:1 * [#Can_GetVersionInfo Can_GetVersionInfo]の使用有無 == CanCounterRef == {{{ /AUTOSAR/EcucDefs/Can/CanGeneral/CanCounterRef }}} * 型:Reference * 多重度:1 * 参照先:{{{/AUTOSAR/EcucDefs/Os/OsCounter}}} * Canモジュール内で時間を計測するために使用するOSカウンタを指定する == CanOsCounterRef == {{{ /AUTOSAR/EcucDefs/Can/CanGeneral/CanOsCounterRef }}} * 型:Reference * 多重度:0..1 * 参照先:{{{/AUTOSAR/EcucDefs/Os/OsCounter}}} * Canモジュール内で時間を計測するために使用するOSカウンタを指定する == CanSupportTTCANRef == {{{ /AUTOSAR/EcucDefs/Can/CanGeneral/CanSupportTTCANRef }}} * 型:Reference * 多重度:1 * 参照先:{{{/AUTOSAR/EcucDefs/CanIf/CanIfPrivateCfg}}} == CanIcomGeneral == {{{ /AUTOSAR/EcucDefs/Can/CanGeneral/CanIcomGeneral }}} * 型:Container * 多重度:0..1 == CanIcomLevel == {{{ /AUTOSAR/EcucDefs/Can/CanGeneral/CanIcomGeneral/CanIcomLevel }}} * 型:EnumerationParam * 多重度:0..1 * 選択肢: * CAN_ICOM_LEVEL_ONE * CAN_ICOM_LEVEL_TWO * デフォルト値:CAN_ICOM_LEVEL_ONE == CanIcomVariant == {{{ /AUTOSAR/EcucDefs/Can/CanGeneral/CanIcomGeneral/CanIcomVariant }}} * 型:EnumerationParam * 多重度:1 * 選択肢: * CAN_ICOM_VARIANT_HW * CAN_ICOM_VARIANT_NONE * CAN_ICOM_VARIANT_SW * デフォルト値:CAN_ICOM_VARIANT_NONE == CanMainFunctionRWPeriods == {{{ /AUTOSAR/EcucDefs/Can/CanGeneral/CanMainFunctionRWPeriods }}} * 型:Container * 多重度:1 * メッセージ受信検知とメッセージ送信完了検知をポーリングで行う場合のポーリング周期を設定するコンテナ == CanMainFunctionReadPeriod == {{{ /AUTOSAR/EcucDefs/Can/CanGeneral/CanMainFunctionRWPeriods/CanMainFunctionReadPeriod }}} * 型:FloatParam * 多重度:0..* * 上限値:65.535 * 下限値:0.001 * メッセージ受信検知のポーリング周期を設定する * 秒単位で指定する == CanMainFunctionWritePeriod == {{{ /AUTOSAR/EcucDefs/Can/CanGeneral/CanMainFunctionRWPeriods/CanMainFunctionWritePeriod }}} * 型:FloatParam * 多重度:0..* * 上限値:65.535 * 下限値:0.001 * メッセージ送信完了検知のポーリング周期を設定する * 秒単位で指定する == CanMainFunctionPeriod == {{{ /AUTOSAR/EcucDefs/Can/CanGeneral/CanMainFunctionRWPeriods/CanMainFunctionPeriod }}} * 型:FloatParam * 多重度:1 * 上限値:65.535 * 下限値:0.001