If you are expecting the sprite to point at the mouse, this code won't do that..
you are setting the angle of the cannon to the angle between mouse start and mouse end (to put it simply)
this means the cannon doesn't take into account where the mouse is..
if you left click and move right the angle will be 0
if you left click and move left the angle will be 180