网站公告列表

  没有公告

加入收藏
设为首页
联系站长
您现在的位置: 61EDA中国电子网 >> 服务导航 >> 帮助中心 >> Altera >> 正文
  Nios II IDE中编程的延时子程序的问题及解决           ★★★ 【字体:
Nios II IDE中编程的延时子程序的问题及解决
作者:Free    文章来源:本站原创    点击数:    更新时间:2008-2-15    

以往在写延时子程序时总是按单片机中的习惯,写两层循环:

void Delay(unsigned int t)
{
  unsigned int i,j;
  for( i = 0; i < 200; i ++ )
  { 
    for( j = 0; j < t; j ++ );
  }
}

这样写程序执行的时候好象根本不执行这段程序,不管延时再久,总是一下就过去,一点不占用时间,两层循环的方法不用在子程序中而直接用在主程序中也不行

后来用while循环的方法写的延时程序段可以放在主程序中,但不可以用在子程序中:

while(ti < t) {t ++;}

这个如果直接作为一个while循环语句出现在主程序里面,则可以起到延时的作用,但是如果把它放到Delay子程序中代替掉两层for循环,则仍然不起作用。

再后来使用单层的for循环,一切问题解决了。既可以单独使用,也可以使用在子程序中。

void Delay(volatile int t)
{
  static volatile int ti;
  for( ti = 0; ti < t; ti ++ );
}

文章录入:admin    责任编辑:admin 
  • 上一篇文章:

  • 下一篇文章: 没有了
  • 发表评论】【加入收藏】【告诉好友】【打印此文】【关闭窗口
    最新热点 最新推荐 相关文章
    Nios II标准(Standard)系统的…
    Nios II中断简述及中断调试技…
    Nios II中DRAM的使用…
    Nios II开发环境中如何添加客…
    NIOS II学习笔记…
    NIOS II开发学习体会和方法…
    Nios II 使用评论…
      网友评论:(只显示最新10条。评论内容只代表网友观点,与本站立场无关!)
    站长: