首页 文章

如何每隔6小时进行一次中断[关闭]

提问于
浏览
-5

对于我的数据 Logger 项目,我必须每隔6小时存储一次温度值 . 我发现自动收报机的最长时间是30分钟 . 我们有什么方法可以在6小时或10小时的长时间内进行中断?

谢谢 .

1 回答

  • 2

    所以你可以每30分钟做一次中断 . 如果只有一种方法可以忽略连续的每11个中断并且只处理第12个中断..

    volatile int interruptCounter = 0;
    void interruptFunction (void)
    {
        interruptCounter++;
        if(interruptCounter == 12)
        {
            interruptcounter = 0;
            /*
              Do your stuff here
            */
        }
    }
    

    为什么12?因为你可以处理每0.5h发生的中断 . 因此,为了处理它,每6h最大计数器值将是6 / 0.5 = 12,10小时它将是10 / 0.5 = 20,依此类推 .

相关问题