int16_t ev3_ultrasonic_sensor_get_distance()

in ev3-api/src/ev3api_sensor.c [284:301]


int16_t ev3_ultrasonic_sensor_get_distance(sensor_port_t port) {
	ER ercd;

//	lazy_initialize();
	CHECK_PORT(port);
	CHECK_COND(ev3_sensor_get_type(port) == ULTRASONIC_SENSOR, E_OBJ);

#if 0
    return ev3_uart_sensor_get_short(port) / 10;
#endif
	int16_t val;
	uart_sensor_fetch_data(port, US_DIST_CM, &val, sizeof(val));
    return val / 10;

error_exit:
    syslog(LOG_WARNING, "%s(): ercd %d", __FUNCTION__, ercd);
    return 0;
}