diff --git a/Lins.c b/Lins.c index 27422f5..7d12b65 100644 --- a/Lins.c +++ b/Lins.c @@ -8,6 +8,29 @@ tLinPorts LIN_PORTS; +const uint8_t classicPID[19] = { + CFR_INI, + CFR_SET, + CFR_MOD, + CFR_ADR, + CFR_PRG, + DFR_PRG, + RFR_ISSR1, + RFR_ISSR2, + RFR_ISSR3, + RFR_ISSR4, + RFR_ISSR5, + RFR_ISSR6, + RFR_ISSR7, + RFR_ISSR8, + RFR_ISSR9, + DFR_STA, + RFR_STA, + DFR_IDE, + RFR_IDE +}; +#define numOfClassicPID 19 + static void Lin0CallbackHandler(uint8_t u8LinIndex, void *state) { LIN_PORTS.lin0.LinExtCallbackHandler(LIN_PORTS.lin0.envCallExtBack, u8LinIndex, state); } @@ -16,8 +39,8 @@ void FCUART4_RxTx_IRQHandler(void) { LIN_DrvIRQHandler(LIN_PORTS.lin0.UART_INDEX); } -tLinData* Lin0_Init(lin_callback_ext_t Lin_ExtCallbackHandler, - void *Lin_envCallExtBack) { +tLinData *Lin0_Init(lin_callback_ext_t Lin_ExtCallbackHandler, + void *Lin_envCallExtBack) { tLinPorts *env = &LIN_PORTS; @@ -67,7 +90,11 @@ tLinData* Lin0_Init(lin_callback_ext_t Lin_ExtCallbackHandler, NULL, Lin0CallbackHandler, Lin_ExtCallbackHandler, - Lin_envCallExtBack + Lin_envCallExtBack, + + classicPID, + numOfClassicPID + ); env->lin0_Io = vLinGetIo(&env->lin0); diff --git a/Lins.h b/Lins.h index 1e52162..f9d32b6 100644 --- a/Lins.h +++ b/Lins.h @@ -7,6 +7,33 @@ #include "LinFlagchip.h" +#define CFR_INI 0x2C +#define CFR_SET 0x2F +#define CFR_MOD 0x2E +#define CFR_ADR 0x17 +#define CFR_PRG 0x28 +#define DFR_PRG 0x18 +#define RFR_ISSR1 0x01 +#define RFR_ISSR2 0x02 +#define RFR_ISSR3 0x03 +#define RFR_ISSR4 0x04 +#define RFR_ISSR5 0x05 +#define RFR_ISSR6 0x06 +#define RFR_ISSR7 0x07 +#define RFR_ISSR8 0x08 +#define RFR_ISSR9 0x09 +#define DFR_STA 0x1B +#define RFR_STA 0x23 +#define DFR_IDE 0x1A +#define RFR_IDE 0x22 + + + + + + + + typedef struct { tLinFlagchip lin0; tLinIO lin0_Io;