32768和500的最大公约数是4,所以将定时器设为计数4次中断一次,同时在中断里把一个计数用的全局变量加1.当这个变量增加到125,将其清零同时执行你想以2ms周期执行的任务。中断服务如下int cnt=0;void interrupt_hadler(void){ cnt++; if(cnt>125){ cnt=0; do_your_task(); }}
换别的合适晶振!