你先用示波器看看P2口没接上拉电阻(不接舵机)产生的PWM波正确么?可能P2口是集电极开路输出吧,所以要接上拉电阻。
一些单片机的驱动电流小,是毫安级别的,51单片机P0口就是如此。如果没有推挽输出功能将无法带动电机转动。扭矩越大的电机所需电流越大。如果P2口带不动很可能就是电机扭矩太大。所以一般会加上拉电阻以增大驱动电流。如果你不加上拉电阻的话也可以尝试用专门的驱动芯片,像ULN2003,,ULN2008、L298之类,都是电机专用驱动芯片。