Arduino语言是建立在C/C++基础上的,其实也就是基础的C语言,Arduino语言只不过把AVR单片机(微控制器)相关的一些参数设置都函数化,不用我们去了解他的底层,让我们不了解AVR单片机(微控制器)的朋友也能轻松上手。在与ArduinoDIYER接触的这段时间里,发现有些朋友对Arduino语言还是比较难入手,那么这里我就简单的注释一下Arduino语言(本人也是半罐子水,有错的地方还请各位指正)。基础C语言关键字:if...else必须紧接着一个问题表示式(expression),若这个表示式为真,紧连着表示式后的代码就会被执行。若这个表示式为假,。范例:if(val==1){digitalWrite(LED,HIGH);}for用来明定一段区域代码重复指行的次数。范例:for(inti=0;i<10;i++){("ciao");}switchcaseif叙述是程序里的分叉路口,switchcase是更多选项的路口。Swithcase根据变量值让程序有更多的选择,比起一串冗长的if叙述,使用swithcase可使程序代码看起来比较简洁。范例:switch(sensorValue){case23:digitalWrite(13,HIGH);break;case46:digitalWrite(12,HIGH);break;default://以上条件都不符合时,预设执行的动作digitalWrite(12,LOW);digitalWrite(13,LOW);}while当while之后的条件成立时,执行括号内的程序代码。范例://当sensor值小于512,闪烁LED灯sensorValue=analogRead(1);while(sensorValue<512){digitalWrite(13,HIGH);delay(100);digitalWrite(13,HIGH);delay(100);sensorValue=analogRead(1);}do...while和while相似,不同的是while前的那段程序代码会先被执行一次,不管特定的条件式为真或为假。因此若有一段程序代码至少需要被执行一次,就可以使用do…while架构。范例:do{digitalWrite(13,HIGH);delay(100);digitalWrite(13,HIGH);delay(100);sensorValue=analogRead(1);}while(sensorValue<512);break让程序代码跳离循环,并继续执行这个循环之后的程序代码。此外,在break也用于分隔switchcase不同的叙述。范例://当sensor值小于512,闪烁LED灯do{//按下按钮离开循环if(digitalRead(7)==HIGH)break;digitalWrite(13,HIGH);delay(100);digitalWrite(13,HIGH);delay(100);sensorValue=analogRead(1);}while(sensorValue<512);continue用于循环之内,它可以强制跳离接下来的程序,并直接执行下一个循环。范例:for(light=0;light<255;light++){//忽略数值介于140到200之间if((x>140)&&(x<200))continue;analogWrite(PWMpin,light);delay(10);}return函数的结尾可以透过return回传一个数值。例如,puteTemperature(),你想要回传现在的温度给temperature变量,你可以这样写:puteTemperature();puteTemperature(){inttemperature=0;temperature=(analogRead(0)+45)/100;returntemperature;}goto语法符号:;(分号)Arduino语言每一行程序都是以分号为结尾。这样的语法让你可以自由地安排代码,你可以将两个指令放置在同一行,只要中间用分号隔开。(但这样做可能降低程式的可读性。)范例:delay(100);{}(大括号)大括号用来将程式代码分成一个又一个的区块,如以下范例所示,在loop()函数的前、后,必须用大括号括起来。范例:voidloop(){ ("cial");}程式的注释就是对代码的解释和说明,编写注释有助于程式设计师(或其他人)了解代码的功能。Arduino处理器在对程式码进行编译时会忽略注释的部份。Arduino语言中的编写注释有两种方式//单
arduino語言 来自淘豆网www.taodocs.com转载请标明出处.