首页 > 解决方案 > 如何在arduino中创建一个函数?

问题描述

我无法获得让此代码真正起作用的功能。

lastVal = val;                                                             
val = digitalRead(DT);                                                     
if (val == 1 && lastVal == 0)                                             
{
    if (digitalRead(CLK) == 1)                                            
       {
         pos++;                                                           
       }
    else                                                                   
       {
        pos--;                                                              
       }
}

有人可以帮助我吗?

标签: arduinoarduino-c++

解决方案


我不确定这是否是您的全部代码,但如果这是所有代码,那么我知道原因。Arduino 需要在代码中引用基本的设置和循环函数,只要引用它就可以了——你甚至可以将函数内部留空。您还没有真正很好地提出这个问题,因此很难理解您的意思。

要创建一个函数,您可以使用以下代码:

void function_name_here(_parameters_here_)
{
   //Code Here
}

要引用该函数,您只需使用以下命令声明它:

function_name_here();

从外观上看,您可能希望将代码放入循环函数中,您的代码可能如下所示:

int DT = /* Value here */;
int pos = /* Value here */;

void setup()
{
    pinMode(DT, INPUT);
}

void loop()
{
    lastVal = val;                                                             
    val = digitalRead(DT);                                                     
    if (val == 1 && lastVal == 0)                                             
    {
        if (digitalRead(CLK) == 1)                                            
           {
             pos++;                                                           
           }
        else                                                                   
           {
            pos--;                                                              
           }
    }
}

推荐阅读