diff options
author | Dominik Sliwa <dominik.sliwa@toradex.com> | 2016-06-29 15:23:51 +0200 |
---|---|---|
committer | Dominik Sliwa <dominik.sliwa@toradex.com> | 2016-06-29 15:53:30 +0200 |
commit | 0e77dac245f4188ad66b261cda452cb39283d7e4 (patch) | |
tree | cf7916eecc47ef721abfa336a635b28e2dcfe4dd | |
parent | 1abaa36b489794929e6ee8bc06e3fb396ec72d87 (diff) |
k20: Implement testing
-rw-r--r-- | source/main.c | 24 |
1 files changed, 19 insertions, 5 deletions
diff --git a/source/main.c b/source/main.c index 80d5ed5..18b89b1 100644 --- a/source/main.c +++ b/source/main.c @@ -69,6 +69,14 @@ TaskHandle_t can_task_handle; TaskHandle_t usb_task_handle; TaskHandle_t hello_task_handle; +struct test_data { + uint16_t vid; + uint16_t pid; + uint8_t enumerated; + uint8_t can_test_status; + uint8_t ts_test_status; +} test_status; + /*! * @brief Task responsible for printing of "Hello world." message. */ @@ -101,11 +109,13 @@ static usb_status_t USB_HostEvent(usb_device_handle deviceHandle, case kUSB_HostEventEnumerationDone: usb_echo("device enumerated.\r\n"); + test_status.enumerated = 1; USB_HostHelperGetPeripheralInformation(deviceHandle, kUSB_HostGetDevicePID, &infoValue); usb_echo("PID = 0x%x ", infoValue); + test_status.pid = infoValue; USB_HostHelperGetPeripheralInformation(deviceHandle, kUSB_HostGetDeviceVID, &infoValue); usb_echo("VID = 0x%x \r\n", infoValue); - vTaskResume(can_task_handle); + test_status.vid = infoValue; break; case kUSB_HostEventDetach: @@ -359,12 +369,14 @@ static void can_test_task(void *pvParameters) { if (xSemaphoreTake(cb_msg[1].sem, 1000u) == pdFALSE) { PRINTF("FAIL!\r\n"); - FLEXCAN_TransferAbortSend(CAN0, &flexcanHandle[0], &txXfer); - FLEXCAN_TransferAbortReceive(CAN1, &flexcanHandle[1], &rxXfer); + FLEXCAN_TransferAbortSend(CAN0, &flexcanHandle[0], txXfer.mbIdx); + FLEXCAN_TransferAbortReceive(CAN1, &flexcanHandle[1], rxXfer.mbIdx); + test_status.can_test_status = 0x0F; } else { PRINTF("SUCCESS!\r\n"); + test_status.can_test_status = 0x05; } rxXfer.frame = &rxFrame; @@ -388,12 +400,14 @@ static void can_test_task(void *pvParameters) { if (xSemaphoreTake(cb_msg[0].sem, 1000u ) == pdFALSE) { PRINTF("FAIL!\r\n"); - FLEXCAN_TransferAbortSend(CAN1, &flexcanHandle[0], &txXfer); - FLEXCAN_TransferAbortReceive(CAN0, &flexcanHandle[1], &rxXfer); + FLEXCAN_TransferAbortSend(CAN1, &flexcanHandle[0], txXfer.mbIdx); + FLEXCAN_TransferAbortReceive(CAN0, &flexcanHandle[1], rxXfer.mbIdx); + test_status.can_test_status |= 0xF0; } else { PRINTF("SUCCESS!\r\n"); + test_status.can_test_status |= 0x50; } vSemaphoreDelete(cb_msg[0].sem); |