Standard Types and Constants
Normative
The root types, constants, and identifiers every Chiisai HAL driver uses. Standard types
available via Std_Types.h MUST always be used instead of native C types, and read-only
variables and never-modified pointer parameters MUST be const-qualified. Keywords per
Requirement Keywords.
Standard types
Symbol |
Value / type |
Meaning |
|---|---|---|
|
|
Standard API return type. |
|
|
The two standard |
|
|
Standard on/off state definition. |
Available via Std_Types.h.
Platform types
Available via Platform_Types.h.
Type |
Range / definition |
|---|---|
|
|
|
Unsigned integers |
|
Signed integers |
|
Fastest type at least as wide as the named width. |
|
IEEE 754-2008 binary32 / binary64. |
Architecture description macros — each defined as one of its listed range symbols, all available via
Platform_Types.h:
Macro |
Range symbols |
Meaning |
|---|---|---|
|
|
CPU architecture width. |
|
|
Bit order. |
|
|
Byte order (endianness). |
|
|
Logical values for |
Communication-stack types
Available via ComStack_Types.h. Used by the communication drivers (CAN, LIN, …) to exchange
protocol data units with the upper layer.
Type |
Kind |
Meaning |
|---|---|---|
|
|
Zero-based PDU identifier ( |
|
|
PDU data length in bytes ( |
|
struct |
Fundamental information about a PDU: |
Note
A module may specialise these (for example the CAN driver’s Can_PduInfoType); such
module-specific types are documented in the module’s own reference.
Module identifiers
Each module has a 16-bit id 0x<8-bit component id><8-bit module id> used mainly for error
reporting via LogM_Report. The component id for Chiisai HAL is 0x01.
Module |
ID ( |
|---|---|
CanDrv |
|
LinDrv |
|
SpiDrv |
|
I2cDrv |
|
UartDrv |
|
WdgDrv |
|
MemDrv |
|
McuDrv |
|
PortDrv |
|
Other driver not specified here |
|