| | |
| | | #define SCPI_ERROR_QUEUE_SIZE 4 |
| | | static scpi_error_t scpi_error_queue_data[SCPI_ERROR_QUEUE_SIZE]; |
| | | |
| | | #define SCPI_ERROR_INFO_HEAP_SIZE 100 |
| | | static char error_info_heap[SCPI_ERROR_INFO_HEAP_SIZE]; |
| | | |
| | | static int init_suite(void) { |
| | | SCPI_Init(&scpi_context, |
| | | scpi_commands, |
| | |
| | | scpi_units_def, |
| | | "MA", "IN", NULL, "VER", |
| | | scpi_input_buffer, SCPI_INPUT_BUFFER_LENGTH, |
| | | scpi_error_queue_data, SCPI_ERROR_QUEUE_SIZE, |
| | | NULL, 0); |
| | | scpi_error_queue_data, SCPI_ERROR_QUEUE_SIZE); |
| | | #if USE_DEVICE_DEPENDENT_ERROR_INFORMATION && !USE_MEMORY_ALLOCATION_FREE |
| | | SCPI_InitHeap(&scpi_context, |
| | | error_info_heap, SCPI_ERROR_INFO_HEAP_SIZE); |
| | | #endif |
| | | |
| | | return 0; |
| | | } |
| | |
| | | TEST_IEEE4882("*ESR?\r\n", "0\r\n"); |
| | | |
| | | TEST_IEEE4882("SYST:ERR:COUNT?\r\n", "1\r\n"); |
| | | #if USE_DEVICE_DEPENDENT_ERROR_INFORMATION |
| | | TEST_IEEE4882("SYST:ERR:NEXT?\r\n", "-113,\"Undefined header;ABCD\"\r\n"); |
| | | #else /* USE_DEVICE_DEPENDENT_ERROR_INFORMATION */ |
| | | TEST_IEEE4882("SYST:ERR:NEXT?\r\n", "-113,\"Undefined header\"\r\n"); |
| | | #endif /* USE_DEVICE_DEPENDENT_ERROR_INFORMATION */ |
| | | TEST_IEEE4882("SYST:ERR:NEXT?\r\n", "0,\"No error\"\r\n"); |
| | | |
| | | TEST_IEEE4882("*STB?\r\n", "0\r\n"); /* Error queue is now empty */ |
| | |
| | | CU_ASSERT_EQUAL(srq_val, 0); /* no control callback */ |
| | | TEST_IEEE4882("*STB?\r\n", "100\r\n"); /* Event status register + Service request */ |
| | | TEST_IEEE4882("*ESR?\r\n", "32\r\n"); /* Command error */ |
| | | #if USE_DEVICE_DEPENDENT_ERROR_INFORMATION |
| | | TEST_IEEE4882("SYST:ERR:NEXT?\r\n", "-113,\"Undefined header;ABCD\"\r\n"); |
| | | #else /* USE_DEVICE_DEPENDENT_ERROR_INFORMATION */ |
| | | TEST_IEEE4882("SYST:ERR:NEXT?\r\n", "-113,\"Undefined header\"\r\n"); |
| | | #endif /* USE_DEVICE_DEPENDENT_ERROR_INFORMATION */ |
| | | scpi_context.interface->control = SCPI_Control; |
| | | |
| | | RST_executed = FALSE; |