📄 fr_unified.h
字号:
#define FrPSR2_MTSA_NOT_RCV_BVIO 0x0040
#define FrPSR2_MTSA_NOT_RCV_SYNERR_BVIO 0x0060
#define FrPSR3_WUB 0x2000
#define FrPSR3_WUA 0x0020
#define FrSSCCR_MCY 0x0100
#define FrSSCCR_WMD 0x8000
#define FrTICCR_T1ST 0x0001
#define FrTICCR_T1TR 0x0002
#define FrTICCR_T1SP 0x0004
#define FrTICCR_T1_REP 0x0010
#define FrTICCR_T2ST 0x0100
#define FrTICCR_T2TR 0x0200
#define FrTICCR_T2SP 0x0400
#define FrTICCR_T2_REP 0x1000
#define FrTICCR_T2_CFG 0x2000
#define FrMTSACFR_MTE 0x8000
#define FrMTSBCFR_MTE 0x8000
// Definition for Fr_enable_interrupts() function
// Definition of flags in the GIFER register
#define FR_MODULE_IRQ 0x0080
#define FR_PROTOCOL_IRQ 0x0040
#define FR_CHI_IRQ 0x0020
#define FR_WAKEUP_IRQ 0x0010
#define FR_FIFO_B_IRQ 0x0008
#define FR_FIFO_A_IRQ 0x0004
#define FR_RECEIVE_IRQ 0x0002
#define FR_TRANSMIT_IRQ 0x0001
// Definition of flags in the PIER0/PIFR0 register
#define FR_FATAL_PROTOCOL_ERROR_IRQ 0x8000
#define FR_INTERNAL_PROTOCOL_ERROR_IRQ 0x4000
#define FR_ILLEGAL_PROTOCOL_CONFIGURATION_IRQ 0x2000
#define FR_COLDSTART_ABORT_IRQ 0x1000
#define FR_MISSING_RATE_CORRECTION_IRQ 0x0800
#define FR_MISSING_OFFSET_CORRECTION_IRQ 0x0400
#define FR_CLOCK_CORRECTION_LIMIT_IRQ 0x0200
#define FR_MAX_SYNC_FRAMES_DETECTED_IRQ 0x0100
#define FR_MEDIA_ACCESS_TEST_SYMBOL_RECEIVED_IRQ 0x0080
#define FR_VIOLATION_CHB_IRQ 0x0040
#define FR_VIOLATION_CHA_IRQ 0x0020
#define FR_TRANSMISSION_ACROSS_BOUNDARY_CHB_IRQ 0x0010
#define FR_TRANSMISSION_ACROSS_BOUNDARY_CHA_IRQ 0x0008
#define FR_TIMER_2_EXPIRED_IRQ 0x0004
#define FR_TIMER_1_EXPIRED_IRQ 0x0002
#define FR_CYCLE_START_IRQ 0x0001
// Definition of flags in the PIER1/PIFR0 register
#define FR_ERROR_MODE_CHANGED_IRQ 0x8000
#define FR_ILLEGAL_PROTOCOL_COMMAND_IRQ 0x4000
#define FR_PROTOCOL_ENGINE_COM_FAILURE 0x2000
#define FR_PROTOCOL_STATE_CHANGED_IRQ 0x1000
#define FR_SLOT_STATUS_COUNTER_3_INCREMENTED_IRQ 0x0800
#define FR_SLOT_STATUS_COUNTER_2_INCREMENTED_IRQ 0x0400
#define FR_SLOT_STATUS_COUNTER_1_INCREMENTED_IRQ 0x0200
#define FR_SLOT_STATUS_COUNTER_0_INCREMENTED_IRQ 0x0100
#define FR_EVEN_CYCLE_TABLE_WRITTEN_IRQ 0x0020
#define FR_ODD_CYCLE_TABLE_WRITTEN_IRQ 0x0010
// Definition of slot status register
#define FrSSRn_VFB 0x8000
#define FrSSRn_SYB 0x4000
#define FrSSRn_NFB 0x2000
#define FrSSRn_SUB 0x1000
#define FrSSRn_SEB 0x0800
#define FrSSRn_CEB 0x0400
#define FrSSRn_BVB 0x0200
#define FrSSRn_TCB 0x0100
#define FrSSRn_VFA 0x0080
#define FrSSRn_SYA 0x0040
#define FrSSRn_NFA 0x0020
#define FrSSRn_SUA 0x0010
#define FrSSRn_SEA 0x0008
#define FrSSRn_CEA 0x0004
#define FrSSRn_BVA 0x0002
#define FrSSRn_TCA 0x0001
#define FrRFRFCFR_IBD 0x4000
#define FrRFRFCFR_WMD 0x8000
#define FrRFRFCTR_F0EN 0x0001
#define FrRFRFCTR_F1EN 0x0002
#define FrRFRFCTR_F2EN 0x0004
#define FrRFRFCTR_F3EN 0x0008
#define FrRFRFCTR_F0MD 0x0100
#define FrRFRFCTR_F1MD 0x0200
#define FrRFRFCTR_F2MD 0x0400
#define FrRFRFCTR_F3MD 0x0800
#define FrPOCR_POCCMD_ALLOW_COLDSTART 0x0000
#define FrPOCR_POCCMD_ALL_SLOTS 0x0001
#define FrPOCR_POCCMD_CONFIG 0x0002
#define FrPOCR_POCCMD_FREEZE 0x0003
#define FrPOCR_POCCMD_READY 0x0004
#define FrPOCR_POCCMD_CONFIG_COMPLETE 0x0004
#define FrPOCR_POCCMD_RUN 0x0005
#define FrPOCR_POCCMD_DEFAULT_CONFIG 0x0006
#define FrPOCR_POCCMD_HALT 0x0007
#define FrPOCR_POCCMD_WAKEUP 0x0008
#define FrPOCR_POCCMD_RESET 0x000C
#define FrPSR0_ERRMODE_ACTIVE 0x0000
#define FrPSR0_ERRMODE_PASSIVE 0x4000
#define FrPSR0_ERRMODE_COMM_HALT 0x8000
#define FrPSR0_SLOTMODE_SINGLE 0x0000
#define FrPSR0_SLOTMODE_ALL_PENDING 0x1000
#define FrPSR0_SLOTMODE_ALL 0x2000
#define FrPSR0_PROTSTATE_DEFAULT_CONFIG 0x0000
#define FrPSR0_PROTSTATE_CONFIG 0x0100
#define FrPSR0_PROTSTATE_WAKEUP 0x0200
#define FrPSR0_PROTSTATE_READY 0x0300
#define FrPSR0_PROTSTATE_NORMAL_PASSIVE 0x0400
#define FrPSR0_PROTSTATE_NORMAL_ACTIVE 0x0500
#define FrPSR0_PROTSTATE_HALT 0x0600
#define FrPSR0_PROTSTATE_STARTUP 0x0700
#define FrPSR0_STARTUPSTATE_COLDSTART_COLLISION_RESOLUTION 0x0020
#define FrPSR0_STARTUPSTATE_COLDSTART_LISTEN 0x0030
#define FrPSR0_STARTUPSTATE_INTEGRATION_CONSISTENCY_CHECK 0x0040
#define FrPSR0_STARTUPSTATE_INTEGRATION_LISTEN 0x0050
#define FrPSR0_STARTUPSTATE_INITIALIZE_SCHEDULE 0x0070
#define FrPSR0_STARTUPSTATE_COLDSTART_CONSISTENCY_CHECK 0x00A0
#define FrPSR0_STARTUPSTATE_INTEGRATION_COLDSTART_CHECK 0x00D0
#define FrPSR0_STARTUPSTATE_COLDSTART_GAP 0x00E0
#define FrPSR0_STARTUPSTATE_COLDSTART_JOIN 0x00F0
#define FrPSR0_WAKEUPSTATUS_RECEIVED_HEADER 0x0001
#define FrPSR0_WAKEUPSTATUS_RECEIVED_WUP 0x0002
#define FrPSR0_WAKEUPSTATUS_COLLISION_HEADER 0x0003
#define FrPSR0_WAKEUPSTATUS_COLLISION_WUP 0x0004
#define FrPSR0_WAKEUPSTATUS_COLLISION_UNKNOWN 0x0005
#define FrPSR0_WAKEUPSTATUS_TRANSMITTED 0x0006
#define FrRSBIR_WMD 0x8000
#define FrRSBIR_SEL_RSBIR_A1 0x0000
#define FrRSBIR_SEL_RSBIR_A2 0x1000
#define FrRSBIR_SEL_RSBIR_B1 0x2000
#define FrRSBIR_SEL_RSBIR_B2 0x3000
#define FrMBCCSR_MCM 0x4000
#define FrMBCCSR_MBT 0x2000
#define FrMBCCSR_MTD 0x1000
#define FrMBCCSR_CMT 0x0800
#define FrMBCCSR_EDT 0x0400
#define FrMBCCSR_LCKT 0x0200
#define FrMBCCSR_MBIE 0x0100
#define FrMBCCSR_DUP 0x0010
#define FrMBCCSR_DVAL 0x0008
#define FrMBCCSR_EDS 0x0004
#define FrMBCCSR_LCKS 0x0002
#define FrMBCCSR_MBIF 0x0001
#define FrMBCCFR_MTM 0x8000
#define FrMBCCFR_CHA 0x4000
#define FrMBCCFR_CHB 0x2000
#define FrMBCCFR_CCFE 0x1000
#define FrF_HEADER_PPI 0x4000
#define FrF_HEADER_NUF 0x2000
#define FrF_HEADER_VFB 0x8000
#define FrF_HEADER_VFA 0x0080
/******************************************************************************
* Types
******************************************************************************/
// The values are used to return the CHI related error flags
typedef uint16 Fr_CHI_error_type;
// The values are used to determine which message buffers defined in
// a Fr_buffer_info_type structure will be used for the FlexRay module configuration
typedef uint8 Fr_index_selector_type;
// The values of this enumeration are used to determine if communication stops
// immediately or at the end of current FlexRay cycle
typedef enum
{
FR_HALT_COMMUNICATION = 0,
FR_ABORT_COMMUNICATION
} Fr_stop_communication_type;
// The values of this enumeration are used to provide information whether or not the
// local FlexRay CC is synchronous to the FR global time
typedef enum
{
FR_ASYNC = 0,
FR_SYNC
} Fr_sync_state_type;
// The values are used to hold the protocol state
typedef enum
{
FR_POCSTATE_CONFIG = 0,
FR_POCSTATE_DEFAULT_CONFIG,
FR_POCSTATE_HALT,
FR_POCSTATE_NORMAL_ACTIVE,
FR_POCSTATE_NORMAL_PASSIVE,
FR_POCSTATE_READY,
FR_POCSTATE_STARTUP,
FR_POCSTATE_WAKEUP
} Fr_POC_state_type;
// These values are used to determine if a message buffer has been updated with new data
typedef enum
{
FR_TXMB_UPDATED = 0,
FR_TXMB_NO_ACCESS
} Fr_tx_MB_status_type;
// These values are used to determine if a data has been transmitted
// For single message buffers are used only the FR_TRANSMITTED and FR_NOT_TRANSMITTED values
typedef enum
{
FR_TRANSMITTED = 0,
FR_NOT_TRANSMITTED,
FR_INTERNAL_MESSAGE_TRANSFER_DONE,
FR_TRANSMIT_SIDE_TRANSMITTED
} Fr_tx_status_type;
// These values are used to determine if a data has been received
typedef enum
{
FR_RXMB_RECEIVED = 0,
FR_RXMB_NOT_RECEIVED,
FR_RXMB_NULL_FRAME_RECEIVED,
FR_RXMB_NO_ACCESS
} Fr_rx_MB_status_type;
// These values are used to determine if a message buffer has received a frame
typedef enum
{
FR_RECEIVED = 0,
FR_NOT_RECEIVED,
FR_NULL_FRAME_RECEIVED
} Fr_rx_status_type;
// These values are used to determine if a data has been received into a FIFO storage
typedef enum
{
FR_FIFO_RECEIVED = 0,
FR_FIFO_NOT_RECEIVED
} Fr_FIFO_status_type;
// The values determine the state of the wakeup mechanism
typedef enum
{
FR_WAKEUPSTATE_UNDEFINED = 0,
FR_WAKEUPSTATE_RECEIVED_HEADER,
FR_WAKEUPSTATE_RECEIVED_WUP,
FR_WAKEUPSTATE_COLLISION_HEADER,
FR_WAKEUPSTATE_COLLISION_WUP,
FR_WAKEUPSTATE_COLLISION_UNKNOWN,
FR_WAKEUPSTATE_TRANSMITTED
} Fr_wakeup_state_type;
// The values determine the state of the Media Test Symbol
// (MTS) reception in Symbol Window of a communication cycle
typedef enum
{
FR_MTS_RCV = 0,
FR_MTS_RCV_SYNERR,
FR_MTS_RCV_BVIO,
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -