拜托,160个脉冲是编码器的脉冲,跟PWM的脉冲没啥关系。针对补充问题的补充回答:对PWM脉冲计数可能困难一些。因为计数器对脉冲宽度有一定要求,而PWM的脉冲占空比一般在0-100%之间可调,在占空比很低或者很高的时候计数都不准确。如果能够在PWM的脉宽中断服务程序里加上计数程序就准确了。但是对PWM脉冲计数并不能够告诉我们马达走了多远。因为同样一个PWM脉冲,脉宽比较宽的,马达会走得比较远,脉宽窄的,马达就走不了那么远。就算同样的脉宽,负载不同的时候马达转过的距离也不一样。所以用PWM脉宽的计数来计算马达走了多远是不可能的。三轴移动,不可能没有编码器,编码器的脉冲是把一个圆周分成若干等分,一般是几百到几十万。每转过一个角度,就输出一个脉冲。把编码器输出接到计数器上,输入160个脉冲就停止,这个脉冲才是计量运动位置的脉冲。不过注意,现在编码器一般都是双线四分精度输出,用两根信号线输出达到四倍精度。TI的DSP有一个四倍精度编码器输入接口,Freescale 的应该也有,你查查手册看看有没有相应的功能。