added libopencm3 functions