5.9 Example using DLL
206
dut_close();
tester_close();
return -1;
}
}
// Activate the DUT. The code will discover the DUT and create connection.
// Actualy the activation is not neccessary because all of functions of the 2nd level of API
// will activate the DUT automatically. We use this code just to check whther everything is OK
// with the DUT.
printf("DUT is activating...");
error = activate_dut();
while(error)
{
errorcode_2_str(error, err_str),
printf("FAILED. %s\n", err_str);
printf("Press, please:\n");
printf(" - q: quit\n");
printf(" - r: try again\n");
printf("Your choice: ");
c = getchar();
switch(c)
{
case 'q':
case 'Q':
tester_reset();
dut_close();
tester_close();
return -1;
default:
printf("DUT is activating...");
error = activate_dut();
}
}
printf("OK\n");
printf("------------------------------------------------------>\n");
error = read_dut_bd_addr(&ulap, &nap);
if(error)
{
errorcode_2_str(error, err_str);
printf("Error reading DUT BD_ADDR. %s\n", err_str);
}
else printf("DUT BD_ADDR: 0x%.2x%.8lx\n", nap, ulap);
// Output Power (TRM/CA/O1/C)
{
// Parameters of the test case
unsigned char freq[3] ={0,39,78};
// RX frequency of a tester (TX for a DUT). 0 - 2402 MHz, 1 - 2403 MHz ... 78 - 2480 MHz
unsigned char hop_mode = 79;
// 1: Hopping OFF, 79: Hopping ON unsigned char pkt_type = 4;
// packet type (according to Baseband Specification). If zero, then
// longest supported packet type. 4 is DH1 packet unsigned short num_pkts = 1;
// number of packets to test
// Result of the test case short power_av;
// the average power in dBm multiplied by 100 (1 unit = 0.01dBm).short power_max;
// the peak power in dBm multiplied by 100 (1 unit = 0.01dBm) short power_min;
// the minimum power in dBm multiplied by 100 (1 unit = 0.01dBm).
printf(" -- Output Power (TRM/CA/O1/C)\n");
printf("channel f(MHz)\tPav\tPmax\tPmin\tErrors\n");