http://developer.mbed.org/users/miguelcordero191/code/SerialDriver/#ee58295c58e1