AUTOSAR COM
The AUTOSAR COM module provides signal-based communication services for inter-ECU exchange across diverse bus systems.
Funktionen — Übersicht
void Com_Init (const Com_ConfigType* config);This service initializes internal and external interfaces and variables of the AUTO- SAR COM module layer for the further...void Com_DeInit (void);This service stops the inter - ECU communication.void Com_IpduGroupStart (Com_IpduGroupIdType IpduGroupId, boolean initialize);Starts a preconfigured I - PDU group.void Com_IpduGroupStop (Com_IpduGroupIdType IpduGroupId);Stops a preconfigured I - PDU group.void Com_EnableReceptionDM (Com_IpduGroupIdType IpduGroupId);Enables the reception deadline monitoring for the I - PDUs within the given I - PDU group.void Com_DisableReceptionDM (Com_IpduGroupIdType IpduGroupId);Disables the reception deadline monitoring for the I - PDUs within the given I - PDU group.Com_StatusType Com_GetStatus (void);Returns the status of the AUTOSAR COM module.void Com_GetVersionInfo (Std_VersionInfoType* versioninfo);Returns the version information of this module.uint8 Com_SendSignal (Com_SignalIdType SignalId, const void* SignalDataPtr);The service Com_ Send Signal updates the signal object identified by Signal Id with the signal referenced by the Signal Data...uint8 Com_SendDynSignal (Com_SignalIdType SignalId, const void* SignalDataPtr, uint16 Length);The service Com_ Send Dyn Signal updates the signal object identified by Signal Id with the signal referenced by the Signal...uint8 Com_ReceiveSignal (Com_SignalIdType SignalId, void* SignalDataPtr);Com_ Receive Signal copies the data of the signal identified by Signal Id to the location specified by Signal Data Ptr.uint8 Com_ReceiveDynSignal (Com_SignalIdType SignalId, void* SignalDataPtr, uint16* Length);Com_ Receive Dyn Signal copies the data of the signal identified by Signal Id to the lo cation specified by Signal Data Ptr...uint8 Com_SendSignalGroup (Com_SignalGroupIdType SignalGroupId);The service Com_ Send Si gnal Group copies the content of the associated shadow buffer to the associated I - PDU.uint8 Com_ReceiveSignalGroup (Com_SignalGroupIdType SignalGroupId);The service Com_ Receive Signal Group copies the received signal group from the I - PDU to the shadow buffer.uint8 Com_SendSignalGroupArray (Com_SignalGroupIdType SignalGroupId, const uint8* SignalGroupArrayPtr);The service Com_ Send Signal Group Array copies the conte nt of the provided Signal Group Array Ptr to the associated I - PDU.uint8 Com_ReceiveSignalGroupArray (Com_SignalGroupIdType SignalGroupId, uint8* SignalGroupArrayPtr);The service Com_ Receive Signal Group Array copies the re ceived signal group arrayuint8 Com_ReceiveSignalWithMetaData (Com_SignalIdType SignalId, void* SignalDataPtr, uint8* MetaDataPtr);Com_ Receive Signal With Meta Data copies the data of the signal identified by Signal Id to the location specified by Signal...uint8 Com_ReceiveDynSignalWithMetaData (Com_SignalIdType SignalId, void* SignalDataPtr, uint16* Length, uint8* MetaDataPtr);Com_ Receive Dyn Signal With Meta Da ta copies the data of the signal identified by Signal Id to the location specified by...uint8 Com_ReceiveSignalGroupWith MetaData (Com_SignalGroupIdType SignalGroupId, uint8* MetaDataPtr); ⚠️The service Com_ Receive Signal Group With Meta Data copies the received signal group from the I - PDU to the shadow buffer.void Com_ReceiveSignalGroupArrayWith MetaData (Com_SignalGroupIdType SignalGroupId, uint8* SignalGroupArrayPtr, uint8* MetaDataPtr); ⚠️The service Com_ Receive Signal Group Array With Meta Data copies the received si gnal group array representation from the PDU...uint8 Com_SendSignalWith MetaData (Com_SignalIdType SignalId, void* SignalDataPtr, uint8* MetaDataPtr); ⚠️The service Com_ Send Si gnal With Meta Data updates the signal object identified by Signal Id with the signal referenced by...uint8 Com_SendDynSignalWithMetaData (Com_SignalIdType SignalId, void* SignalDataPtr, uint16 Length, uint8* MetaDataPtr);The service Com_ Send Dyn Signal With Meta Data updates the signal object identified by Signal Id wit h the signal referenced...uint8 Com_SendSignalGroupWith MetaData (Com_SignalGroupIdType SignalGroupId, uint8* MetaDataPtr); ⚠️The service Com_ Send Signal Group With Meta Data copies the content of the associated shadow buffer to the associated I - PDU.uint8 Com_SendSignalGroupArrayWithMetaData (Com_SignalGroupIdType SignalGroupId, uint8* SignalGroupArrayPtr, uint8* MetaDataPtr);The service Com_ Send Signal Group Array With Meta Data copies the content of the provided Signal Group Array Ptr to the...uint8 Com_InvalidateSignal (Com_SignalIdType SignalId);The service Com_ In validate Signal invalidates the signal with the given Signal Id by setting its value to its configured Com...uint8 Com_InvalidateSignalGroup (Com_SignalGroupIdType SignalGroupId);The service Co m_ Invalidate Signal Group invalidates all group signals of the signal group with the given Signal Group Id by...Std_ReturnType Com_TriggerIPDUSend (PduIdType PduId);By a call to Com_ Trigger IPDUSend the I - PDU with the given ID is triggered for transmission.Std_ReturnType Com_TriggerIPDUSendWithMetaData (PduIdType PduId, const uint8* MetaData);By a call to Com_ Trigger IPDUSend With Meta Data the AUTOSAR COM module updates its internal metadata for the I - PDU with...void Com_SwitchIpduTxMode (PduIdType PduId, booleanMode); ⚠️The service Com_ Switch Ipdu Tx Mode sets the transmi ssion mode of the I - PDU refe- renced by Pdu Id to Mode.Std_ReturnType Com_TriggerTransmit (PduIdType TxPduId, PduInfoType* PduInfoPtr);Within this API , the upper layer module (called module) shall check whether the available data fits into the buffer size...void Com_RxIndication (PduIdType RxPduId, const PduInfoType* PduInfoPtr);Indication of a received PDU from a lower layer communication interface module.void Com_TpRxIndication (PduIdType id, Std_ReturnType result);Called after an I - PDU has been received via the TP API, the result indicates whe- ther the transmission was successful or not.void Com_TxConfirmation (PduIdType TxPduId, Std_ReturnType result);The lower layer communication interface module confirms the transmission of avoid Com_TpTxConfirmation (PduIdType id, Std_ReturnType result);This function is called after the I - PDU has been transmitted on its network, the result indicates whether the transmission...BufReq_ReturnType Com_StartOfReception (PduIdType id, const PduInfoType* info, PduLengthType TpSduLength, PduLengthType* bufferSizePtr);Service Com_StartReception.BufReq_ReturnType Com_CopyRxData (PduIdType id, const PduInfoType* info, PduLengthType* bufferSizePtr);Service Com_CopyRxData.BufReq_ReturnType Com_CopyTxData (PduIdType id, const PduInfoType* info, const RetryInfoType* retry, PduLengthType* availableDataPtr);Service Com_CopyTxData.void Com_MainFunctionRx (void);This function performs the processing of the AUTOSAR COM module's receive processing that are not directly handled within the...void Com_MainFunctionTx (void);This function performs the processing of the AUTOSAR COM module's transmissi- on activities that are not directly handled...void Com_MainFunction RouteSignals (void); ⚠️Calls the signal gateway part of the AUTOSAR COM module to forward received signals to be routed.void Com_CbkTxAck (void);This callback represents notification class 2 of [17].void Com_CbkTxErr (void);This callback corresponds to notification class 4 of [17].void Com_CbkTxTOut (void);This callback corresponds to notification class 4 of [17].void Com_CbkRxAck (void);This callback represents notification class 1 of [17].void Com_CbkRxTOut (void);This callback corresponds to notification class 3 of [17].void Com_CbkInv (void);This callback function corresponds to SWS_ Com_00680.void Com_CbkCounterErr (PduIdType ComPduId, uint8 ExpectedCounter, uint8 ReceivedCounter);This function is called immediately, if the AUTOSAR COM module receives an I - PDU counter that differs from the expected one.void Com_CbkTxPrep (void);This callback function indicates that the signals/ signal groups of a dedicated Com_ Main Function Tx instance will now be...boolean Com_RxIpduCallout (PduIdType PduId, const PduInfoType* PduInfoPtr);The I - PDU callout on receiver side can be configured to implement user - defined receive filtering mechanisms.boolean Com_TxIpduCallout (PduIdType PduId, PduInfoType* PduInfoPtr);The I - PDU callout on sender side can be configured for example to implement user - defined transmission filtering or user -...
Typen — Übersicht
enum Com_StatusTypeThis is a status value returned by the API service Com_ Get Status().Com_SignalIdTypeThe AUTOSAR COM module's signal object identifier.Com_SignalGroupIdTypeThe AUTOSAR COM module's signal group object identifier.Com_IpduGroupIdTypeThe AUTOSAR COM I - PDU module's group object identifier.struct Com_ConfigTypeThis is the type of the data structure containing the initialization data for COM.
Funktionen & Typen — Detailansicht
функция Com_Init [SWS_Com_00432] 📄 PDF
void Com_Init (const Com_ConfigType* config);
This service initializes internal and external interfaces and variables of the AUTO- SAR COM module layer for the further processing. After calling this function the inter - ECU communication is still disabled. In configurations, in which Com is assigned to mo re than one partition (i.e. Com_ Main Functions are mapped to partitions), Com may provide one init function per AUTOSAR CP R20 - of Document ID : AUTOSAR_SWS_COM partition.
Использование и семантика
Функция Com_Init инициализирует внутренние и внешние интерфейсы, а также переменные уровня AUTOSAR COM для последующей обработки ([SWS_Com_00432]). Вызов выполняется синхронно и не является реентерабельным (Non Reentrant) ([SWS_Com_00432]). В качестве передаваемого параметра служит config в виде указателя на конфигурационные данные модуля COM (const Com_ConfigType* config); возвращаемое значение отсутствует ([SWS_Com_00432]). В конфигурациях с несколькими разделами (Multi-Partition), где основные функции модуля COM назначены нескольким разделам, COM может предоставлять собственную функцию инициализации для каждого раздела ([SWS_Com_00432]).
Условия очередности и обработка ошибок
Инициализация через Com_Init является функциональным предварительным условием для штатного использования интерфейсов COM: если служба API вызывается до Com_Init или после вызова Com_DeInit, генерируется код ошибки COM_E_UNINIT (0x02) ([SWS_Com_00804]). Исключением из этой проверки ошибок являются исключительно вызовы Com_GetStatus, Com_GetVersionInfo, Com_MainFunctionRx, Com_MainFunctionTx и Com_MainFunctionRouteSignals ([SWS_Com_00804]).
Взаимодействие при инициализации PDU и сигналов
После выполнения Com_Init собственно связь между ECU изначально остается деактивированной ([SWS_Com_00432]). Интерпретация: для штатного режима отправки и приема поэтому, вероятно, требуется последующая активация соответствующих групп I-PDU. Вопрос Q-8407f9a6281c3764 (открытый) Однако для определенных структур данных Com_Init уже выполняет прямую инициализацию:
- Если I-PDU не назначена ни одной группе I-PDU, COM запускает эту I-PDU уже внутри
Com_Initтак, как если бы она была запущена черезCom_IpduGroupStartс установленным параметром инициализации ([SWS_Com_00840]). - Для групп сигналов с настроенным доступом к массиву (
ComSignalGroupArrayAccess)Com_Initинициализирует соответствующую область буфера I-PDU на основе начальных значений (ComSignalInitValue) всех содержащихся сигналов группы ([SWS_Com_00850]).
Это указание по использованию было сгенерировано ИИ на основе спецификации AUTOSAR R20-11.
Руководство разработчика реализации в подготовке (сложность I2)
функция Init [SWS_Com_00130] 📄 PDF
void Com_DeInit (void);
This service stops the inter - ECU communication. All started I - PDU groups are stop- ped and have to be started again, if needed, after Com_ Init is called. By a call to Com_ De Init the AUTOSAR COM module is put into an not initialized state.
Использование и контекст вызова
Синхронная функция [SWS_Com_00130] (интерпретация: в полезной нагрузке указана как 'Init', но специфицирует сигнатуру void Com_DeInit(void)) завершает меж-ECU связь и переводит модуль AUTOSAR COM в неинициализированное состояние ([SWS_Com_00130]). Вопрос Q-3e91d7d0a140cee0 (открытый) Служба имеет Service-ID 0x02, не требует передаваемых параметров, не возвращает значения и предоставляется через заголовочный файл Com.h ([SWS_Com_00130]).
Параллелизм и ограничения
Что касается контекста вызова, функция определена как нереентерабельная (Non Reentrant) ([SWS_Com_00130]). Поэтому параллельный или многократный вызов без предварительной повторной инициализации недопустим.
Взаимодействие и жизненный цикл
В результате деинициализации останавливаются все ранее запущенные группы I-PDU ([SWS_Com_00130]). Для последующего возобновления связи действуют следующие условия последовательности:
- Модуль должен быть повторно инициализирован через синхронную нереентерабельную службу
Com_Initс передачей указателя конфигурацииconfig([SWS_Com_00432]). - Поскольку меж-ECU связь после вызова
Com_Initостаётся отключённой ([SWS_Com_00432]), необходимые группы I-PDU впоследствии должны быть явно запущены заново ([SWS_Com_00130]).
Это указание по использованию было сгенерировано ИИ на основе спецификации AUTOSAR CP R20-11.
Руководство разработчика реализации в подготовке (сложность I1)
функция Com_IpduGroupStart [SWS_Com_91001] 📄 PDF
void Com_IpduGroupStart (Com_IpduGroupIdType IpduGroupId, boolean initialize);
Starts a preconfigured I - PDU group. For example, cyclic I - PDUs will be sent out cyclically after the call of Com_ Ipdu Group Start(). If Initialize is true all I - PDUs of the I - PDU group shall be (r e - )initialized before the I - PDU group is started. That is they shall behave like after a start - up of COM, for example the old_ value of the filter ob- jects and shadow buffers of signal groups have to be (re - )initialized.
Синхронная функция Com_IpduGroupStart (Service-ID 0x03, заголовочный файл Com.h) служит для запуска предварительно сконфигурированной группы I-PDU [SWS_Com_91001]. После вызова активируется передача соответствующих I-PDU; например, циклические I-PDU отныне отправляются циклически [SWS_Com_91001].
Использование и параметры
Функция не имеет возвращаемого значения и принимает два входных параметра [SWS_Com_91001]:
IpduGroupId: уникальный идентификатор запускаемой предварительно сконфигурированной группы I-PDU [SWS_Com_91001].initialize: логический флаг для запроса инициализации данных I-PDU этой группы перед запуском [SWS_Com_91001].
Если initialize установлен в true, все I-PDU группы должны быть (повторно) инициализированы перед запуском [SWS_Com_91001]. После этого I-PDU ведут себя так же, как непосредственно после запуска модуля COM [SWS_Com_91001]. В частности, это включает в себя повторную инициализацию предыдущего значения (old_value) объектов фильтра, а также теневых буферов для групп сигналов [SWS_Com_91001].
Параллелизм и ограничения
В отношении параллелизма Com_IpduGroupStart является реентерабельной для различных групп I-PDU, однако явно нереентерабельна для одной и той же группы I-PDU [SWS_Com_91001].
Этот текст был сгенерирован ИИ на основе спецификации AUTOSAR R20-11.
Руководство разработчика реализации в подготовке (сложность I2)
функция Com_IpduGroupStop [SWS_Com_91002] 📄 PDF
void Com_IpduGroupStop (Com_IpduGroupIdType IpduGroupId);
Stops a preconfigured I - PDU group. For example, cyclic I - PDUs will be stopped after the call of Com_ Ipdu Group Stop().
Использование
Функция Com_IpduGroupStop служит для остановки предварительно сконфигурированной группы I-PDU в модуле AUTOSAR COM [SWS_Com_91002]. Объявление доступно через заголовочный файл Com.h и имеет Service-ID 0x04 [SWS_Com_91002].
- Синтаксис вызова:
void Com_IpduGroupStop (Com_IpduGroupIdType IpduGroupId)[SWS_Com_91002]. - Параметры: в качестве единственного параметра передается входной параметр
IpduGroupIdтипаCom_IpduGroupIdType, определяющий идентификатор останавливаемой группы I-PDU [SWS_Com_91002]. Дополнительные входные/выходные (inout) или выходные параметры (out) отсутствуют [SWS_Com_91002]. - Возвращаемое значение: интерфейс не возвращает значения (
void) [SWS_Com_91002]. - Поведение при выполнении: вызов обрабатывается синхронно [SWS_Com_91002]. После вызова
Com_IpduGroupStopкоммуникация соответствующей группы останавливается; это приводит, например, к тому, что циклические I-PDU этой группы больше не отправляются [SWS_Com_91002].
Параллелизм и ограничения
В отношении параллелизма и реентерабельности установлено, что Com_IpduGroupStop реентерабельна для различных групп I-PDU, однако не должна выполняться реентерабельно для одной и той же группы I-PDU [SWS_Com_91002]. Если функция вызывается в многозадачных или многоядерных средах, вызывающее программное обеспечение должно гарантировать исключение конкурирующих вызовов для одного и того же ID группы.
Этот текст был сгенерирован ИИ на основе спецификации AUTOSAR CP R20-11.
Руководство разработчика реализации в подготовке (сложность I1)
функция Com_EnableReceptionDM [SWS_Com_91004] 📄 PDF
void Com_EnableReceptionDM (Com_IpduGroupIdType IpduGroupId);
Enables the reception deadline monitoring for the I - PDUs within the given I - PDU group.
Синхронная функция Com_EnableReceptionDM служит для того, чтобы активировать контроль сроков приема (Reception Deadline Monitoring) для всех I-PDU внутри заданной группы I-PDU [SWS_Com_91004].
Использование и контекст вызова: функция объявлена в заголовочном файле Com.h и имеет Service-ID 0x06 [SWS_Com_91004]. В качестве единственного передаваемого параметра сигнатура void Com_EnableReceptionDM (Com_IpduGroupIdType IpduGroupId) ожидает входной параметр IpduGroupId типа Com_IpduGroupIdType, который представляет собой идентификатор группы I-PDU, для содержащихся I-PDU которой должен быть включен контроль сроков [SWS_Com_91004]. Выполнение происходит синхронно [SWS_Com_91004]. Входные/выходные и выходные параметры отсутствуют, возвращаемое значение не возвращается (тип возврата void) [SWS_Com_91004].
Параллелизм и ограничения: в отношении параллелизма Com_EnableReceptionDM является реентерабельной для различных групп I-PDU, однако нереентерабельна для одной и той же группы I-PDU [SWS_Com_91004]. Конкурирующие вызовы для одного и того же ID группы поэтому недопустимы и должны исключаться в контексте вызова [SWS_Com_91004].
Это указание по использованию было сгенерировано автоматически на основе спецификации AUTOSAR Classic Release R20-11.
функция Com_DisableReceptionDM [SWS_Com_91003] 📄 PDF
void Com_DisableReceptionDM (Com_IpduGroupIdType IpduGroupId);
Disables the reception deadline monitoring for the I - PDUs within the given I - PDU group.
Синхронная функция Com_DisableReceptionDM отключает мониторинг дедлайнов приема (Reception Deadline Monitoring) для всех I-PDU в переданной группе I-PDU [SWS_Com_91003].
Использование
Вызов осуществляется через интерфейс void Com_DisableReceptionDM(Com_IpduGroupIdType IpduGroupId) с идентификатором затронутой группы I-PDU в качестве входного параметра IpduGroupId [SWS_Com_91003]. Функция не имеет ни входных/выходных, ни выходных параметров и не возвращает значения (void) [SWS_Com_91003]. Сервис объявлен с Service-ID 0x05 в заголовочном файле Com.h [SWS_Com_91003].
Параллелизм и ограничения
В отношении поведения при параллелизме сервис является реентерабельным для различных групп I-PDU, однако не должен вызываться параллельно (non-reentrant) для одной и той же группы I-PDU [SWS_Com_91003].
Этот текст был сгенерирован ИИ на основе спецификации AUTOSAR R20-11.
функция Com_GetStatus [SWS_Com_00194] 📄 PDF
Com_StatusType Com_GetStatus (void);
Returns the status of the AUTOSAR COM module. Availab le via Com.h
функция Com_GetVersionInfo [SWS_Com_00426] 📄 PDF
void Com_GetVersionInfo (Std_VersionInfoType* versioninfo);
Returns the version information of this module.
функция Com_SendSignal [SWS_Com_00197] 📄 PDF
uint8 Com_SendSignal (Com_SignalIdType SignalId, const void* SignalDataPtr);
The service Com_ Send Signal updates the signal object identified by Signal Id with the signal referenced by the Signal Data Ptr parameter. Avai lable via Com.h
Функция Com_SendSignal служит для обновления идентифицированного с помощью SignalId сигнального объекта данными, на которые указывает указатель SignalDataPtr [SWS_Com_00197]. Вызов обрабатывается асинхронно [SWS_Com_00197].
Возвращаемые значения и обработка ошибок
Функция возвращает статус типа uint8 [SWS_Com_00197]:
E_OK: сервис принят [SWS_Com_00197].COM_SERVICE_NOT_AVAILABLE: соответствующая группа I-PDU остановлена или вызов завершился сбоем из-за ошибки разработки [SWS_Com_00197].COM_BUSY: возникает, если буфер TP заблокирован для обработки больших типов данных [SWS_Com_00197].
Параллелизм и ограничения
Что касается реентерабельности, Com_SendSignal не является реентерабельной для одного и того же сигнала, но может вызываться параллельно для разных сигналов [SWS_Com_00197]. Интерфейс предоставляется через заголовочный файл Com.h [SWS_Com_00197].
Взаимодействие и конфигурация
Если для группы сигналов определена конфигурация ComSignalGroupArrayAccess, вызов Com_SendSignal для сигналов этой группы не поддерживается [SWS_Com_00843].
Этот текст был сгенерирован ИИ на основе спецификации AUTOSAR.
Руководство разработчика реализации в подготовке (сложность I1)
функция Com_SendDynSignal [SWS_Com_00627] 📄 PDF
uint8 Com_SendDynSignal (Com_SignalIdType SignalId, const void* SignalDataPtr, uint16 Length);
The service Com_ Send Dyn Signal updates the signal object identified by Signal Id with the signal referenced by the Signal Data Ptr parameter.
Функция Classic AUTOSAR Com_SendDynSignal служит для обновления объекта сигнала динамической длины на основе переданных полезных данных ([SWS_Com_00627]). Сервис имеет Service ID 0x21 и работает асинхронно ([SWS_Com_00627]). В качестве входных параметров интерфейс ожидает идентификатор целевого сигнала (SignalId), указатель на передаваемые полезные данные сигнала (SignalDataPtr), а также текущую длину динамического сигнала (Length); выходные параметры отсутствуют ([SWS_Com_00627]).
Возвращаемое значение типа uint8 сообщает результат принятия запроса ([SWS_Com_00627]):
E_OK: вызов службы был успешно принят ([SWS_Com_00627]).E_NOT_OK: параметрLengthпревышает максимальную длину, сконфигурированную для этого сигналаComSignalLength([SWS_Com_00627]).COM_SERVICE_NOT_AVAILABLE: соответствующая группа I-PDU остановлена или произошел сбой службы из-за ошибки разработки ([SWS_Com_00627]).COM_BUSY: буфер TP заблокирован ([SWS_Com_00627]).
В отношении параллелизма Com_SendDynSignal является реентерабельной для разных сигналов, но нереентерабельной для одного и того же сигнала ([SWS_Com_00627]). Объявление функции доступно через заголовочный файл Com.h ([SWS_Com_00627]).
Этот текст сгенерирован ИИ и служит в качестве ориентира. Определяющей является спецификация.
Руководство разработчика реализации в подготовке (сложность I1)
функция Com_ReceiveSignal [SWS_Com_00198] 📄 PDF
uint8 Com_ReceiveSignal (Com_SignalIdType SignalId, void* SignalDataPtr);
Com_ Receive Signal copies the data of the signal identified by Signal Id to the location specified by Signal Data Ptr.
Синхронная функция Com_ReceiveSignal копирует данные сигнала, заданного через SignalId, по адресу памяти, предоставленному через указатель SignalDataPtr ([SWS_Com_00198]).
Использование и семантика
Вызов обрабатывает передачу сигнала синхронно и принимает в качестве входного параметра идентификатор SignalId (типа Com_SignalIdType), а в качестве выходного параметра указатель SignalDataPtr (void*) на целевой буфер ([SWS_Com_00198]). Интерфейс доступен через заголовочный файл Com.h ([SWS_Com_00198]).
Возвращаемые значения и обработка ошибок
Возвращаемое значение типа uint8 сигнализирует о результате выполнения функции ([SWS_Com_00198]):
E_OK: служба успешно принята и выполнена ([SWS_Com_00198]).COM_SERVICE_NOT_AVAILABLE: соответствующая группа I-PDU была остановлена или служба завершилась сбоем из-за ошибки разработки ([SWS_Com_00198]).COM_BUSY: возникает, если буфер TP заблокирован для обработки больших типов данных ([SWS_Com_00198]).
Параллелизм и ограничения
Что касается реентерабельности, Com_ReceiveSignal не является реентерабельной для одного и того же сигнала, однако реентерабельна для различных сигналов ([SWS_Com_00198]). Следовательно, при параллельных обращениях к одинаковым ID сигналов вызывающие стороны должны обеспечить надлежащую синхронизацию.
Кроме того, существует существенное ограничение конфигурации: если для группы сигналов настроен доступ на основе массивов ComSignalGroupArrayAccess, вызов Com_ReceiveSignal для входящих в эту группу сигналов не поддерживается ([SWS_Com_00843]).
Этот текст был сгенерирован ИИ на основе требований спецификации.
Руководство разработчика реализации в подготовке (сложность I1)
функция Com_ReceiveDynSignal [SWS_Com_00690] 📄 PDF
uint8 Com_ReceiveDynSignal (Com_SignalIdType SignalId, void* SignalDataPtr, uint16* Length);
Com_ Receive Dyn Signal copies the data of the signal identified by Signal Id to the lo cation specified by Signal Data Ptr and stores the length of the dynamical length signal at the position given by the Length parameter.
Использование и семантика
Синхронная функция Com_ReceiveDynSignal служит для приёма сигнала динамической длины по его SignalId [SWS_Com_00690]. Принятые данные сигнала копируются в область памяти, на которую указывает SignalDataPtr [SWS_Com_00690]. Через входной/выходной параметр Length вызывающая сторона передаёт в качестве входного значения максимально допустимую длину; после успешного процесса копирования туда помещается фактическая длина принятого динамического сигнала [SWS_Com_00690].
Возвращаемые значения и обработка ошибок
Функция возвращает значение состояния типа uint8 [SWS_Com_00690]:
E_OK: вызов сервиса принят, и данные успешно скопированы [SWS_Com_00690].E_NOT_OK: предоставленный буфер слишком мал, так как входное значениеLengthменьше фактической длины принятого сигнала [SWS_Com_00690].COM_SERVICE_NOT_AVAILABLE: соответствующая группа I-PDU была остановлена или служба завершилась сбоем вследствие ошибки разработки [SWS_Com_00690].COM_BUSY: буфер TP в данный момент заблокирован [SWS_Com_00690].
Параллелизм и интеграция
В отношении реентерабельности Com_ReceiveDynSignal является нереентерабельной для одного и того же сигнала, однако может вызываться реентерабельно для разных сигналов [SWS_Com_00690]. Объявление доступно через Com.h [SWS_Com_00690].
Этот текст был сгенерирован системой ИИ на основе спецификации AUTOSAR CP R20-11.
Руководство разработчика реализации в подготовке (сложность I1)
функция Com_SendSignalGroup [SWS_Com_00200] 📄 PDF
uint8 Com_SendSignalGroup (Com_SignalGroupIdType SignalGroupId);
The service Com_ Send Si gnal Group copies the content of the associated shadow buffer to the associated I - PDU.
Асинхронная функция Com_SendSignalGroup служит для копирования содержимого сопоставленного теневого буфера в соответствующую I-PDU [SWS_Com_00200]. В качестве входного параметра она принимает идентификатор SignalGroupId передаваемой группы сигналов [SWS_Com_00200].
Возвращаемые значения и обработка ошибок
Возвращаемое значение сигнализирует о статусе выполнения службы [SWS_Com_00200]:
E_OK: вызов службы был успешно принят [SWS_Com_00200].COM_SERVICE_NOT_AVAILABLE: соответствующая группа I-PDU была остановлена или служба завершилась сбоем вследствие ошибки разработки [SWS_Com_00200].COM_BUSY: буфер TP временно заблокирован для передачи больших типов данных [SWS_Com_00200].
Параллелизм и ограничения
В отношении параллелизма вызов не является реентерабельным для одного и того же сигнала группы, однако реентерабелен для различных сигналов группы [SWS_Com_00200]. Интерпретация: ограничение, вероятно, относится к одновременным обращениям к одной и той же группе сигналов. Вопрос Q-2f3a6da092b51794 (открытый) Кроме того, вызов Com_SendSignalGroup для группы сигналов не поддерживается, если для нее сконфигурирован ComSignalGroupArrayAccess [SWS_Com_00843].
Взаимодействие
Модуль AUTOSAR COM обрабатывает вызов Com_SendSignalGroupArray эквивалентно Com_SendSignalGroup в отношении характеристик передачи, выбора режима передачи I-PDU и потока сигналов [SWS_Com_00847].
Это указание по использованию было сгенерировано автоматически на основе спецификации AUTOSAR.
Руководство разработчика реализации в подготовке (сложность I1)
функция Com_ReceiveSignalGroup [SWS_Com_00201] 📄 PDF
uint8 Com_ReceiveSignalGroup (Com_SignalGroupIdType SignalGroupId);
The service Com_ Receive Signal Group copies the received signal group from the I - PDU to the shadow buffer.
Использование
Синхронная функция Com_ReceiveSignalGroup служит для приёма групп сигналов. Она копирует данные принятой группы сигналов из соответствующей I-PDU в назначенный теневой буфер (Shadow Buffer) [SWS_Com_00201]. В качестве входного параметра функция ожидает идентификатор группы сигналов SignalGroupId типа Com_SignalGroupIdType [SWS_Com_00201]. Объявлена служба в заголовочном файле Com.h [SWS_Com_00201].
Обработка ошибок и возвращаемые значения
Служба возвращает значение состояния типа uint8, которое предоставляет информацию об успехе или причине ошибки [SWS_Com_00201]:
E_OK: служба была успешно принята, и группа сигналов скопирована [SWS_Com_00201].COM_SERVICE_NOT_AVAILABLE: соответствующая группа I-PDU остановлена или вызов завершился сбоем из-за ошибки разработки [SWS_Com_00201].COM_BUSY: служба сообщает об этом состоянии, если буфер TP заблокирован для обработки больших типов данных [SWS_Com_00201].
Параллелизм и ограничения
Что касается параллельного поведения, Com_ReceiveSignalGroup выполнена как нереентерабельная для одной и той же группы сигналов, но реентерабельная для разных групп сигналов [SWS_Com_00201].
Кроме того, существует существенное ограничение при взаимодействии с доступом к массивам: если для группы сигналов была определена конфигурация ComSignalGroupArrayAccess (ECUC_Com_10003), вызов Com_ReceiveSignalGroup для этой группы сигналов согласно спецификации не поддерживается [SWS_Com_00843].
Это указание по использованию было сгенерировано автоматически и основано на спецификации AUTOSAR Classic R20-11.
Руководство разработчика реализации в подготовке (сложность I1)
функция Com_SendSignalGroupArray [SWS_Com_00851] 📄 PDF
uint8 Com_SendSignalGroupArray (Com_SignalGroupIdType SignalGroupId, const uint8* SignalGroupArrayPtr);
The service Com_ Send Signal Group Array copies the conte nt of the provided Signal Group Array Ptr to the associated I - PDU. The provided data shall correspond to the array representation of the signal group.
Асинхронная функция Com_SendSignalGroupArray копирует данные группы сигналов через указатель SignalGroupArrayPtr непосредственно в назначенную I-PDU [SWS_Com_00851]. Передаваемые данные при этом должны в точности соответствовать представлению массива соответствующей группы сигналов [SWS_Com_00851], [SWS_Com_00852].
В качестве входных параметров передаются идентификатор группы сигналов (SignalGroupId), а также ссылка на массив группы сигналов (SignalGroupArrayPtr) [SWS_Com_00851]. Сервис возвращает следующие значения [SWS_Com_00851]:
E_OK: вызов службы был успешно принят.COM_SERVICE_NOT_AVAILABLE: соответствующая группа I-PDU остановлена или вызов завершился сбоем из-за ошибки разработки.COM_BUSY: буфер транспортного протокола (TP-буфер) заблокирован для обработки больших типов данных.
В отношении параллелизма функция не является реентерабельной для одной и той же группы сигналов, однако может вызываться реентерабельно для различных групп сигналов [SWS_Com_00851]. Вызов доступен только в том случае, если активирован переключатель конфигурации ComEnableSignalGroupArrayApi [SWS_Com_00853].
Что касается характеристик передачи групп сигналов, выбора режима передачи I-PDU и прохождения сигналов, Com_SendSignalGroupArray обрабатывается модулем AUTOSAR COM полностью аналогично Com_SendSignalGroup [SWS_Com_00847].
Этот текст был сгенерирован с помощью метода на основе ИИ на базе спецификации AUTOSAR R20-11.
Руководство разработчика реализации в подготовке (сложность I1)
функция Com_ReceiveSignalGroupArray [SWS_Com_00854] 📄 PDF
uint8 Com_ReceiveSignalGroupArray (Com_SignalGroupIdType SignalGroupId, uint8* SignalGroupArrayPtr);
The service Com_ Receive Signal Group Array copies the re ceived signal group array AUTOSAR CP R20 - of Document ID : AUTOSAR_SWS_COM representation from the PDU to the location designated by Signal Group Ar - ray Ptr.
Использование и конфигурация
Синхронная функция Com_ReceiveSignalGroupArray копирует принятую группу сигналов в виде представления байтового массива из I-PDU в область памяти, на которую указывает SignalGroupArrayPtr [SWS_Com_00854], [SWS_Com_00855]. Функция доступна исключительно тогда, когда активирован переключатель конфигурации ComEnableSignalGroupArrayApi [SWS_Com_00856]. Она поддерживает фильтрацию приема и Transmission Mode Selection с фильтрами ALWAYS, NEVER, MASKED_NEW_EQUALS_X, MASKED_NEW_DIFFERS_X, MASKED_NEW_DIFFERS_MASKED_OLD и ONE_EVERY_N [SWS_Com_00848].
Копирование данных и обработка ошибок
При вызове передаются SignalGroupId, а также указатель на целевой массив, по адресу которого модуль AUTOSAR COM копирует данные I-PDU [SWS_Com_00849]. Даже если группа I-PDU остановлена и сервис возвращает COM_SERVICE_NOT_AVAILABLE, модуль всегда копирует последние известные данные или начальные значения ComSignalInitValues, если до этого данные еще не записывались [SWS_Com_00857].
Возвращаемые значения и параллелизм
Возможные возвращаемые значения сервиса: [SWS_Com_00854]:
E_OK: служба была успешно принята.COM_SERVICE_NOT_AVAILABLE: соответствующая группа I-PDU остановлена или сервис завершился ошибкой из-за ошибки разработки.COM_BUSY: буфер TP заблокирован для обработки больших типов данных.
Что касается параллелизма, функция является реентерабельной для различных групп сигналов, но нереентерабельна для одной и той же группы сигналов [SWS_Com_00854].
Это указание по использованию было сгенерировано автоматически на основе спецификации AUTOSAR CP R20-11.
Руководство разработчика реализации в подготовке (сложность I1)
функция Com_ReceiveSignalWithMetaData [SWS_Com_91005] 📄 PDF
uint8 Com_ReceiveSignalWithMetaData (Com_SignalIdType SignalId, void* SignalDataPtr, uint8* MetaDataPtr);
Com_ Receive Signal With Meta Data copies the data of the signal identified by Signal Id to the location specified by Signal Data Ptr. The received meta data is stored at the position given by the Meta Data Ptr parameter. AUTOSAR CP R20 - of Document ID : AUTOSAR_SWS_COM
Синхронная функция Com_ReceiveSignalWithMetaData служит для считывания принятых сигнальных данных вместе с их метаданными из коммуникационного модуля Com [SWS_Com_91005]. При вызове служба копирует данные адресуемого через SignalId сигнала в место размещения в памяти, на которое указывает SignalDataPtr, и сохраняет принятые метаданные в позиции MetaDataPtr [SWS_Com_91005].
Параметры и контекст вызова
Интерфейс доступен через заголовочный файл Com.h и идентифицируется через service ID 0x49 [SWS_Com_91005]. Структура параметров подразделяется следующим образом:
SignalId(in): идентификатор принимаемого сигнала [SWS_Com_91005].SignalDataPtr(out): указатель на место в памяти для сохранения принятых сигнальных данных [SWS_Com_91005].MetaDataPtr(out): указатель на область памяти для приема метаданных сигнала [SWS_Com_91005].
Функция возвращает значение типа uint8, для которого в данном разделе стандарта не документированы специфические значения ошибок [SWS_Com_91005].
Параллелизм и ограничения
Что касается реентерабельности, сервис является реентерабельным для разных сигналов, но нереентерабельным для одного и того же сигнала [SWS_Com_91005]. Следовательно, при параллельных или прерывающих вызовах с идентичным SignalId может потребоваться внешняя защита со стороны вызывающей стороны для обеспечения согласованности данных. Вопрос Q-51cbdce3d4f59f24 (открытый)
Это указание по использованию было сгенерировано ИИ и опирается исключительно на спецификацию AUTOSAR.
функция Com_ReceiveDynSignalWithMetaData [SWS_Com_91006] 📄 PDF
uint8 Com_ReceiveDynSignalWithMetaData (Com_SignalIdType SignalId, void* SignalDataPtr, uint16* Length, uint8* MetaDataPtr);
Com_ Receive Dyn Signal With Meta Da ta copies the data of the signal identified by Signal Id to the location specified by Signal Data Ptr and stores the length of the dy- namical length signal at the position given by the Length parameter. The received meta data is stored at the position given by the Meta Data Ptr parameter.
Использование и семантика
Функция Com_ReceiveDynSignalWithMetaData предоставляется через заголовочный файл Com.h и служит для синхронного приёма сигналов динамической длины, включая их метаданные [SWS_Com_91006]. При вызове сервис копирует данные сигнала, идентифицированного через SignalId, в буфер, адресуемый SignalDataPtr [SWS_Com_91006]. Принятые метаданные сохраняются по указателю MetaDataPtr, в то время как фактическая длина принятого динамического сигнала записывается в позицию Length [SWS_Com_91006].
Возвращаемые значения и обработка ошибок
Сервис возвращает значение состояния типа uint8 [SWS_Com_91006]:
E_OK: сервис приёма успешно принят [SWS_Com_91006].E_NOT_OK: возникает, если переданное значениеLengthменьше фактической длины принятого динамического сигнала [SWS_Com_91006]. Интерпретация: вызывающая сторона должна заранее предоставить размер буфера черезLength, поэтому данный параметр фактически выполняет роль комбинированного ввода и вывода. Вопрос Q-8ad420c74748f219 (открытый)COM_SERVICE_NOT_AVAILABLE: соответствующая группа I-PDU остановлена или вызов завершился ошибкой из-за ошибки разработки [SWS_Com_91006].COM_BUSY: буфер TP в данный момент заблокирован [SWS_Com_91006].
Параллелизм и ограничения
Что касается параллелизма, функция является реентерабельной для разных сигналов, но не должна вызываться реентерабельно для одного и того же сигнала [SWS_Com_91006]. Поэтому параллельные вызовы для одного и того же SignalId должны синхронизироваться на уровне вызывающей стороны.
Это указание по использованию сгенерировано автоматически и основано исключительно на данных спецификации из AUTOSAR Release R20-11.
функция Data [SWS_Com_91007] 📄 PDF
uint8 Com_ReceiveSignalGroupWithMetaData (Com_SignalGroupIdType SignalGroupId, uint8* MetaDataPtr);
The service Com_ Receive Signal Group With Meta Data copies the received signal group from the I - PDU to the shadow buffer. The received meta data is stored at the position given by the Meta Data Ptr parameter.
Синхронная функция Com_ReceiveSignalGroupWithMetaData служит для приёма группы сигналов, включая соответствующие метаданные, через интерфейс Com.h [SWS_Com_91007]. Она принимает в качестве входного параметра идентификатор SignalGroupId и копирует принятые данные группы сигналов из I-PDU в локальный теневой буфер (Shadow-Buffer) [SWS_Com_91007]. Одновременно сервис сохраняет принятые метаданные по целевому адресу, адресуемому через выходной параметр MetaDataPtr [SWS_Com_91007].
Поведение при ошибках и возвращаемые значения включают три значения состояния: E_OK сигнализирует об успешном принятии сервиса [SWS_Com_91007]. Возвращаемое значение COM_SERVICE_NOT_AVAILABLE указывает на то, что соответствующая группа I-PDU остановлена или присутствует ошибка разработки [SWS_Com_91007]. Если возникает код ошибки COM_BUSY, буфер TP заблокирован для обработки больших типов данных [SWS_Com_91007]. В отношении параллелизма функция является реентерабельной для разных групп сигналов, но нереентерабельной для одной и той же группы сигналов [SWS_Com_91007]. Поскольку спецификация не указывает ограничений ISR, вызов, вероятно, должен выполняться синхронно на уровне задач вышележащим программным компонентом. Вопрос Q-a23cf67bae724ae1 (открытый)
При взаимодействии функция расширяет тракт приёма метаданными аналогично Com_ReceiveSignalWithMetaData для одиночных сигналов [SWS_Com_91005]. Предоставленные метаданные соответствуют информации PDU, ранее принятой на интерфейсе через Com_RxIndication [SWS_Com_00123]. Для сигнализации о недопустимом содержимом данных в общем потоке выполнения дополнительно может использоваться Com_InvalidateSignalGroup [SWS_Com_00557].
Этот текст был сгенерирован ИИ на основе спецификации AUTOSAR R20-11.
функция Data [SWS_Com_91008] 📄 PDF
void Com_ReceiveSignalGroupArrayWithMetaData (Com_SignalGroupIdType SignalGroupId, uint8* SignalGroupArrayPtr, uint8* MetaDataPtr);
The service Com_ Receive Signal Group Array With Meta Data copies the received si gnal group array representation from the PDU to the location designated by Signal Group Ar - ray Ptr. The received meta data is stored at the position given by the Meta Data Ptr parameter.
Использование
Синхронный сервис Com_ReceiveSignalGroupArrayWithMetaData (Service ID 0x4c, доступен через Com.h) копирует принятое представление массива группы сигналов из I-PDU в область памяти, предоставляемую через указатель SignalGroupArrayPtr [SWS_Com_91008]. Одновременно принятые метаданные записываются в позицию, указанную параметром MetaDataPtr [SWS_Com_91008]. Функция не имеет возвращаемого значения (void) [SWS_Com_91008].
Обработка ошибок
Спецификация не определяет возвращаемых значений для этого сервиса и не перечисляет конкретных кодов ошибок [SWS_Com_91008]. Интерпретация: любые ошибочные состояния параметров вызова, вероятно, перехватываются внутренне и обрабатываются через механизм отчётов об ошибках модуля; однако конкретные сообщения DET или DEM из выдержки спецификации не следуют. Вопрос (открытый)
Параллелизм и ограничения
Что касается параллелизма, функция является реентерабельной для разных групп сигналов, но нереентерабельной для одной и той же группы сигналов [SWS_Com_91008]. Параллельные вызовы с идентичным SignalGroupId должны предотвращаться на стороне вызывающего компонента. Интерпретация: вызывающие стороны, вероятно, также обязаны предоставлять целевые буферы достаточного размера, так как интерфейс не содержит параметров длины. Вопрос (открытый)
Взаимодействие
Предоставление данных в буфере PDU предполагает, что ранее произошло уведомление о приёме через Com_RxIndication, которое также передаёт метаданные в модуль COM [SWS_Com_00123]. Функция расширяет интерфейсы приёма для метаданных аналогично Com_ReceiveSignalWithMetaData для одиночных сигналов [SWS_Com_91005] и отличается от стандартного получения сигнала через Com_ReceiveSignal [SWS_Com_00198].
Это указание по использованию было сгенерировано ИИ на основе спецификации AUTOSAR.
функция Data [SWS_Com_91009] 📄 PDF
uint8 Com_SendSignalWithMetaData (Com_SignalIdType SignalId, void* SignalDataPtr, uint8* MetaDataPtr);
The service Com_ Send Si gnal With Meta Data updates the signal object identified by Signal Id with the signal referenced by the Signal Data Ptr parameter. The meta data is provided via the Meta Data Ptr parameter.
Функция Com_SendSignalWithMetaData ([SWS_Com_91009]) служит для асинхронного обновления объекта сигнала, заданного через SignalId, полезными данными через SignalDataPtr, а также соответствующими метаданными через MetaDataPtr. Сервис доступен через заголовочный файл Com.h.
- Вызов и параллелизм: вызов выполняется асинхронно ([SWS_Com_91009]). Функция является реентерабельной для разных сигналов, но нереентерабельной для одного и того же идентификатора сигнала (
SignalId) ([SWS_Com_91009]). - Возвращаемые значения и обработка ошибок: функция возвращает значение состояния типа
uint8([SWS_Com_91009]):E_OK: запрос на передачу успешно принят модулем ([SWS_Com_91009]).COM_SERVICE_NOT_AVAILABLE: соответствующая группа I-PDU остановлена или вызов завершился ошибкой из-за ошибки разработки ([SWS_Com_91009]).COM_BUSY: TP-буфер заблокирован для обработки больших типов данных ([SWS_Com_91009]).
- Взаимодействие: в отличие от базового сервиса передачи
Com_SendSignal([SWS_Com_00197]), эта функция передаёт явные метаданные. Она образует аналог на стороне отправки для сервиса приёмаCom_ReceiveSignalWithMetaData([SWS_Com_91005]) и дополняет связанные с I-PDU сервисы метаданных, такие какCom_TriggerIPDUSendWithMetaData([SWS_Com_00858]).
Данное указание по использованию сгенерировано автоматически на основе спецификации.
функция Com_SendDynSignalWithMetaData [SWS_Com_91010] 📄 PDF
uint8 Com_SendDynSignalWithMetaData (Com_SignalIdType SignalId, void* SignalDataPtr, uint16 Length, uint8* MetaDataPtr);
The service Com_ Send Dyn Signal With Meta Data updates the signal object identified by Signal Id wit h the signal referenced by the Signal Data Ptr parameter. The meta data is provided via the Meta Data Ptr parameter. AUTOSAR CP R20 - of Document ID : AUTOSAR_SWS_COM
Использование и семантика
Функция Com_SendDynSignalWithMetaData служит для асинхронного обновления идентифицированного через SignalId (тип Com_SignalIdType) объекта сигнала данными сигнала динамической длины, а также соответствующими метаданными [SWS_Com_91010]. Передаваемые полезные данные адресуются через указатель SignalDataPtr (тип void*), в то время как MetaDataPtr (тип uint8*) указывает на метаданные [SWS_Com_91010]. Через параметр Length (тип uint16) передаётся фактическая длина отправляемого динамического сигнала [SWS_Com_91010].
Возвращаемые значения и обработка ошибок
Возвращаемое значение типа uint8 сигнализирует, был ли принят сервис или какая ошибка произошла [SWS_Com_91010]:
E_OK: вызов сервиса успешно принят к обработке [SWS_Com_91010].E_NOT_OK: переданное значениеLengthпревышает сконфигурированное для этого сигнала значениеComSignalLength[SWS_Com_91010].COM_SERVICE_NOT_AVAILABLE: соответствующая группа I-PDU была остановлена или вызов завершился ошибкой из-за ошибки разработки [SWS_Com_91010].COM_BUSY: буфер TP в данный момент заблокирован, поэтому сигнал не может быть отправлен [SWS_Com_91010].
Параллелизм и интеграция
Что касается параллелизма, функция является реентерабельной для разных сигналов, но нереентерабельной для одного и того же сигнала [SWS_Com_91010]. Интерфейс имеет Service ID 0x4e и предоставляется в модуле Com через заголовочный файл Com.h [SWS_Com_91010].
Указание по использованию составлено на основе элементов спецификации AUTOSAR Release R20-11.
функция Data [SWS_Com_91011] 📄 PDF
uint8 Com_SendSignalGroupWithMetaData (Com_SignalGroupIdType SignalGroupId, uint8* MetaDataPtr);
The service Com_ Send Signal Group With Meta Data copies the content of the associated shadow buffer to the associated I - PDU. The meta data is provided via the Meta Data Ptr parameter.
Функция Com_SendSignalGroupWithMetaData (в модели данных обозначаемая как Data) служит для асинхронной передачи группы сигналов вместе с метаданными в модуль Com [SWS_Com_91011]. При вызове сервис копирует текущее содержимое связанного теневого буфера (Shadow-Buffer) в соответствующий I-PDU, при этом метаданные предоставляются через указатель MetaDataPtr [SWS_Com_91011].
Входные параметры включают идентификатор группы сигналов (SignalGroupId), а также указатель на метаданные (MetaDataPtr) [SWS_Com_91011]. Возвращаемые значения сообщают результат запроса сервиса:
E_OK: сервис был успешно принят [SWS_Com_91011].COM_SERVICE_NOT_AVAILABLE: соответствующая группа I-PDU была остановлена или выполнение завершилось сбоем из-за ошибки разработки [SWS_Com_91011].COM_BUSY: буфер TP заблокирован для передачи больших типов данных [SWS_Com_91011].
В отношении параллелизма вызов является реентерабельным для разных сигналов, однако нереентерабелен для одного и того же группового сигнала; по аналогии с параметром SignalGroupId это, вероятно, относится к соответствующей группе сигналов [SWS_Com_91011]. Вопрос Q-91171d77370ae50a (открытый) При взаимодействии с модулем Com сервис дополняет отправку отдельных сигналов, таких как Com_SendSignal [SWS_Com_00197], а также инвалидацию групп сигналов через Com_InvalidateSignalGroup [SWS_Com_00557]. Кроме того, он согласуется с сервисом приёма Com_ReceiveSignalWithMetaData [SWS_Com_91005] и основанным на PDU вызовом передачи Com_TriggerIPDUSendWithMetaData [SWS_Com_00858].
Это указание по использованию было сгенерировано автоматически на основе спецификации.
функция Com_SendSignalGroupArrayWithMetaData [SWS_Com_91012] 📄 PDF
uint8 Com_SendSignalGroupArrayWithMetaData (Com_SignalGroupIdType SignalGroupId, uint8* SignalGroupArrayPtr, uint8* MetaDataPtr);
The service Com_ Send Signal Group Array With Meta Data copies the content of the provided Signal Group Array Ptr to the associated I - PDU. The provided data shall c orrespond to the array representation of the signal group. The meta data is provi- ded via the Meta Data Ptr parameter.
Использование и параметры
Функция Com_SendSignalGroupArrayWithMetaData служит для асинхронной передачи группы сигналов вместе с соответствующими метаданными [SWS_Com_91012]. При вызове сервис копирует содержимое переданного указателя SignalGroupArrayPtr непосредственно в назначенный I-PDU [SWS_Com_91012]. Предоставленные данные при этом обязательно должны соответствовать представлению массива группы сигналов, которое идентифицируется через параметр SignalGroupId типа Com_SignalGroupIdType [SWS_Com_91012]. Дополнительные метаданные группы сигналов передаются на уровень связи через указатель MetaDataPtr [SWS_Com_91012].
Возвращаемые значения и обработка ошибок
Функция возвращает значение состояния типа uint8, указывающее на успешность передачи или на соответствующую причину ошибки [SWS_Com_91012]:
E_OK: вызов сервиса успешно принят уровнем COM [SWS_Com_91012].COM_SERVICE_NOT_AVAILABLE: соответствующая группа I-PDU остановлена или вызов завершился ошибкой из-за ошибки разработки [SWS_Com_91012].COM_BUSY: буфер транспортного протокола (TP-Buffer) заблокирован для обработки больших типов данных [SWS_Com_91012].
Параллелизм и ограничения
Согласно спецификации, сервис классифицирован как нереентерабельный (Non Reentrant), поэтому одновременные или прерывающие вызовы недопустимы [SWS_Com_91012]. Интерфейс имеет Service ID 0x50 и предоставляется через заголовочный файл Com.h [SWS_Com_91012].
Это указание по использованию было автоматически сгенерировано на основе версии спецификации AUTOSAR R20-11.
функция Com_InvalidateSignal [SWS_Com_00203] 📄 PDF
uint8 Com_InvalidateSignal (Com_SignalIdType SignalId);
The service Com_ In validate Signal invalidates the signal with the given Signal Id by setting its value to its configured Com Signal Data Invalid Value.
Функция Com_InvalidateSignal служит для признания сигнала недействительным в коммуникационном модуле [SWS_Com_00203]. Она устанавливает значение переданного сигнала в значение недействительности, заданное в конфигурации Com Signal Data Invalid Value [SWS_Com_00203]. Обработка выполняется асинхронно [SWS_Com_00203]. В качестве единственного входного параметра передается входной параметр SignalId для идентификации сигнала; входные/выходные или выходные параметры отсутствуют [SWS_Com_00203].
В качестве возвращаемого значения вызов возвращает статус типа uint8, отражающий поведение при приеме и возникновении ошибок [SWS_Com_00203]:
E_OK: служба инвалидации успешно принята [SWS_Com_00203].COM_SERVICE_NOT_AVAILABLE: служба недоступна. Это происходит, если соответствующая группа I-PDU остановлена, если для указанногоSignalIdне сконфигурированCom Signal Data Invalid Valueили если выполнение завершается сбоем из-за ошибки разработки [SWS_Com_00203].COM_BUSY: служба в настоящее время не может быть выполнена, так как буфер TP заблокирован [SWS_Com_00203].
Что касается параллелизма, Com_InvalidateSignal нереентерабельна для одного и того же сигнала, однако может выполняться параллельно и реентерабельно для разных сигналов [SWS_Com_00203]. Служба объявлена под Service-ID 0x10 и доступна через заголовочный файл Com.h [SWS_Com_00203].
Это указание по использованию было сгенерировано ИИ на основе спецификации AUTOSAR CP R20-11.
Руководство разработчика реализации в подготовке (сложность I1)
функция Com_InvalidateSignalGroup [SWS_Com_00557] 📄 PDF
uint8 Com_InvalidateSignalGroup (Com_SignalGroupIdType SignalGroupId);
The service Co m_ Invalidate Signal Group invalidates all group signals of the signal group with the given Signal Group Id by setting their values to their configured Com Signal Data Invalid Values.
Функция Com_InvalidateSignalGroup служит для того, чтобы установить все сигналы группы переданной группы сигналов в их сконфигурированные значения ComSignalDataInvalidValue и тем самым инвалидировать группу сигналов [SWS_Com_00557].
Использование и семантика
В качестве входного параметра служба ожидает ID инвалидируемой группы сигналов (SignalGroupId типа Com_SignalGroupIdType) [SWS_Com_00557]. Вызов обрабатывается асинхронно и возвращает значение состояния типа uint8 [SWS_Com_00557].
Возвращаемые значения и обработка ошибок
Специфицированы следующие возвращаемые значения [SWS_Com_00557]:
E_OK: запрос на инвалидацию был успешно принят.COM_SERVICE_NOT_AVAILABLE: служба недоступна, поскольку соответствующая группа I-PDU остановлена, ни для одного из сигналов группы не сконфигурированComSignalDataInvalidValueили вызов завершился сбоем из-за ошибки разработки.COM_BUSY: буфер транспортного протокола (TP-буфер) в настоящее время заблокирован.
Параллелизм и реентерабельность
Функция не является ревходабельной для одной и той же группы сигналов, однако может вызываться параллельно (ревходабельно) для различных групп сигналов [SWS_Com_00557]. Объявление доступно через Com.h [SWS_Com_00557].
Данное указание по использованию основано исключительно на данных спецификации из AUTOSAR CP R20-11.
функция Com_TriggerIPDUSend [SWS_Com_00348] 📄 PDF
Std_ReturnType Com_TriggerIPDUSend (PduIdType PduId);
By a call to Com_ Trigger IPDUSend the I - PDU with the given ID is triggered for transmission.
Синхронная функция Com_TriggerIPDUSend инициирует передачу I-PDU, идентифицированной параметром PduId [SWS_Com_00348]. Она доступна через заголовочный файл Com.h [SWS_Com_00348].
Условия вызова и возвращаемые значения
Вызов инициирует отправку только в том случае, если соответствующая I-PDU запущена [SWS_Com_00861]. Соответственно, возвращаемое значение типа Std_ReturnType дифференцирует статус I-PDU [SWS_Com_00348]:
E_OK: передача I-PDU была успешно инициирована [SWS_Com_00348].E_NOT_OK: I-PDU находится в остановленном состоянии, поэтому передачу не удалось инициировать [SWS_Com_00348].
Поведение буферизации и параллелизма
Функция специфицирована как нереентерабельная (Non Reentrant) [SWS_Com_00348]. Для больших I-PDU предусмотрен механизм буферизации: если большая I-PDU инициируется через Com_TriggerIPDUSend, пока её буфер заблокирован, AUTOSAR COM кэширует запрос на отправку и передаёт I-PDU только тогда, когда буфер снова станет доступен [SWS_Com_00867].
Данное указание по использованию было автоматически сгенерировано на основе данных спецификации AUTOSAR Classic R20-11.
Руководство разработчика реализации в подготовке (сложность I2)
функция Com_TriggerIPDUSendWithMetaData [SWS_Com_00858] 📄 PDF
Std_ReturnType Com_TriggerIPDUSendWithMetaData (PduIdType PduId, const uint8* MetaData);
By a call to Com_ Trigger IPDUSend With Meta Data the AUTOSAR COM module updates its internal metadata for the I - PDU with the given ID by copying the metada- ta from the given position and with respect to length of the globally configured Meta Data Type of this I - PDU. Then the I - PDU is triggered for transmission.
Функция Com_TriggerIPDUSendWithMetaData служит для того, чтобы синхронно инициировать передачу I-PDU и предварительно обновить ее внутренние метаданные в модуле AUTOSAR COM [SWS_Com_00858]. Вызов ожидает в качестве параметра PduId идентификатор передаваемой I-PDU, а с MetaData — указатель на предоставляемые метаданные [SWS_Com_00858]. Модуль COM копирует данные начиная с указанного адреса с учетом глобально сконфигурированной длины типа метаданных I-PDU в свое внутреннее хранилище данных и непосредственно после этого инициирует передачу [SWS_Com_00858].
Согласно [SWS_Com_00862] модулю COM, однако, разрешается инициировать передачу I-PDU только в том случае, если I-PDU находится в состоянии «запущена». Если же I-PDU остановлена, запуск передачи не выполняется.
Результат выполнения сигнализируется через возвращаемое значение:
E_OK: передача I-PDU была успешно запущена [SWS_Com_00858].E_NOT_OK: I-PDU остановлена; передачу не удалось инициировать [SWS_Com_00858].
Специфические коды ошибок для DET или DEM для этой службы в полезной нагрузке не задокументированы.
Что касается конкурентности, интерфейс определен как нереентерабельный (Non Reentrant) [SWS_Com_00858], поэтому параллельные вызовы должны быть исключены или синхронизированы. Вероятно, вызывающая сторона несет ответственность за обеспечение валидности указателя MetaData и достаточного размера буфера в соответствии со сконфигурированной длиной метаданных. Вопрос Q-66c6abae0bbde275 (открытый)
Это указание по использованию было сгенерировано ИИ на основе спецификации AUTOSAR R20-11.
Руководство разработчика реализации в подготовке (сложность I2)
функция Com_SwitchIpduTxMode [SWS_Com_00784] 📄 PDF
void Com_SwitchIpduTxMode (PduIdType PduId, booleanMode); ⚠️
The service Com_ Switch Ipdu Tx Mode sets the transmi ssion mode of the I - PDU refe- renced by Pdu Id to Mode. In case the transmission mode changes, the new mode shall immediately be effective (see SWS_ Com_00239). In case the requested transmission mode was already active for this I - PDU, the call will have no effect.
Синхронный интерфейс Com_SwitchIpduTxMode служит для переключения режима передачи I-PDU и специфицирован в заголовочном файле Com.h под Service-ID 0x27 [SWS_Com_00784]. В качестве параметров передаются идентификатор соответствующего I-PDU (PduId), а также желаемый режим передачи в виде булева значения (Mode); возвращаемое значение или выходной параметр отсутствуют [SWS_Com_00784]. Вызов переключает свойства передачи синхронно и непосредственно во время выполнения [SWS_Com_00784].
Для вступления изменения режима в силу спецификация определяет два случая:
- Если режим передачи изменяется в результате вызова, новый рабочий режим вступает в силу для указанного I-PDU незамедлительно [SWS_Com_00784], [SWS_Com_00239].
- Если запрошенный режим передачи уже был активен для соответствующего I-PDU, вызов остается полностью бездействующим [SWS_Com_00784].
Что касается дальнейшего процесса отправки, то для взаимодействия с циклической отправкой действует следующее: если режим передачи I-PDU явно задается через Com_SwitchIpduTxMode, модуль AUTOSAR COM задерживает последующие циклические отправки этого I-PDU на величину смещения по времени ComTxModeTimeOffset [SWS_Com_00881].
Что касается параллельности, функция спроектирована как ревходабельная для различных экземпляров I-PDU [SWS_Com_00784]. Конкурентный или параллельный вызов для одного и того же PduId, напротив, определен как неревходабельный и должен быть предотвращен вызывающей стороной [SWS_Com_00784].
Это указание по использованию было создано автоматически на основе документов спецификации.
Руководство разработчика реализации в подготовке (сложность I1)
функция Com_TriggerTransmit [SWS_Com_00001] 📄 PDF
Std_ReturnType Com_TriggerTransmit (PduIdType TxPduId, PduInfoType* PduInfoPtr);
Within this API , the upper layer module (called module) shall check whether the available data fits into the buffer size reported by Pdu Info Ptr - >Sdu Length. If it fits, it shall copy its data into the buffer provided by Pdu Info Ptr - >Sdu Data Ptr and update the length of the actual copied data in Pdu Info Ptr - >Sdu Length. If not, it returns E_ NOT_ OK without changing Pdu Info Ptr.
Синхронная функция [SWS_Com_00001] служит для синхронного запроса и копирования данных SDU передаваемой PDU передачи (TxPduId) в буфер, предоставленный вызывающей стороной. Вызывающая сторона передает через входной и выходной параметр PduInfoPtr как целевой адрес SduDataPtr, так и максимально доступную емкость буфера в SduLength. Если данные SDU полностью помещаются в буфер, они копируются, PduInfoPtr->SduLength обновляется до фактически скопированного количества байтов, и служба успешно завершается с E_OK [SWS_Com_00001].
Обработка ошибок и граничные условия
Функция прерывает выполнение, не копирует данные и возвращает E_NOT_OK при выполнении одного из следующих условий:
- Предоставленный размер буфера в
PduInfoPtr->SduLengthменьше фактической длины PDU [SWS_Com_00001], [SWS_Com_00869]. В этом случаеPduInfoPtrостается без изменений [SWS_Com_00001]. - Соответствующая I-PDU находится в состоянии остановлена [SWS_Com_00884].
В случае ошибки (E_NOT_OK) вызывающая сторона не должна анализировать или повторно использовать указатель PduInfoPtr, поскольку он может указывать на недействительные данные или представлять собой указатель NULL [SWS_Com_00001].
Параллелизм
В отношении параллелизма интерфейс спроектирован как реентерабельный для различных идентификаторов PDU, однако не должен вызываться параллельно для одного и того же TxPduId [SWS_Com_00001].
Это указание по использованию сгенерировано автоматически на основе спецификации AUTOSAR.
Руководство разработчика реализации в подготовке (сложность I2)
функция Com_RxIndication [SWS_Com_00123] 📄 PDF
void Com_RxIndication (PduIdType RxPduId, const PduInfoType* PduInfoPtr);
Indication of a received PDU from a lower layer communication interface module.
Функция Com_RxIndication служит для сигнализации и передачи принятого PDU от нижележащего интерфейсного модуля связи в модуль AUTOSAR COM [SWS_Com_00123]. Объявление функции предоставляется через заголовочный файл Com.h и имеет service ID 0x42 [SWS_Com_00123].
Вызов выполняется с синхронной семантикой и не возвращает значения (void) [SWS_Com_00123]. Интерфейс не определяет ни входных/выходных, ни чисто выходных параметров, а исключительно два входных параметра [SWS_Com_00123]:
RxPduId(тип данныхPduIdType): представляет уникальный идентификатор принятого PDU [SWS_Com_00123].PduInfoPtr(указатель на константныйPduInfoType): указывает на структуру данных, содержащую длину принятого PDU (SduLength), указатель на буфер с данными PDU (SduDataPtr), а также соответствующие метаданные [SWS_Com_00123].
Что касается поведения параллелизма, Com_RxIndication определена как реентерабельная для вызовов с различными PDU-ID, но явно как нереентерабельная для одного и того же PDU-ID [SWS_Com_00123]. Интерпретация: поэтому вызывающие модули нижележащего интерфейса связи, вероятно, обязаны синхронизировать или сериализовать конкурирующие вызовы для идентичных PDU-ID, чтобы сохранить согласованность данных. Вопрос Q-f3b6194f96c15091 (открытый)
Этот текст был сгенерирован ИИ на основе спецификации AUTOSAR Classic R20-11.
Руководство разработчика реализации в подготовке (сложность I1)
функция Com_TpRxIndication [SWS_Com_00650] 📄 PDF
void Com_TpRxIndication (PduIdType id, Std_ReturnType result);
Called after an I - PDU has been received via the TP API, the result indicates whe- ther the transmission was successful or not.
Синхронная сервисная функция Com_TpRxIndication вызывается, как только I-PDU была принята через TP-API [SWS_Com_00650]. Она информирует модуль AUTOSAR COM о завершении и результате процесса приёма. Через параметр id идентифицируется затронутая I-PDU, в то время как параметр result указывает, была ли передача успешной или завершилась сбоем [SWS_Com_00650]. Функция не имеет возвращаемого значения и определена в заголовке Com.h с Service-ID 0x45 [SWS_Com_00650]. В качестве вызывающей стороны, вероятно, выступает нижележащий транспортный уровень, такой как модуль PduR или TP. Вопрос Q-d7006169cd162db4 (открытый)
Обработка ошибок
Если Com_TpRxIndication вызывается со значением результата E_NOT_OK для параметра result, модуль COM обрабатывает все сигналы принятой большой I-PDU точно так же, как ставшие недействительными сигналы [SWS_Com_00838]. В этом случае ошибки модуль выполняет все сконфигурированные ComDataInvalidActions для всех содержащихся сигналов и групп сигналов [SWS_Com_00838].
Параллелизм и граничные условия
Функция специфицирована как реентерабельная и работает синхронно [SWS_Com_00650]. Поэтому она может вызываться параллельно для разных I-PDU, однако должна обрабатываться в контексте вызывающего экземпляра без задержки.
Это указание по использованию сгенерировано автоматически на основе спецификации AUTOSAR R20-11.
Руководство разработчика реализации в подготовке (сложность I2)
функция Com_TxConfirmation [SWS_Com_00124] 📄 PDF
void Com_TxConfirmation (PduIdType TxPduId, Std_ReturnType result);
The lower layer communication interface module confirms the transmission of a AUTOSAR CP R20 - of Document ID : AUTOSAR_SWS_COM PDU, or the failure to transmit a PDU.
Синхронная функция обратного вызова Com_TxConfirmation объявляется через заголовочный файл Com.h и служит центральным интерфейсом подтверждения модуля AUTOSAR COM [SWS_Com_00124]. Нижележащий модуль интерфейса связи тем самым сообщает обратно модулю Com об успешной передаче PDU или сбое процесса отправки [SWS_Com_00124].
Контекст вызова и параметры
Функция выполняется синхронно, имеет Service-ID 0x40 и не возвращает значения (void) [SWS_Com_00124]. Она ожидает два входных параметра:
TxPduId(типPduIdType): уникальный идентификатор PDU, передача которой завершена или завершилась сбоем [SWS_Com_00124].result(типStd_ReturnType): статус результата процесса отправки [SWS_Com_00124]. ЗначениеE_OKподтверждает состоявшуюся передачу PDU, в то время какE_NOT_OKсигнализирует о сбое передачи PDU [SWS_Com_00124].
Параллелизм и ограничения
Com_TxConfirmation является реентерабельной для различных идентификаторов PDU, однако нереентерабельна для одного и того же идентификатора PDU [SWS_Com_00124]. Интерпретация: вызывающие стороны из нижележащего уровня, предположительно, должны избегать последовательных или прерывающих вызовов с одним и тем же TxPduId из различных контекстов выполнения, чтобы внутренний статус обработки модуля Com оставался согласованным. Вопрос Q-146c1c92403b64fa (открытый)
Обработка ошибок
Спецификация не определяет для этой службы специфических возвращаемых значений и не выделяет отдельных сообщений об ошибках DET или DEM [SWS_Com_00124]. Неудачные передачи передаются модулю Com исключительно через параметр result со значением ошибки E_NOT_OK [SWS_Com_00124].
Это указание по использованию было создано автоматически на основе спецификации AUTOSAR R20-11.
Руководство разработчика реализации в подготовке (сложность I1)
функция Com_TpTxConfirmation [SWS_Com_00725] 📄 PDF
void Com_TpTxConfirmation (PduIdType id, Std_ReturnType result);
This function is called after the I - PDU has been transmitted on its network, the result indicates whether the transmission was successful or not.
Использование и семантика
Функция Com_TpTxConfirmation вызывается после того, как I-PDU была передана по сети, чтобы уведомить модуль COM о результате процесса отправки [SWS_Com_00725]. С помощью параметра id типа PduIdType идентифицируется переданная I-PDU, в то время как result типа Std_ReturnType указывает, была ли передача успешной или завершилась сбоем [SWS_Com_00725]. Функция не имеет возвращаемого значения (void) и обладает семантикой синхронного выполнения [SWS_Com_00725]. Она доступна через заголовочный файл Com.h и имеет Service-ID 0x48 [SWS_Com_00725].
Обработка ошибок
Передача информации об ошибках в этом интерфейсе осуществляется исключительно через параметр result, который отражает успешность или неуспешность передачи I-PDU [SWS_Com_00725]. Специфические коды ошибок, а также сообщения об ошибках в модуль Default Error Tracer (DET) или Diagnostic Event Manager (DEM) в спецификации функции не указаны [SWS_Com_00725].
Параллелизм и граничные условия
Интерфейс специфицирован как reentrant и, следовательно, может выполняться параллельно [SWS_Com_00725]. В качестве временного граничного условия действует требование о том, что вызов разрешен только после завершения передачи I-PDU по сети [SWS_Com_00725]. Интерпретация: судя по соглашению об именовании и структуре модулей, вызов, как правило, должен инициироваться нижележащим модулем транспортного протокола. Вопрос Q-8320e76ff63f62ce (открытый)
Этот текст основан на спецификации AUTOSAR R20-11.
Руководство разработчика реализации в подготовке (сложность I2)
функция Com_StartReception [SWS_Com_00691] 📄 PDF
BufReq_ReturnType Com_StartOfReception (PduIdType id, const PduInfoType* info, PduLengthType TpSduLength, PduLengthType* bufferSizePtr);
Service Com_StartReception.
Синхронная и ревходабельная функция Com_StartReception (доступная через Com.h, Service-ID 0x46) вызывается в начале приема N-SDU, передаваемой нефрагментированно в виде Single Frame (SF) или фрагментированно через First Frame (FF) с последующими Consecutive Frames (CF) [SWS_Com_00691].
Через параметр id идентифицируется I-PDU, а TpSduLength указывает общую длину принимаемой N-SDU [SWS_Com_00691]. Указатель info указывает на полезные данные и полезную длину первого или одиночного кадра, а также на сопутствующие метаданные; если ни данные кадра, ни метаданные не готовы, передается NULL_PTR [SWS_Com_00691]. Через выходной параметр bufferSizePtr функция предоставляет доступный размер буфера, который модуль транспортного протокола использует для определения Block Size (BS) [SWS_Com_00691]. Если служба вызывается со значением TpSduLength, равным 0, она возвращает текущий максимально доступный размер буфера [SWS_Com_00691].
Результат запроса возвращается в виде BufReq_ReturnType [SWS_Com_00691]:
BUFREQ_OK: соединение принимается и прием продолжается;bufferSizePtrуказывает доступный буфер или сигнализирует 0, если буфер требуемого размера недоступен [SWS_Com_00691].BUFREQ_E_NOT_OK: соединение отклоняется и прием прерывается; значениеbufferSizePtrостается неизменным [SWS_Com_00691].BUFREQ_E_OVFL: невозможно предоставить буфер требуемой длины, вследствие чего прием прерывается;bufferSizePtrостается неизменным [SWS_Com_00691].
Этот текст был создан ИИ на основе спецификации AUTOSAR R20-11.
Руководство разработчика реализации в подготовке (сложность I1)
функция Com_CopyRxData [SWS_Com_00692] 📄 PDF
BufReq_ReturnType Com_CopyRxData (PduIdType id, const PduInfoType* info, PduLengthType* bufferSizePtr);
Service Com_CopyRxData.
Использование и семантика вызова
Синхронная функция Com_CopyRxData вызывается для передачи принятых данных сегмента I-PDU (N-PDU) верхнему уровню [SWS_Com_00692]. При сегментированных передачах каждый последующий вызов этого интерфейса предоставляет очередную часть всех данных I-PDU [SWS_Com_00692].
Параметры и управление буфером
id: однозначно идентифицирует принятый I-PDU [SWS_Com_00692].info: указатель на структуру типаPduInfoType. ЧерезSduDataPtrона передает указатель на буфер-источник, а черезSduLength— количество копируемых байтов [SWS_Com_00692]. Указание значения0дляSduLengthслужит для запроса текущего доступного размера буфера верхнего уровня; в этом случае простого опросаSduDataPtrможет быть установлен вNULL_PTR[SWS_Com_00692].bufferSizePtr: указатель на переменную типаPduLengthType, в которую записывается размер приемного буфера, оставшийся после операции копирования [SWS_Com_00692].
Возвращаемые значения и свойства
Функция возвращает статус типа BufReq_ReturnType [SWS_Com_00692]:
BUFREQ_OK: данные были успешно скопированы в целевой буфер [SWS_Com_00692].BUFREQ_E_NOT_OK: копирование данных не удалось из-за возникновения ошибки [SWS_Com_00692].
Интерфейс имеет Service-ID 0x44, специфицирован как ревходабельный и доступен через заголовочный файл Com.h [SWS_Com_00692].
Этот текст был создан ИИ и основан на стандарте AUTOSAR R20-11.
Руководство разработчика реализации в подготовке (сложность I1)
функция Com_CopyTxData [SWS_Com_00693] 📄 PDF
BufReq_ReturnType Com_CopyTxData (PduIdType id, const PduInfoType* info, const RetryInfoType* retry, PduLengthType* availableDataPtr);
Service Com_CopyTxData.
Синхронная и реентерабельная функция Com_CopyTxData вызывается нижележащими модулями (такими как транспортные протоколы) для пошаговой выборки данных передачи для сегментов (N-PDU) некоторой I-PDU из буфера передачи модуля COM [SWS_Com_00693].
Использование и параметры
Каждый вызов предоставляет следующую часть данных I-PDU [SWS_Com_00693]:
id: идентифицирует передаваемую I-PDU [SWS_Com_00693].info: указывает черезSduDataPtrцелевой буфер, а черезSduLength— количество копируемых байтов. Длина 0 допустима для передачи изменений состояния черезretryили для запроса доступного объёма данных; в этом случаеSduDataPtrможет бытьNULL_PTR[SWS_Com_00693].retry: подтверждает отправленные данные или инициирует повторные передачи. ЕслиretryявляетсяNULL_PTR, данные могут быть удалены из буфера непосредственно после копирования. Еслиretryуказывает на структуруRetryInfoType, тоTpDataStateуправляет удержанием буфера:TP_CONFPENDINGоставляет данные в буфере для устранения ошибок,TP_DATACONFподтверждает скопированные до вызова данные для удаления, аTP_DATARETRYповторно копирует ранее прочитанные данные начиная со смещенияTxTpDataCnt[SWS_Com_00693].availableDataPtr: возвращает оставшееся количество доступных байтов в буфере передачи, что позволяет, например, динамическим транспортным протоколам (таким как FrIsoTp) определять размеры последующих сегментов [SWS_Com_00693].
Возвращаемые значения и обработка ошибок
Результат функции сигнализирует об успехе запроса буфера через BufReq_ReturnType [SWS_Com_00693]:
BUFREQ_OK: данные были полностью скопированы в целевой буфер в соответствии с запросом [SWS_Com_00693].BUFREQ_E_BUSY: запрошенный объём данных не готов в буфере передачи. Данные не копируются, и нижележащий модуль может повторить вызов позже [SWS_Com_00693].BUFREQ_E_NOT_OK: запрос завершился неудачей; данные не были скопированы [SWS_Com_00693].
Это указание по использованию было сгенерировано автоматически на основе спецификации AUTOSAR CP R20-11.
Руководство разработчика реализации в подготовке (сложность I1)
функция Com_MainFunctionRx [SWS_Com_00398] 📄 PDF
void Com_MainFunctionRx (void);
This function performs the processing of the AUTOSAR COM module's receive processing that are not directly handled within the COM's functions invoked by the PDU - R, for example Com_ Rx Indication. Per configured Com Main Function Rx instance one Com_ Main F unction Rx_
Использование
Синхронная функция Com_MainFunctionRx берёт на себя внутреннюю обработку приёма модуля AUTOSAR COM для операций, которые не обрабатываются непосредственно в контексте выполнения API, вызываемых PDU-маршрутизатором (PduR), таких как Com_RxIndication [SWS_Com_00398]. Она не имеет ни входных, ни выходных параметров и не возвращает значения [SWS_Com_00398]. Объявление осуществляется через заголовочный файл SchM_Com.h; поэтому контекст вызова, вероятно, типично осуществляется периодически через Schedule Manager (SchM) [SWS_Com_00398]. Вопрос Q-48d121e36f62c6de (открытый)
Обработка ошибок и инициализация
Если функция выполняется до инициализации модуля через Com_Init или после вызова Com_DeInit, в отличие от большинства обычных COM-API, ошибка COM_E_UNINIT (0x02) не генерируется, так как Com_MainFunctionRx явно исключена из этого [SWS_Com_00804]. Специфических кодов ошибок или возврата для этого интерфейса не существует [SWS_Com_00398].
Параллелизм и многоэкземплярный режим
В отношении контекста выполнения и реентерабельности действуют следующие требования [SWS_Com_00398]:
- Реентерабельность: функция не является реентерабельной для одного и того же экземпляра, однако может вызываться параллельно для разных экземпляров [SWS_Com_00398].
- Специфическая для экземпляра форма реализации: для каждого контейнера
ComMainFunctionRx, определённого в конфигурации ECU, реализуется отдельная функция видаCom_MainFunctionRx_<shortName>, где<shortName>соответствует Short-Name конфигурационного контейнера [SWS_Com_00398].
Этот текст был сгенерирован ИИ и служит для ориентира. Решающее значение имеют упомянутые спецификации AUTOSAR.
Руководство разработчика реализации в подготовке (сложность I1)
функция Com_MainFunctionTx [SWS_Com_00399] 📄 PDF
void Com_MainFunctionTx (void);
This function performs the processing of the AUTOSAR COM module's transmissi- on activities that are not directly handled within the COM's function invoked by the AUTOSAR CP R20 - of Document ID : AUTOSAR_SWS_COM RTE, for example Com_ Send Signal. Per configured Com Main Function Tx instance one Com_ Main F unction Tx_
Использование и принцип работы
Функция Com_MainFunctionTx выполняет действия по отправке модуля AUTOSAR COM, которые не обрабатываются напрямую внутри вызываемых через RTE функций COM (таких как, например, Com_SendSignal) ([SWS_Com_00399]). Выполнение осуществляется синхронно. Она не имеет ни входных, ни входных/выходных, ни выходных параметров и не возвращает значения ([SWS_Com_00399]). Интерфейс объявляется через SchM_Com.h; интерпретация: из-за этой принадлежности к заголовочному файлу контекст вызова, вероятно, находится в Schedule Management (SchM). Вопрос Q-c33cfcf81700bcc5 (открытый)
Для каждого сконфигурированного контейнера Com Main Function Tx в конфигурации ECU должна быть реализована функция конкретного экземпляра согласно схеме именования Com_MainFunctionTx_<shortName>, где <shortName> соответствует короткому имени конфигурационного контейнера ([SWS_Com_00399]).
Параллелизм и ограничения
Что касается реентерабельности, Com_MainFunctionTx разработана как реентерабельная для разных экземпляров, но не должна вызываться реентерабельно для одного и того же экземпляра ([SWS_Com_00399]).
Обработка ошибок и состояние инициализации
Согласно [SWS_Com_00804] вызов служб COM до инициализации через Com_Init или после деинициализации через Com_DeInit штатно приводит к ошибке COM_E_UNINIT (0x02). Однако Com_MainFunctionTx явно исключена из этого и не генерирует такую ошибку инициализации в этих состояниях ([SWS_Com_00804]).
Этот текст был сгенерирован искусственным интеллектом и основан на спецификации AUTOSAR R20-11.
Руководство разработчика реализации в подготовке (сложность I1)
функция Signals [SWS_Com_00400] 📄 PDF
void Com_MainFunctionRouteSignals (void);
Calls the signal gateway part of the AUTOSAR COM module to forward received signals to be routed. Per configured Com Main Function Route Signals instance one Com_ Main Functi on Route Signals_
Главная функция Com_MainFunctionRouteSignals (Service-ID 0x1a) служит в модуле AUTOSAR COM центральным синхронным интерфейсом для пересылки сигналов ([SWS_Com_00400]). Её задача состоит в вызове сигнальной шлюзовой части модуля COM, чтобы принятые сигналы, предназначенные для маршрутизации, пересылались в свои сконфигурированные цели ([SWS_Com_00400]).
Вызов и семантика
Беспараметрический C-интерфейс имеет сигнатуру void Com_MainFunctionRouteSignals(void) ([SWS_Com_00400]). Он выполняется синхронно и не имеет ни параметров для ввода, ввода/вывода или вывода, ни возвращаемого значения ([SWS_Com_00400]). Объявление главной функции предоставляется через заголовочный файл SchM_Com.h ([SWS_Com_00400]). Интерпретация: из-за этого предоставления через SchM_Com.h плановый вызов в контексте задачи, вероятно, периодически выполняется шедулером BSW (SchM). Вопрос Q-0f0b57034d6d6bf1 (открытый)
Инстанцирование и реентерабельность
Для интеграции, именования и параллелизма [SWS_Com_00400] определяет следующие обязательные требования:
- Специфическая для экземпляра реализация: для каждого присутствующего в конфигурации ECU экземпляра конфигурационного контейнера
ComMainFunctionRouteSignalsдолжна быть реализована отдельная функция по схеме именованияCom_MainFunctionRouteSignals_<shortName>([SWS_Com_00400]). При этом<shortName>соответствует короткому имени соответствующего конфигурационного контейнера. - Поведение реентерабельности: функция является реентерабельной для вызовов разных экземпляров ([SWS_Com_00400]). Однако для одного и того же экземпляра она явно не является реентерабельной и поэтому не должна выполняться параллельно ([SWS_Com_00400]).
Это указание по использованию было сгенерировано автоматически на основе спецификации.
функция Com_CbkTxAck [SWS_Com_00468] 📄 PDF
void Com_CbkTxAck (void);
This callback represents notification class 2 of [17]. It is called immediately after successful transmission of the I - PDU containing the message.
Функция обратного вызова Com_CbkTxAck служит в модуле Com для уведомления об успешной отправке сообщения [SWS_Com_00468]. Она представляет класс уведомлений 2 (notification class 2) и вызывается непосредственно после успешной передачи того I-PDU, который содержит соответствующее сообщение [SWS_Com_00468].
Для контекста вызова и свойств интерфейса согласно спецификации действуют следующие требования [SWS_Com_00468]:
- Сигнатура и параметры: функция обратного вызова имеет сигнатуру
void Com_CbkTxAck (void). Она не принимает входных, входных/выходных или выходных параметров и не возвращает значения [SWS_Com_00468]. - Синхронность: вызов специфицирован как синхронный (Synchronous) [SWS_Com_00468].
- Реентерабельность: поведение реентерабельности классифицировано как don't care [SWS_Com_00468].
- Конфигурация: интерфейс объявлен как конфигурируемый (configurable) [SWS_Com_00468]. Интерпретация: фактическое имя функции обратного вызова, вероятно, параметризуется в инструменте конфигурации индивидуально для сообщения или сигнала. Вопрос Q-3670b7b04fd7c74c (открытый)
Специфические коды ошибок, реакции на ошибки, а также сообщения в DET или DEM для этого элемента в спецификации не определены [SWS_Com_00468]. Также не приводится дополнительных условий очередности по отношению к другим вызовам [SWS_Com_00468].
Этот текст был сгенерирован ИИ на основе AUTOSAR R20-11.
функция Com_CbkTxErr [SWS_Com_00491] 📄 PDF
void Com_CbkTxErr (void);
This callback corresponds to notification class 4 of [17]. It is called in case the transmission is not possible because the corresponding I - PDU group is stopped.
Функция обратного вызова Com_CbkTxErr вызывается синхронно, если передача невозможна из-за того, что соответствующая группа I-PDU остановлена [SWS_Com_00491]. Она соответствует классу уведомлений 4 согласно базовым спецификациям [SWS_Com_00491].
Вызов и семантика
- Сигнатура и параметры: функция не имеет ни входных, ни входных/выходных, ни выходных параметров (
void Com_CbkTxErr (void)) и не возвращает значения [SWS_Com_00491]. - Поведение при выполнении: вызов осуществляется синхронно («Synchronous»), тогда как для реентерабельности указано «don't care» [SWS_Com_00491].
- Доступность: интерфейс обратного вызова является конфигурируемым («configurable») [SWS_Com_00491].
Обработка ошибок и взаимодействие
Функция специально служит для того, чтобы сигнализировать вызывающему или вышележащему уровню о возникновении ошибки — предотвращении запроса на передачу из-за остановленной группы I-PDU [SWS_Com_00491]. Поскольку параметры не передаются, контекст затрагиваемого сигнала или I-PDU, вероятно, задается через конфигурацию или модулеспецифичные сопоставления. Вопрос Q-d7153324d2eb2995 (открытый)
Этот указание по использованию было сгенерировано автоматически системой ИИ на основе данных спецификации.
функция Com_CbkTxTOut [SWS_Com_00554] 📄 PDF
void Com_CbkTxTOut (void);
This callback corresponds to notification class 4 of [17]. It is called immediately after a message transmission error has been detected by the deadline monitoring mechanism.
Использование и контекст вызова
Функция обратного вызова Com_CbkTxTOut служит интерфейсом уведомления об отсутствии успешной передачи. Согласно [SWS_Com_00554], она вызывается непосредственно после того, как механизм контроля дедлайнов (deadline monitoring mechanism) обнаружил ошибку передачи сообщения. Вызов выполняется синхронно и соответствует классу уведомлений 4. Поскольку сигнатура void Com_CbkTxTOut(void) не имеет ни входных, ни возвращаемых значений, оповещение вышележащего уровня осуществляется без параметров.
Параллелизм и конфигурация
Относительно реентерабельности функция согласно [SWS_Com_00554] специфицирована со значением don't care. Вероятно, поэтому вызываемое прикладное программное обеспечение должно принять надлежащие меры по обеспечению потокобезопасности, если события мониторинга могут поступать параллельно. Вопрос Q-793a6c18d81de85e (открытый) Доступность функции обратного вызова конфигурируется в коммуникационном модуле и адаптируется под соответствующие требования мониторинга.
Обработка ошибок
В [SWS_Com_00554] для Com_CbkTxTOut не определены отдельные сообщения об ошибках DET или DEM и возвращаемые значения для квитирования ошибок. Сам вызов обратного вызова представляет собой реакцию на ошибку при превышении предельного срока отправки.
Этот текст был сгенерирован ИИ на основе спецификации AUTOSAR R20-11.
функция Com_CbkRxAck [SWS_Com_00555] 📄 PDF
void Com_CbkRxAck (void);
This callback represents notification class 1 of [17]. It is called immediately after the message has been stored in the receiving message object.
Функция обратного вызова Com_CbkRxAck служит в модуле AUTOSAR COM конфигурируемым подтверждением приема и представляет класс уведомлений 1 согласно [17] [SWS_Com_00555]. Модуль COM вызывает эту подпрограмму обратного вызова непосредственно после того, как принятое сообщение было успешно помещено и сохранено в предусмотренном объекте сообщений приема [SWS_Com_00555].
Использование и контекст вызова
- Синхронное поведение при выполнении: функция специфицирована как синхронная [SWS_Com_00555]. Она выполняется непосредственно в ходе процесса сохранения, так что вызывающий контекст модуля COM ожидает завершения выполнения обратного вызова.
- Параметры и возвращаемые значения: согласно сигнатуре
void Com_CbkRxAck (void)входные параметры, входные/выходные параметры и выходные параметры не передаются [SWS_Com_00555]. Функция также не возвращает значения вызывающему модулю [SWS_Com_00555]. - Доступность: механизм вызова доступен системе в качестве конфигурируемого интерфейса [SWS_Com_00555].
Параллелизм и обработка ошибок
Для реентерабельности установлено свойство «don't care» [SWS_Com_00555]. По-видимому, это означает, что спецификация COM не предъявляет требований к реентерабельному вызову, и механизмы защиты от одновременного доступа возлагаются на пользователя. Вопрос (открытый) Поскольку для DET или DEM не определены ни возвращаемые значения, ни специфические коды ошибок или сообщения об ошибках [SWS_Com_00555], любые возможные ошибки при обработке, вероятно, должны обрабатываться полностью локально внутри функции обратного вызова.
Данный текст был сгенерирован ИИ на основе спецификации R20-11.
функция Com_CbkRxTOut [SWS_Com_00556] 📄 PDF
void Com_CbkRxTOut (void);
This callback corresponds to notification class 3 of [17]. It is called immediately after a message reception error has been detected by the deadline monitoring mechanism.
Использование и семантика
Функция обратного вызова Com_CbkRxTOut служит для уведомления об отсутствии ожидаемого сообщения. Согласно [SWS_Com_00556], она вызывается непосредственно, как только механизм Deadline-Monitoring модуля обнаруживает ошибку при приёме сообщения. Это уведомление соответствует классу оповещения 3 («notification class 3 of [17]») и доступно в качестве конфигурируемого интерфейса [SWS_Com_00556].
Вызов выполняется синхронно (Synchronous) без входных параметров и без возвращаемого значения (void Com_CbkRxTOut(void)) [SWS_Com_00556]. Таким образом, функция сигнализирует вызывающему получателю или вышележащему уровню программного обеспечения исключительно о самом событии таймаута, не передавая данные контекста непосредственно в вызове.
Параллелизм и ограничения
Для реентерабельности функции в спецификации don't care определено [SWS_Com_00556]. Поскольку вызов выполняется непосредственно и синхронно после обнаружения ошибки, реализация процедуры обратного вызова, предположительно, должна быть рассчитана на работу с минимальными блокировками, чтобы недопустимо не задерживать Deadline-Monitoring модуля COM. Вопрос Q-88055efc50f5843b (открытый)
Этот текст был сгенерирован ИИ и служит в качестве справочного руководства. Преимущественную силу имеют упомянутые спецификации AUTOSAR.
функция Com_CbkInv [SWS_Com_00536] 📄 PDF
void Com_CbkInv (void);
This callback function corresponds to SWS_ Com_00680. It is called after recepti- on of an invalid signal or signal group respectively.
Функция обратного вызова Com_CbkInv уведомляет вышележащие программные уровни о приеме поврежденных или недействительных коммуникационных данных в модуле AUTOSAR COM [SWS_Com_00536]. Она вызывается непосредственно после приема недействительного сигнала или недействительной группы сигналов и информирует получателя о наличии недействительного значения сигнала [SWS_Com_00536].
Интерфейс имеет сигнатуру void Com_CbkInv(void), следовательно, не принимает входных параметров и не возвращает значения вызывающей стороне [SWS_Com_00536]. Вызов происходит синхронно, а поведение реентерабельности указано в спецификации как «don't care» [SWS_Com_00536]. Поскольку параметры для идентификации затрагиваемого сигнала не передаются, идентификатор Com_CbkInv, вероятно, служит конфигурируемым шаблоном сигнатуры для сигналоспецифичных уведомлений. Вопрос Q-6e02e6bcf324eb93 (открытый)
В отношении интеграции и системного поведения действуют следующие граничные условия:
- Предоставление функции является конфигурируемым, благодаря чему уведомление при необходимости может активироваться индивидуально для каждого сигнала или группы сигналов [SWS_Com_00536].
- С содержательной точки зрения функция соответствует требованию
SWS_Com_00680по обработке инвалидации принимаемых сигналов в модуле COM [SWS_Com_00536]. - Специфические подпрограммы обработки ошибок, коды ошибок или сообщения об ошибках в модули разработки или диагностики, такие как DET или DEM, для этого интерфейса не указаны [SWS_Com_00536].
Это указание по использованию было сгенерировано автоматически на основе данных спецификации.
функция Com_CbkCounterErr [SWS_Com_00726] 📄 PDF
void Com_CbkCounterErr (PduIdType ComPduId, uint8 ExpectedCounter, uint8 ReceivedCounter);
This function is called immediately, if the AUTOSAR COM module receives an I - PDU counter that differs from the expected one. AUTOSAR CP R20 - of Document ID : AUTOSAR_SWS_COM
Конфигурируемая callback-функция Com_CbkCounterErr служит для сигнализации об ошибках при контроле счетчика I-PDU согласно [SWS_Com_00726]. Она вызывается непосредственно и синхронно модулем AUTOSAR COM, если у принятой I-PDU обнаруживается значение счетчика, не совпадающее с ожидаемым значением счетчика. Это позволяет заблаговременно обнаруживать ошибки последовательности при приеме сообщений.
Интерфейс не имеет возвращаемого значения (void) и при вызове передает три входных параметра для анализа ошибок ([SWS_Com_00726]):
ComPduId(PduIdType): идентификатор затронутой I-PDU, в которой возникла ошибка счетчика.ExpectedCounter(uint8): ожидаемое модулем COM значение счетчика I-PDU.ReceivedCounter(uint8): фактически обнаруженное в принятом сообщении значение счетчика.
В отношении параллелизма реентерабельность функции объявлена в спецификации как «don't care» ([SWS_Com_00726]). Специфические сообщения об ошибках DET или DEM для этого интерфейса в [SWS_Com_00726] не заданы. Поскольку callback-функция определена как конфигурируемая, она, вероятно, реализуется на вышележащем уровне, таком как приложение, чтобы реагировать на ошибки передачи или потери пакетов с учетом специфики приложения. Интерпретация: поскольку вызов выполняется непосредственно и синхронно в контексте обработки приема COM ([SWS_Com_00726]), вызываемая подпрограмма не должна выполнять блокирующих операций. Вопрос Q-a745eb5416fc156b (открытый)
Это указание по использованию было сгенерировано ИИ на основе спецификации AUTOSAR R20-11.
функция Com_CbkTxPrep [SWS_Com_91013] 📄 PDF
void Com_CbkTxPrep (void);
This callback function indicates that the signals/ signal groups of a dedicated Com_ Main Function Tx instance will now be prepared for transmission.
Callback-функция Com_CbkTxPrep служит уведомлением о том, что сигналы или группы сигналов выделенного экземпляра Com_MainFunctionTx теперь подготавливаются к передаче [SWS_Com_91013]. Выполнение функции происходит синхронно по отношению к вызывающему экземпляру [SWS_Com_91013]. Согласно своей сигнатуре void Com_CbkTxPrep(void) она не принимает ни входных параметров, ни входных/выходных параметров, ни выходных параметров и не имеет возвращаемого значения [SWS_Com_91013].
Предоставление интерфейса доступно через конфигурацию [SWS_Com_91013]. Если параметр конфигурации ComPreparationNotification сконфигурирован, соответствующая функция Com_CbkTxPrep должна вызываться внутри связанной MainFunctionTx [SWS_Com_00886]. При этом обязательно строгое соблюдение временного порядка следования: вызов должен быть полностью завершен до того, как начнется фактическая обработка I-PDU внутри главной функции передачи Tx [SWS_Com_00886].
В отношении поведения при параллелизме и возможных ограничений Com_CbkTxPrep специфицирована как нереентерабельная (Non Reentrant) [SWS_Com_91013]. Контекст вызова жестко привязан к процессу выполнения соответствующего экземпляра MainFunctionTx [SWS_Com_91013]. Поскольку callback должен выполняться непосредственно перед началом обработки I-PDU, функция синхронно интегрирована в соответствующую процедуру передачи [SWS_Com_00886].
Это указание по использованию было сгенерировано автоматически на основе спецификации AUTOSAR R20-11.
Руководство разработчика реализации в подготовке (сложность I1)
функция Com_RxIpduCallout [SWS_Com_00700] 📄 PDF
boolean Com_RxIpduCallout (PduIdType PduId, const PduInfoType* PduInfoPtr);
The I - PDU callout on receiver side can be configured to implement user - defined receive filtering mechanisms.
Функция Com_RxIpduCallout представляет собой конфигурируемый коллаут на стороне приёмника, который служит для реализации специфичных для пользователя механизмов фильтрации приёма для I-PDU [SWS_Com_00700]. Выполнение происходит синхронно, а в отношении реентерабельности интерфейс специфицирован как don't care [SWS_Com_00700].
Вызову передаются идентификатор и данные принятой PDU [SWS_Com_00700]:
PduId: идентификатор принятой I-PDU [SWS_Com_00700].PduInfoPtr: указатель на структуруPduInfoType, которая предоставляет длину (SduLength), а также указатель на полезные данные (SduDataPtr) принятой I-PDU [SWS_Com_00700].
Что касается предоставления данных, [SWS_Com_00816] требует, чтобы модуль AUTOSAR COM полностью передавал все данные принятой I-PDU в Com_RxIpduCallout точно в том виде, в каком они были предоставлены уровнем маршрутизатора PDU (PduR).
С помощью булевого возвращаемого значения коллаут управляет последующей обработкой I-PDU в модуле COM [SWS_Com_00700]:
true: принятая I-PDU продолжает обрабатываться в штатном режиме [SWS_Com_00700].false: I-PDU дальше не обрабатывается и тем самым отбрасывается [SWS_Com_00700].
Специфические коды ошибок, константы кодов подтверждения или сообщения DET и DEM для данного callout в спецификации не предусмотрены [SWS_Com_00700].
Примечание. Это указание по использованию было автоматически сгенерировано системой ИИ на основе спецификации AUTOSAR R20-11.
функция Com_TxIpduCallout [SWS_Com_00346] 📄 PDF
boolean Com_TxIpduCallout (PduIdType PduId, PduInfoType* PduInfoPtr);
The I - PDU callout on sender side can be configured for example to implement user - defined transmission filtering or user - defined pre - transmission - processing of the outgoing I - PDU.
Функция Com_TxIpduCallout служит конфигурируемым коллаутом на стороне отправителя и вызывается синхронно для выполнения пользовательской предварительной обработки или фильтрации передачи исходящей I-PDU [SWS_Com_00346].
Параметры и возвращаемое значение
PduId(in): передаёт идентификатор передаваемой I-PDU [SWS_Com_00346].PduInfoPtr(inout): содержит длину полезных данных (SduLength), а также указатель на полезные данные (SduDataPtr) I-PDU [SWS_Com_00346]. Через него данные I-PDU могут быть проверены или модифицированы перед отправкой.- Возвращаемое значение (
boolean): управляет дальнейшей обработкой I-PDU [SWS_Com_00346]. Возвращаемое значениеtrueинициирует штатную отправку I-PDU, в то время какfalseпрерывает любую дальнейшую обработку и тем самым передачу [SWS_Com_00346].
Параллелизм и конфигурация
Коллаут имеет Service-ID 0x29, и его реентерабельность со стороны спецификации определена как «don't care» [SWS_Com_00346]. Интерпретация: поскольку реентерабельность не ограничена, вызовы в зависимости от инициирующего задания на передачу, вероятно, происходят в контекстах различных задач, поэтому реализации на стороне пользователя должны быть потокобезопасными при использовании разделяемых ресурсов. Вопрос Q-3ce35701879bb60c (открытый)
Этот текст был создан автоматически. Все данные основаны исключительно на версии спецификации AUTOSAR R20-11.
тип Com_StatusType [SWS_Com_00819] 📄 PDF
This is a status value returned by the API service Com_ Get Status().
Перечислимый тип Com_StatusType определяет значение статуса для модуля AUTOSAR COM и предоставляется через заголовочный файл Com.h [SWS_Com_00819]. Этот тип служит возвращаемым значением сервиса API Com_GetStatus(), с помощью которого вызывающие стороны могут опрашивать текущее состояние инициализации и рабочее состояние коммуникационного модуля [SWS_Com_00819].
Специфицированный диапазон значений Com_StatusType различает ровно два состояния [SWS_Com_00819]:
COM_UNINIT: указывает, что модуль AUTOSAR COM не инициализирован или непригоден к использованию [SWS_Com_00819]. Это состояние обязательно имеет числовое значение0x00(или значение0) и образует обязательное значение по умолчанию непосредственно после сброса системы [SWS_Com_00819].COM_INIT: сигнализирует о том, что модуль AUTOSAR COM был инициализирован надлежащим образом и, следовательно, готов к работе и пригоден к использованию [SWS_Com_00819].
Для вызывающего программного обеспечения анализ этого возвращаемого значения служит для проверки готовности коммуникационного модуля к работе перед его использованием [SWS_Com_00819]. Пока сервис Com_GetStatus() возвращает значение COM_UNINIT, модуль COM считается неинициализированным или непригодным к использованию [SWS_Com_00819]. Только когда статус принимает значение COM_INIT, модуль инициализирован и готов к работе [SWS_Com_00819]. Другие коды ошибок или возвращаемые значения для этого типа перечисления не специфицированы [SWS_Com_00819].
Это указание по использованию создано автоматически на основе спецификации.
Руководство разработчика реализации в подготовке (сложность I1)
тип Com_SignalIdType [SWS_Com_00820] 📄 PDF
The AUTOSAR COM module's signal object identifier.
тип Com_SignalGroupIdType [SWS_Com_00821] 📄 PDF
The AUTOSAR COM module's signal group object identifier.
тип Com_IpduGroupIdType [SWS_Com_00822] 📄 PDF
The AUTOSAR COM I - PDU module's group object identifier.
тип Com_ConfigType [SWS_Com_00825] 📄 PDF
This is the type of the data structure containing the initialization data for COM.
Request a governed re-review of this record. The record is not changed immediately.
- Record
AUTOSAR/AP/record/CP_MOD_Com- Status
- unspecified
- Version
AUTOSAR/AP/record/CP_MOD_Com@rel:R20-11#e065d4d0- Content hash
e065d4d0- Source
- https://www.autosar.org/fileadmin/standards/R20-11/CP/AUTOSAR_SWS_COM.pdf#nameddest=SWS_Com_00432
gemini-3.8-flash-low· 2026-10-13 · Немецкий оригинал