如何在arduino中创建一个函数?

How to create a function in arduino?

我无法获得使此代码真正起作用的函数。

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

有人可以帮助我吗?

我不确定这是否是您的全部代码,但如果这是全部代码,那么我知道原因。 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--;                                                              
           }
    }
}