From fb3c14776f6eaaae69b6691ec912ecdcbce0cba7 Mon Sep 17 00:00:00 2001 From: Christopher Peplin Date: Sat, 28 Dec 2013 15:42:29 -0500 Subject: [PATCH] Draft work using more generic bitfield functions. --- deps/canutil | 2 +- src/isotp/receive.c | 4 +++- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/deps/canutil b/deps/canutil index 04a4db7..0b00bb6 160000 --- a/deps/canutil +++ b/deps/canutil @@ -1 +1 @@ -Subproject commit 04a4db7d336ae2cae94ac3234086b22fbf1339f0 +Subproject commit 0b00bb6c3c5df70317775efd12b6fff418ff4540 diff --git a/src/isotp/receive.c b/src/isotp/receive.c index b497809..51562fc 100644 --- a/src/isotp/receive.c +++ b/src/isotp/receive.c @@ -17,10 +17,12 @@ void isotp_receive_can_frame(IsoTpHandler* handler, // TODO use CanMessage struct from canutil library - allocate payload buffer // on stack, 8 bytes - // TODO this function should receive uint64_t... IsoTpProtocolControlInformation pci = (IsoTpProtocolControlInformation) getBitField(data, 0, 4, false); + IsoTpProtocolControlInformation pci = (IsoTpProtocolControlInformation) + getNibble(0, data, 64, LITTE_ENDIAN); + // TODO this is messed up! need a better API for grabbing bytes uint8_t payload_length = getBitField(data, 4, 4, false); uint8_t payload[payload_length]; -- 2.16.6