Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/sauci/cantp
Implementation of the CanTp module (ISO 15765-2), according to AUTOSAR specification v4.4.0
https://github.com/sauci/cantp
autosar c ecu iso15765-2
Last synced: 1 day ago
JSON representation
Implementation of the CanTp module (ISO 15765-2), according to AUTOSAR specification v4.4.0
- Host: GitHub
- URL: https://github.com/sauci/cantp
- Owner: Sauci
- License: bsd-3-clause
- Created: 2019-03-19T15:13:59.000Z (over 5 years ago)
- Default Branch: master
- Last Pushed: 2024-05-21T05:58:23.000Z (6 months ago)
- Last Synced: 2024-08-04T04:06:35.545Z (3 months ago)
- Topics: autosar, c, ecu, iso15765-2
- Language: C
- Homepage:
- Size: 438 KB
- Stars: 54
- Watchers: 6
- Forks: 16
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
| branch | build status | coverage |
|:-------------------------------------------------------|:-------------------------------------------------------------------------------------------------------------------------------------------------------------|----------------------------------------------------------------------------------------------------------------------------------|
| [master](https://github.com/Sauci/CanTp/tree/master) | [![cantp CI](https://github.com/Sauci/CanTp/actions/workflows/test.yml/badge.svg?branch=master)](https://github.com/Sauci/CanTp/actions/workflows/test.yml) | [![codecov](https://codecov.io/gh/Sauci/CanTp/branch/master/graph/badge.svg)](https://codecov.io/gh/Sauci/CanTp/branch/master) |
| [develop](https://github.com/Sauci/CanTp/tree/develop) | [![cantp CI](https://github.com/Sauci/CanTp/actions/workflows/test.yml/badge.svg?branch=develop)](https://github.com/Sauci/CanTp/actions/workflows/test.yml) | [![codecov](https://codecov.io/gh/Sauci/CanTp/branch/develop/graph/badge.svg)](https://codecov.io/gh/Sauci/CanTp/branch/develop) |# CMake definitions
The following definitions might be set by the user, depending on the needs.| definition | values | default | description |
|:------------------------------|:---------------------------------|:-------------------------------|:---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| ```AUTOSAR_STD_HEADER_PATH``` | ```-``` | ```CanTp/test/stub/common``` | specifies the directory containing **AUTOSAR** standard headers ComStack_Types.h and Std_Types.h (used when integrating this module in an other project) |
| ```CANTP_CONFIG_FILEPATH``` | ```-``` | ```CanTp/config/can_tp.json``` | specifies which json configuration file should be used to generate the auto-generated code |
| ```CANTP_ENABLE_TEST``` | ```ON```/```OFF``` | ```OFF``` | enables/disables tests. |
| ```ENABLE_DET``` | ```ON```/```OFF``` | ```ON``` | enables/disables development error detections (see AUTOSAR [DET](https://www.autosar.org/fileadmin/user_upload/standards/classic/4-3/AUTOSAR_SWS_DefaultErrorTracer.pdf) module) |
| ```ENABLE_DOC_GEN``` | ```ON```/```OFF``` | ```OFF``` | enables/disables generation of [Doxygen](http://www.doxygen.nl/) documentation |
| ```ENABLE_PC_LINT``` | ```ON```/```OFF``` | ```OFF``` | enables/disables generation of targets related to static code analysis (should be disabled if [PC-Lint](https://www.gimpel.com) software is not available) |
| ```MISRA_C_VERSION``` | ```1998```/```2004```/```2012``` | ```2012``` | specifies which version of **MISRA** should be used when performing static code analysis (only used if ```ENABLE_PC_LINT``` is set) |
| ```OS_GET_TIME_API``` | ```ON```/```OFF``` | ```OFF``` | indicates whether the OSEK API GetElapsedValue is available or not. If enabled, the user is responsible to provide the function `uint32_t CanTp_GetElapsedValue(void)` |To use this feature, simply add ```-D=``` when configuring the build with CMake.
# Notes
Bellow, a few point to consider when using this module:
- This module does not support nested interrupts. In other words, the functions
```CanTp_RxIndication```, ```CanTp_TxConfirmation``` and ```CanTp_MainFunction``` (if scheduled
using timer interrupt) should not be able to interrupt each other.# TODO
- Protect variables used in both synchronous and asynchronous APIs.