本帖最后由 Ryanhsiung 于 2011-9-9 17:04 编辑
授人以鱼不如授人以渔,其实我也不太会算!
方法1: 实测
例 :void main(void)
{//关掉所有中断,及可以会影响的外设及模块
delay(200); GPIOx_XXXX =1;
delay(200); GPIOx_XXXX =0;
} //用示波器实测I O口的频率
优点:方便快捷
缺点:没有考虑进出棧,delay(1) g与delay(200)/200,可以偏差较在
方法2: 计算
你可以查看汇编代码(LIST文件 MAP文件中自己找)
查看指令表,根据频率及指令来确定时间
优点:这个是最准的
缺点:这个会比较费时,并要具有一定汇编基础
我一般用第一种方法,有些程序对时间要要比较准的话我就会用第二种
|