打印

430中for语句一个循环的时间是多久

[复制链接]
796|8
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
someontime|  楼主 | 2015-1-31 21:01 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
贴一下代码
#pragma vector=PORT1_VECTOR
__interrupt void Port_1 (void)
{
  for(p=40960;p>0;p--)//红灯常亮
    P2OUT=0x6F;
  P1IFG=0X00;
}
意思就是按一下按键开始倒数10秒,然后一个LED亮10秒 MCLK已选择32.768K  实际烧写到板子上无论怎么更换P的值 都是12秒左右 我考虑可能是机器时间并不是我所想的主时钟时间,求大神解答!

相关帖子

沙发
someontime|  楼主 | 2015-1-31 21:01 | 只看该作者
是主时钟的时间吗?

使用特权

评论回复
板凳
mmbs| | 2015-2-2 23:51 | 只看该作者
时钟配置了吗

使用特权

评论回复
地板
vivilzb1985| | 2015-2-3 23:07 | 只看该作者
还是看下你的主时钟的吧,,好好检查下的。

使用特权

评论回复
5
vivilzb1985| | 2015-2-3 23:08 | 只看该作者
不行的话先把你的MCLK信号的输出用示波器的看下的,看到底是多少的吧。

使用特权

评论回复
6
zhijun1988| | 2015-2-4 08:38 | 只看该作者
哇卡,兄弟,你怎么能在中断函数中延时。。。

使用特权

评论回复
7
风清扬mxz| | 2015-2-5 10:16 | 只看该作者
第一:正如楼上所说,不能在中断函数里面延时
  第二:如果你要在中断函数里面延时,此处是不是应该加分号    for(p=40960;p>0;p--)//红灯常亮

使用特权

评论回复
8
middle1102| | 2015-2-5 15:07 | 只看该作者
兄弟,我估计P的值应该是被编译器优化了。你在定义P变量的前面加上volatile试一下,应该是可以的。

使用特权

评论回复
9
firstblood| | 2015-2-5 22:33 | 只看该作者
这个是需要考虑主频时钟的吧。。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

63

主题

982

帖子

0

粉丝