Arduino UNO 控制器 * 1个
USB 数据线 * 1条
Arduino IDE 软件
安装好 Arduino UNO 控制器驱动程序的台式机
Arduino IDE 新建代码的方法,程序的上传方法,大家可以参考:http://jingyan.baidu.com/article/414eccf6a8fb9f6b431f0ab1.html来操作
常用的关系运算符,比较两个整数的大小1、== 等于2、!= 不等于3、> 大于4、< 小于5、>= 大于等于6、<= 小于等于输入代码:int i = 1; // some values to start withint j = 2;void setup() { Serial.begin(9600);}void loop(){ Serial.print('i = '); Serial.print(i); Serial.print(' and j = '); Serial.println(j); if(i < j) Serial.println(' i is less than j'); if(i <= j) Serial.println(' i is less than or equal to j'); if(i != j) Serial.println(' i is not equal to j'); if(i == j) Serial.println(' i is equal to j'); if(i >= j) Serial.println(' i is greater than or equal to j'); if(i > j) Serial.println(' i is greater than j'); Serial.println(); i = i + 1; if(i > j + 1) delay(10000); }
程序效果如下:通过串口打印输出比较的结果注意:这里对于等于的判断是“==”而“=”是赋值语句
比较字符串输入代码://定义字符串char String1[] = 'one';char String2[] = 'two';char String3[] = 'three';char String4[] = 'onetwo';String stringone = String('one');void setup() { Serial.begin(9600);//打开串口,设置波特率为9600 //比较两个字符串,如果相等执行if中语句,如果不想等,执行else中语句 if(strcmp(String1,String2) == 0) Serial.println('strings are same'); else Serial.println('strings are different'); //比较两个字符串的前3个字符,如果相等执行if中语句,如果不想等,执行else中语句 if(strncmp(String1,String4,3) == 0) Serial.println('three word are same'); else Serial.println('three word are different'); //stringone 分别与“one”和“two”比较,比较相等时,执行相应if中的语句 if(stringone == 'one') Serial.println('this is true'); if(stringone == 'two') Serial.println('this is false');}void loop() {}
串口输出效果如下:代码回顾:strcmp():用来比较两个字符串是否相等用法:strcmp(String1,String2) == 0strncmp():用来比较两个字符串的前 n 位是否相等用法:strncmp(String1,String4,3) == 0如果使用 Arduino String 功能,可以直接比较字符串用法:if(stringone == 'one')
逻辑运算Arduino 程序中的逻辑运算主要有:&& 与(and)逻辑运算,特点:两个条件都是真时,输出为真|| 或(or)逻辑运算 特点:两个条件有一个是假时,输出为假! 非(Not)逻辑运算 特点:将条件内容做取反运算输入代码:boolean val = true;boolean val1 = false;void setup(){ Serial.begin(9600); boolean one = val && val1; boolean two = val || val1; boolean three = !val; Serial.println(one); Serial.println(two); Serial.println(three); } void loop() { }
代码输出效果如下图与运算中,一个为假结果就为假;或运算中,一个为真结果就为真;非运算中,即进行取反。
位运算符:& 按位与(and) 特点:都是 1 输出为 1| 按位或(or) 特点:有一个为 1 输出为 1^ 按位异或 特点:相同输出 0,不同输出 1~ 按位取反 特点:1 输出 0,0 输出 1输入代码:
输出结果如下图所示,其中是以二进制数输出位运算结果
其他运算+= 加法-= 减法*= 乘法/= 除法>>= 右移<<= 左移&= 与运算|= 或运算输入代码:int val = 10;void setup() { Serial.begin(9600); val += 5; Serial.println(val); val -= 5; Serial.println(val); val *= 5; Serial.println(val); val /= 5; Serial.println(val); val >>= 1; Serial.println(val,BIN); val <<= 1; Serial.println(val,BIN); val &= 10; Serial.println(val,BIN); val |= 10; Serial.println(val,BIN);}void loop() {}
输出效果如下图,期中移位和按位与或语句打印使用二进制数打印,原因是这样打印的效果会比较清晰
以上是整理了编程中常用的运算,欢迎大家留言
希望经验可以帮到您,也希望您给我点个赞,谢谢~