LINUX.ORG.RU

История изменений

Исправление Zubok, (текущая версия) :

Вот данные, где я выставлял сон в 100мс, т.е. время измерения от 17 до 27мс.

Я так понимаю, что время ты замеряешь компьютером, поэтому разброс может частично вызван неточностью измерения времени компьютером, а не временем одного измерения. Быть может, что измерения как раз по времени примерно равны. Вообще, если углубиться в доки к этой библиотеке, то там написано, что происходит при измерении:

USS_message_code USS_startUltrasonicMeasurement (...) 	

...

The API will perform the following operations:

   - Verify if USS state is READY
        If USS is not READY state (e.g. OFF or STANDBY) it will set USS to READY state following recommended USS Power Up sequence.
   - Triggers USS Capture
   -  Wait in user selected power mode (USS_capture_power_mode_option) until acquisition sequence is done or any of the following errors occurs:
        Data Error Abort
        ASQ Time Mark 4 time out
   - Verifies that SDHS conversion has not been interrupted

Тут, в общем-то, задержка может быть, если датчик ушел в сон (а он уходит в сон у тебя?). Дальше запускает измерение и ждет (в твоем случае в LPM3), когда преобразование закончится, проверяет ошибки и что сигма-дельта преобразование не было прервано (я так понимаю, что пользователем), и выходит. Тут нельзя, конечно, сказать, детерминировано по времени все преобразование или нет. Датчик может спать, поэтому он пока там проснется... А остальные части не факт, что варьируются по времени. Но документация никак не специфицирует время преобразования, поэтому надо исходить из того, что оно варьируется.

Исходная версия Zubok, :

Вот данные, где я выставлял сон в 100мс, т.е. время измерения от 17 до 27мс.

Я так понимаю, что время ты замеряешь компьютером, поэтому разброс может частично вызван неточностью измерения времени компьютером, а не временем одного измерения. Быть может, что измерения как раз по времени примерно равны. Вообще, если углубиться в доки к этой библиотеке, то там написано, что происходит при измерении:

USS_message_code USS_startUltrasonicMeasurement (...) 	

...

The API will perform the following operations:

   - Verify if USS state is READY
        If USS is not READY state (e.g. OFF or STANDBY) it will set USS to READY state following recommended USS Power Up sequence.
   - Triggers USS Capture
   -  Wait in user selected power mode (USS_capture_power_mode_option) until acquisition sequence is done or any of the following errors occurs:
        Data Error Abort
        ASQ Time Mark 4 time out
   - Verifies that SDHS conversion has not been interrupted

Тут, в общем-то, задержка может быть, если датчик ушел в сон (а он уходит в сон у тебя?). Дальше запускает измерение и ждет (в твоем случае в LPM3), когда преобразование закончится, проверяет ошибки и что сигма-дельта преобразование не было прервано (я так понимаю, что пользователем), и выходит. Тут нельзя, конечно, сказать, детерминировано по времени все преобразование или нет. Датчик может спать, поэтому он пока там проснется... А остальные части не факт, что варьируются по времени. Но документация никак не специфицирует время преобразования.