ultrasonic-distance can work now

add util.c
fix bug in gpio.h (GPIO_READ)