From be2a7d45989f5f57b326589350a6ce5bbc835b5c Mon Sep 17 00:00:00 2001 From: Dean Camera Date: Tue, 27 Jul 2010 11:26:47 +0000 Subject: Move over message ID specific header data to unions inside the standard TMC header structure, so that all header data is read in one chunk in the incomplete TMC demo. --- .../TestAndMeasurement/TestAndMeasurement.h | 35 ++++++++++++++++++---- 1 file changed, 30 insertions(+), 5 deletions(-) (limited to 'Demos/Device/Incomplete/TestAndMeasurement/TestAndMeasurement.h') diff --git a/Demos/Device/Incomplete/TestAndMeasurement/TestAndMeasurement.h b/Demos/Device/Incomplete/TestAndMeasurement/TestAndMeasurement.h index 2d5f82f46..191eb40a6 100644 --- a/Demos/Device/Incomplete/TestAndMeasurement/TestAndMeasurement.h +++ b/Demos/Device/Incomplete/TestAndMeasurement/TestAndMeasurement.h @@ -102,15 +102,40 @@ uint8_t Reserved2[6]; uint8_t Reserved3[12]; } TMC_Capabilities_t; + + typedef struct + { + unsigned char LastMessageTransaction : 1; + unsigned char Reserved : 7; + + uint8_t Reserved2[3]; + } TMC_DevOUTMessageHeader_t; typedef struct { - uint8_t MessageID; - uint8_t Tag; - uint8_t InverseTag; - uint8_t Reserved; + unsigned char TermCharEnabled : 1; + unsigned char Reserved : 7; + + uint8_t TermChar; + uint8_t Reserved2[2]; + } TMC_DevINMessageHeader_t; + + typedef struct + { + uint8_t MessageID; + uint8_t Tag; + uint8_t InverseTag; + uint8_t Reserved; + uint32_t TransferSize; + + union + { + TMC_DevOUTMessageHeader_t DeviceOUT; + TMC_DevINMessageHeader_t DeviceIN; + uint32_t VendorSpecific; + } MessageIDSpecific; } TMC_MessageHeader_t; - + /* Function Prototypes: */ void SetupHardware(void); void TMC_Task(void); -- cgit v1.2.3