В настоящее время мы не планируем проводить сертификацию своего оборудования во всевозможных компетентных организациях. Но мы проводим собственную сертификацию, результаты которой и приводятся на этой странице.
Тестирование производилось при помощи следующей программы:
#!/usr/bin/perl -w use Win32::SerialPort; $PowerAnts = new Win32::SerialPort('COM2','','') || die "Can't open COM2"; $PowerAnts->baudrate(9600) || die "Can't set 9600"; $PowerAnts->parity('none') || die "Can't set parity none"; $PowerAnts->databits(8) || die "Can't set 8 data bits"; $PowerAnts->stopbits(1) || die "Can't set one stopbit"; $PowerAnts->handshake('none') || die "Can't HW flow control off"; $PowerAnts->write_settings; sub pwrant_cmd($){ my $cmd = shift; $PowerAnts->write($cmd."\r"); $_ = ''; my $st = time(); do { if ( time() > $st + 2 ){ $PowerAnts->write( chr( 27 )); $errors++; return "Device NO ANSWER to ".$cmd.", clear buffer"; }; $f = $PowerAnts->read(1); $_ .= $f; #print $f; } while (! /\r/); return $_; }; sub testStep($){ my $cmd = shift; $errors = 0; my $start_time = time(); for( $i = 0; $i < 3600 ; $i++ ){ $_ = pwrant_cmd($cmd); $errors++ if(/-/); }; my $stop_time = time(); print $cmd." time=".($stop_time - $start_time)."sec; errors=".$errors."\n"; }; $PowerAnts->write( chr( 27 )); print "Begin\n"; testStep('?%'); testStep('?='); testStep('??'); testStep('=A'); testStep('=abcdefgh'); testStep('?l'); $PowerAnts->close() || die "Что-то не так при закрытии файла устройства\n";; undef $PowerAnts;
Тесты пройдены без ошибок. Полученная скорость работы устройства практически не отличается от скорости полученной при тестировании в Windows 98/Borland C v6. Это хороший пример задуматься, что быстрее скомпилировання программа или интерпретатор?
PowerAnt - тип SwSw - COM2, 9600 8N1
Команда | Передано + принято байт за цикл | Число циклов | Передано + принято байт | Время выполнения теста (сек) | Скорость (байт/сек) | Практически (циклов/сек) | Теоретически (циклов/сек) | Циклы % |
---|---|---|---|---|---|---|---|---|
?%<CR> +%<CR> | 6 | 3600 | 21600 | 35 | 617,1 | 102 | 160 | 64,2% |
?=<CR> +=ABCDEFGHIJKLMN<CR> | 20 | 3600 | 72000 | 113 | 637,2 | 31 | 48 | 66,3% |
??<CR> +? PowerAnt v2_11adc SWSE <CR> | 30 | 3600 | 108000 | 171 | 631,6 | 21 | 32 | 65,7% |
=A<CR> +=<CR> | 6 | 3600 | 21600 | 34 | 635,3 | 105 | 160 | 66,1% |
=abcdefgh<CR> +=<CR> | 13 | 3600 | 46800 | 66 | 709,1 | 54,5 | 73,85 | 73,8% |
=abcdefgh<CR> +=<CR> | 10 | 3600 | 36000 | 58 | 620,7 | 62 | 96 | 64,6% |
Тесты пройдены без ошибок.
PowerAnt - тип SwSw - COM2, 9600 8N1
Команда | Передано + принято байт за цикл | Число циклов | Передано + принято байт | Время выполнения теста (сек) | Скорость (байт/сек) | Практически (циклов/сек) | Теоретически (циклов/сек) | Циклы % |
---|---|---|---|---|---|---|---|---|
?%<CR> +%<CR> | 6 | 3600 | 21600 | 61 | 354,1 | 59 | 160 | 36,9% |
?=<CR> +=ABCDEFGHIJKLMN<CR> | 20 | 3600 | 72000 | 169 | 426,0 | 21 | 48 | 44,4% |
??<CR> +? PowerAnt v2_11adc SWSE <CR> | 30 | 3600 | 108000 | 225 | 480 | 16 | 32 | 50% |
=A<CR> +=<CR> | 6 | 3600 | 21600 | 60 | 360 | 60 | 160 | 37,5% |
=abcdefgh<CR> +=<CR> | 13 | 3600 | 46800 | 88 | 531,8 | 41 | 73,85 | 55,4% |
=abcdefgh<CR> +=<CR> | 10 | 3600 | 36000 | 99 | 363,6 | 36 | 96 | 37,9% |
Тесты пройдены без ошибок.
В ходе тестирования четко видно, что если полностью отключить буфер FIFO RS-232 порта, то скорость выполнения команд в некоторых случаях существенно возрастает. Причем разница в скорости может быть практически двукратной (как, например, в случае с командой ?%).