projects
/
pub
/
USBasp.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Update UC3 platform driver support to use the bitmasks defined in the header files...
[pub/USBasp.git]
/
Demos
/
Device
/
Incomplete
/
TestAndMeasurement
/
TestAndMeasurement.c
diff --git
a/Demos/Device/Incomplete/TestAndMeasurement/TestAndMeasurement.c
b/Demos/Device/Incomplete/TestAndMeasurement/TestAndMeasurement.c
index
3c5cf47
..
08c50c7
100644
(file)
--- a/
Demos/Device/Incomplete/TestAndMeasurement/TestAndMeasurement.c
+++ b/
Demos/Device/Incomplete/TestAndMeasurement/TestAndMeasurement.c
@@
-53,19
+53,19
@@
TMC_Capabilities_t Capabilities =
};
\r
\r
/** Current TMC control request that is being processed */
\r
};
\r
\r
/** Current TMC control request that is being processed */
\r
-uint8_t RequestInProgress = 0;
\r
+
static
uint8_t RequestInProgress = 0;
\r
\r
/** Stream callback abort flag for bulk IN data */
\r
\r
/** Stream callback abort flag for bulk IN data */
\r
-bool IsTMCBulkINReset = false;
\r
+
static
bool IsTMCBulkINReset = false;
\r
\r
/** Stream callback abort flag for bulk OUT data */
\r
\r
/** Stream callback abort flag for bulk OUT data */
\r
-bool IsTMCBulkOUTReset = false;
\r
+
static
bool IsTMCBulkOUTReset = false;
\r
\r
/** Last used tag value for data transfers */
\r
\r
/** Last used tag value for data transfers */
\r
-uint8_t CurrentTransferTag = 0;
\r
+
static
uint8_t CurrentTransferTag = 0;
\r
\r
\r
-/** Length of last data transfer, for reporting to the host in case an in-progress tranfer is aborted */
\r
-uint32_t LastTransferLength = 0;
\r
+/** Length of last data transfer, for reporting to the host in case an in-progress tran
s
fer is aborted */
\r
+
static
uint32_t LastTransferLength = 0;
\r
\r
/** Main program entry point. This routine contains the overall program flow, including initial
\r
* setup of all components and the main program loop.
\r
\r
/** Main program entry point. This routine contains the overall program flow, including initial
\r
* setup of all components and the main program loop.
\r
@@
-169,7
+169,7
@@
void EVENT_USB_Device_ControlRequest(void)
Endpoint_ClearSETUP();
\r
\r
/* Write the request response byte */
\r
Endpoint_ClearSETUP();
\r
\r
/* Write the request response byte */
\r
- Endpoint_Write_
Byte
(TMCRequestStatus);
\r
+ Endpoint_Write_
8
(TMCRequestStatus);
\r
\r
Endpoint_ClearIN();
\r
Endpoint_ClearStatusStage();
\r
\r
Endpoint_ClearIN();
\r
Endpoint_ClearStatusStage();
\r
@@
-190,9
+190,9
@@
void EVENT_USB_Device_ControlRequest(void)
Endpoint_ClearSETUP();
\r
\r
/* Write the request response bytes */
\r
Endpoint_ClearSETUP();
\r
\r
/* Write the request response bytes */
\r
- Endpoint_Write_
Byte
(TMCRequestStatus);
\r
- Endpoint_Write_
Word
_LE(0);
\r
- Endpoint_Write_
DWord
_LE(LastTransferLength);
\r
+ Endpoint_Write_
8
(TMCRequestStatus);
\r
+ Endpoint_Write_
16
_LE(0);
\r
+ Endpoint_Write_
32
_LE(LastTransferLength);
\r
\r
Endpoint_ClearIN();
\r
Endpoint_ClearStatusStage();
\r
\r
Endpoint_ClearIN();
\r
Endpoint_ClearStatusStage();
\r
@@
-223,8
+223,8
@@
void EVENT_USB_Device_ControlRequest(void)
Endpoint_ClearSETUP();
\r
\r
/* Write the request response bytes */
\r
Endpoint_ClearSETUP();
\r
\r
/* Write the request response bytes */
\r
- Endpoint_Write_
Byte
(TMCRequestStatus);
\r
- Endpoint_Write_
Byte
(CurrentTransferTag);
\r
+ Endpoint_Write_
8
(TMCRequestStatus);
\r
+ Endpoint_Write_
8
(CurrentTransferTag);
\r
\r
Endpoint_ClearIN();
\r
Endpoint_ClearStatusStage();
\r
\r
Endpoint_ClearIN();
\r
Endpoint_ClearStatusStage();
\r
@@
-245,9
+245,9
@@
void EVENT_USB_Device_ControlRequest(void)
Endpoint_ClearSETUP();
\r
\r
/* Write the request response bytes */
\r
Endpoint_ClearSETUP();
\r
\r
/* Write the request response bytes */
\r
- Endpoint_Write_
Byte
(TMCRequestStatus);
\r
- Endpoint_Write_
Word
_LE(0);
\r
- Endpoint_Write_
DWord
_LE(LastTransferLength);
\r
+ Endpoint_Write_
8
(TMCRequestStatus);
\r
+ Endpoint_Write_
16
_LE(0);
\r
+ Endpoint_Write_
32
_LE(LastTransferLength);
\r
\r
Endpoint_ClearIN();
\r
Endpoint_ClearStatusStage();
\r
\r
Endpoint_ClearIN();
\r
Endpoint_ClearStatusStage();
\r
@@
-260,7
+260,7
@@
void EVENT_USB_Device_ControlRequest(void)
/* Check that no split transaction is already in progress */
\r
if (RequestInProgress != 0)
\r
{
\r
/* Check that no split transaction is already in progress */
\r
if (RequestInProgress != 0)
\r
{
\r
- Endpoint_Write_
Byte(TMC_STATUS_SPLIT_IN_PROGRESS);
\r
+ Endpoint_Write_
8(TMC_STATUS_SPLIT_IN_PROGRESS);
\r
}
\r
else
\r
{
\r
}
\r
else
\r
{
\r
@@
-275,7
+275,7
@@
void EVENT_USB_Device_ControlRequest(void)
Endpoint_ClearSETUP();
\r
\r
/* Write the request response byte */
\r
Endpoint_ClearSETUP();
\r
\r
/* Write the request response byte */
\r
- Endpoint_Write_
Byte
(TMCRequestStatus);
\r
+ Endpoint_Write_
8
(TMCRequestStatus);
\r
\r
Endpoint_ClearIN();
\r
Endpoint_ClearStatusStage();
\r
\r
Endpoint_ClearIN();
\r
Endpoint_ClearStatusStage();
\r
@@
-296,8
+296,8
@@
void EVENT_USB_Device_ControlRequest(void)
Endpoint_ClearSETUP();
\r
\r
/* Write the request response bytes */
\r
Endpoint_ClearSETUP();
\r
\r
/* Write the request response bytes */
\r
- Endpoint_Write_
Byte
(TMCRequestStatus);
\r
- Endpoint_Write_
Byte
(0);
\r
+ Endpoint_Write_
8
(TMCRequestStatus);
\r
+ Endpoint_Write_
8
(0);
\r
\r
Endpoint_ClearIN();
\r
Endpoint_ClearStatusStage();
\r
\r
Endpoint_ClearIN();
\r
Endpoint_ClearStatusStage();
\r
@@
-350,13
+350,15
@@
void TMC_Task(void)
break;
\r
case TMC_MESSAGEID_DEV_DEP_MSG_IN:
\r
Endpoint_ClearOUT();
\r
break;
\r
case TMC_MESSAGEID_DEV_DEP_MSG_IN:
\r
Endpoint_ClearOUT();
\r
+
\r
+ char MessageData[] = "TMC Class Test";
\r
\r
\r
- MessageHeader.TransferSize =
3
;
\r
+ MessageHeader.TransferSize =
strlen(MessageData)
;
\r
MessageHeader.MessageIDSpecific.DeviceOUT.LastMessageTransaction = true;
\r
WriteTMCHeader(&MessageHeader);
\r
\r
BytesTransferred = 0;
\r
MessageHeader.MessageIDSpecific.DeviceOUT.LastMessageTransaction = true;
\r
WriteTMCHeader(&MessageHeader);
\r
\r
BytesTransferred = 0;
\r
- while (Endpoint_Write_Stream_LE(
"TMC"
, MessageHeader.TransferSize, &BytesTransferred) ==
\r
+ while (Endpoint_Write_Stream_LE(
MessageData
, MessageHeader.TransferSize, &BytesTransferred) ==
\r
ENDPOINT_RWSTREAM_IncompleteTransfer)
\r
{
\r
if (IsTMCBulkINReset)
\r
ENDPOINT_RWSTREAM_IncompleteTransfer)
\r
{
\r
if (IsTMCBulkINReset)
\r
@@
-388,6
+390,7
@@
void TMC_Task(void)
bool ReadTMCHeader(TMC_MessageHeader_t* const MessageHeader)
\r
{
\r
uint16_t BytesTransferred;
\r
bool ReadTMCHeader(TMC_MessageHeader_t* const MessageHeader)
\r
{
\r
uint16_t BytesTransferred;
\r
+ uint8_t ErrorCode;
\r
\r
/* Select the Data Out endpoint */
\r
Endpoint_SelectEndpoint(TMC_OUT_EPNUM);
\r
\r
/* Select the Data Out endpoint */
\r
Endpoint_SelectEndpoint(TMC_OUT_EPNUM);
\r
@@
-398,7
+401,7
@@
bool ReadTMCHeader(TMC_MessageHeader_t* const MessageHeader)
\r
/* Read in the header of the command from the host */
\r
BytesTransferred = 0;
\r
\r
/* Read in the header of the command from the host */
\r
BytesTransferred = 0;
\r
- while (
Endpoint_Read_Stream_LE(MessageHeader, sizeof(TMC_MessageHeader_t), &BytesTransferred
) ==
\r
+ while (
(ErrorCode = Endpoint_Read_Stream_LE(MessageHeader, sizeof(TMC_MessageHeader_t), &BytesTransferred)
) ==
\r
ENDPOINT_RWSTREAM_IncompleteTransfer)
\r
{
\r
if (IsTMCBulkOUTReset)
\r
ENDPOINT_RWSTREAM_IncompleteTransfer)
\r
{
\r
if (IsTMCBulkOUTReset)
\r
@@
-409,12
+412,13
@@
bool ReadTMCHeader(TMC_MessageHeader_t* const MessageHeader)
CurrentTransferTag = MessageHeader->Tag;
\r
\r
/* Indicate if the command has been aborted or not */
\r
CurrentTransferTag = MessageHeader->Tag;
\r
\r
/* Indicate if the command has been aborted or not */
\r
- return
!(IsTMCBulkOUTReset
);
\r
+ return
(!(IsTMCBulkOUTReset) && (ErrorCode == ENDPOINT_RWSTREAM_NoError)
);
\r
}
\r
\r
bool WriteTMCHeader(TMC_MessageHeader_t* const MessageHeader)
\r
{
\r
uint16_t BytesTransferred;
\r
}
\r
\r
bool WriteTMCHeader(TMC_MessageHeader_t* const MessageHeader)
\r
{
\r
uint16_t BytesTransferred;
\r
+ uint8_t ErrorCode;
\r
\r
/* Set the message tag of the command header */
\r
MessageHeader->Tag = CurrentTransferTag;
\r
\r
/* Set the message tag of the command header */
\r
MessageHeader->Tag = CurrentTransferTag;
\r
@@
-425,7
+429,7
@@
bool WriteTMCHeader(TMC_MessageHeader_t* const MessageHeader)
\r
/* Send the command header to the host */
\r
BytesTransferred = 0;
\r
\r
/* Send the command header to the host */
\r
BytesTransferred = 0;
\r
- while (
Endpoint_Write_Stream_LE(MessageHeader, sizeof(TMC_MessageHeader_t), &BytesTransferred
) ==
\r
+ while (
(ErrorCode = Endpoint_Write_Stream_LE(MessageHeader, sizeof(TMC_MessageHeader_t), &BytesTransferred)
) ==
\r
ENDPOINT_RWSTREAM_IncompleteTransfer)
\r
{
\r
if (IsTMCBulkINReset)
\r
ENDPOINT_RWSTREAM_IncompleteTransfer)
\r
{
\r
if (IsTMCBulkINReset)
\r
@@
-433,5
+437,5
@@
bool WriteTMCHeader(TMC_MessageHeader_t* const MessageHeader)
}
\r
\r
/* Indicate if the command has been aborted or not */
\r
}
\r
\r
/* Indicate if the command has been aborted or not */
\r
- return
!(IsTMCBulkINReset
);
\r
+ return
(!(IsTMCBulkINReset) && (ErrorCode == ENDPOINT_RWSTREAM_NoError)
);
\r
}
\r
}
\r