A truck driver has been charged after a hit-and-run on Highway 16 Monday morning.