版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、arduno语法手册arduino的程序可以分为三个主要部分:结构、变量(变量和常量)和函数。结构部分一、结构1.1 setup()1.2 loop()二、结构控制2.1 if2.2 if.else2.3 for2.4交换机case2.5 while2.6 do.while2.7中断2.8 continue2.9 return2.10 goto三、扩展语法3.1;(分号)3.2 (大括号)3.3 /(单行注释)3.4 /* */(多行注释)3.5 #define3.6 #include四、算术运算符4.1=(赋值运算符)4.2(加)4.3-(减去)4.4 *(乘)4.5/(除以)4.6%(模式
2、)五、比较运算符5.1=(等于)5.2!=(不等于)5.3(小于)5.4(大于)5.5=(小于或等于)5.6=(大于或等于)六、布尔运算符6.1(和)6.2 |(或)6.3!(郑智薰)七、指针运算符7.1 *取消引用运算符7.2参考运算符8位运算符8.1(位元和)8.2 |(大或)8.3(双xor)8.4 (bitwise not)8.5 (bitshift left)8.6 (bitshift right)9,复合运算符9.1(增量)9.2 - (decrement)9.3=(compound addition)9.4 -=(compound subtraction)9.5 *=(compo
3、und multiplication)9.6 /=(compound division)9.6=(compound bitwise and)9.8 |=(compound bitwise or)变量部分列,常量10.1 high|low(针脚电压定义)10.2 input|output(数字针脚定义)10.3 true | false(逻辑层次定义)10.4 integer constants(整数常数)10.5 floating point constants(浮动常数)11、数据类型11.1 void11.2 boolean(布尔型)11.3 char(有符号数据类型)11.4 unsig
4、ned char(无符号数据类型)11.5 byte(无符号数字)11.6 int(整数)11.7 unsigned int(无符号整数)11.8 word11.9长整数类型11.10 unsigned long(无符号长整数类型)11.11 float(浮点数)11.12双精度浮点11.13字符串(char array/字符串)11.14 string object(string类)11.15 array(阵列)12、数据类型转换12.1 char()12.2 byte()12.3 int()12.4 word()12.5长()12.6 float()13、变量范围修饰符13.1 varia
5、ble scope(变量的范围)13.2 static(静态变量)13.3 volatile13.4 const14、辅助工具14.1 sizeof()函数部分15,数字i/o15.1针脚模式()15.2 digitalwrite()15.3 digitalread()16,模拟i/o16.1 analogreference()16.2 analogread()16.3 analogwrite() pwm17,高级i/o17.1吨()17.2 notone()17.3 shiftout()17.4 shiftin()17.5 pulsein()18,时间18.1 millis()18.2微秒(
6、)18.3 delay()18.4 delaymicroseconds()19、数学运算19.1分钟()19.2 max()19.3 abs()19.4 constrain()19.5 map()19.6 pow()19.7 sqrt()19.8 ceil()19.9 exp()19.10 fab()19.11 floor()19.12 fma()19.13 fmax()19.14 fmin()19.15 fmod()19.16 ldexp()19.17日志()19.18 log10()19.19 round()19.20信号()19.21 sq()19.22 square()19.23 tr
7、unc()20,三角函数20.1 sin()20.2 cos()20.3 tan()20.4 acos()20.5 asin()20.6 atan()20.7 atan2()20.8 cosh()20.9 degrees()20.10 hypot()20.11 radians()20.12 sinh()20.13 tanh()21、随机数21.1 randomseed()21.2随机()22,位操作22.1 lowbyte()22.2 highbyte()22.3dread()22.4 bitwrite()22.5 bitset()22.6 bitclear()22.7 bit()23、设置中
8、断函数23.1 attachinterrupt()23.2 detachinterrupt()24、交换机中断24.1 interrupts()(挂起)24.2 nointerrupts()(禁止中断)25、通讯25.1串行25.1.1 if(串行)25.1.2 serial.available()25.1.3 serial.begin()25.1.4 serial.end()25.1.5 serial.find()25.1.6 serial.finduntil()25.1.7 serial.flush()25.1.8 serial.parsefloat()25.1.9 serial.pars
9、eint()25.1.10 serial.peek()25.1.11 serial.print()25.1.12 serial.println()25.1.13 serial.read()25.1.14 serial.readbytes()25.1.15 serial.readbytesuntil()25.1.16 serial.settimeout()25.1.17 serial.write()25.1.18串行。serialevent()25.2流26、usb(仅限leonardo和due)26.1鼠标(键盘)26.2键盘(鼠标)结构部分一、结构1.1 setup()在arduino中运行
10、时,程序首先调用setup()函数。用于初始化变量、pin输出设置输入类型、配置串行端口、导入类库文件等。每次在arduno中打开或重新启动电源时,setup函数只运行一次。是int button pin=3;void设置()serial . begin(9600);接脚模式(button pin,input);void loop()/.1.2 loop()在setup()函数中初始化和定义变量,然后执行loop()函数。顾名思义,该函数在程序运行过程中不断循环,根据一些反馈相应地更改运行。使用此函数动态控制arduno仪表板。是int button pin=3;/setup初始化串行端口和密
11、钥针。void设置()begin serial(9600);接脚模式(button pin,input);/loop每次检查按钮,如果按钮被按下,则将信息发送到串行端口void loop()if(digital read(button pin)=high)串行写入(h);elseserial write(l);delay(1000);二、结构控制2.1 if条件判断语句(if)和=,=,(比较运算符)if语句与比较运算符一起使用,用于检测输入值是否高于特定值等条件是否满足。if语句的语法如下:if (somevariable 50)/执行部分语句此程序测试somevariable变量的值是否大
12、于50。如果大于50,则发出几条语句。也就是说,只要if后面括号内的结果(称为测试表达式)为true,执行花括号内的语句(称为执行语句块)。如果是假的,则跳过大括号内的语句。可以省略if语句后面的花括号。如果省略大括号,则只有一个以分号结尾的语句成为执行语句。if (x 120)数字写(led pin,high);if (x 120)digitalwrite(ledpin,high);if(x 120)数字写(led pin,high);if (x 120)digitalwrite(ledpin1,high);digitalwrite(ledpin2,high);/以上所有写入方法都是正确的用
13、括号计算的表达式需要以下运算符:比较运算符:x=y(x等于y)x!=y(x不等于y)x y(x小于y)x y(x大于y)x=y(x小于y)x=y(x大于y)警告:确定是否使用赋值运算符。例如if (x=10)。=表示赋值运算符,它将x值设置为10(将值10放在x变量的内存中)。两个“=”表示比较运算符,例如if (x=10),用于测试x和10是否相等。后面的语句只有在x等于10时才为真,而前面赋值的语句始终为真。这是因为c语言根据以下规则运算if (x=10):10会将值指定给x。如果指定了非零数字的值,则赋值表达式的值始终为true。因此,x现在为值10。if的测试表达式值为10,非零值始终
14、为真,因此该值始终为真。因此,if (x=10)总是真的,这不是运行if时期望的结果。此外,不是预期的结果,x分配了10。if的另一个分支条件控制结构是if.else格式。2.2 if.elseif/else是比if更高级别的流程控制语句,可以执行多个条件测试。例如,如果输入的值小于500,则执行某些操作,如果大于或等于500,则执行其他操作。代码如下:if (pinfiveinput 500)/执行a操作else/b执行操作else可以执行其他if检查,因此可能同时检测多个互斥条件。测试将逐个进行,直到测试为true,此时将运行与该测试相关的执行语句块,然后程序将跳过其馀测试,直接执行到if/else中的以下语句:如果所有测试都是假的,并且存在else语句块,则执行基本else语句块。else if语句块可以没有else语句块。else if季度语句数不受限制。if (pinfiveinput 500)/执行a操作else if (pinfiveinput=1000)/b执行操作else/c执行操作执行各种条件分支判断的另一个语句是switch case语句。2.3 forfor语句说明for语句用于重复大括号内的代码片段。通常,使用增量计数器计数并结束循环。for语句对
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 某矿业企业安全管理制度
- 译林版(三起)四年级上册英语 分课时语法+句型专项练习(含解析答案)
- 某玻璃厂包装规范细则
- 数字化职业规划解决方案
- 人工智能培训证书指南
- 2026年城市道路照明改造施工合同
- 2026城市销售面试题目及答案
- 2026道路执法面试题目及答案
- 2026东软面试题目及答案大全
- 2026高速路政面试题及答案
- 湖南农发环保科技有限责任公司招聘笔试题库2026
- 机械制造技术基础-西安交大课件
- 华为经营管理-华为激励机制(6版)
- GB/T 29038-2024薄壁不锈钢管道技术规范
- 肠癌的治疗与护理
- DZ∕T 0346-2020 矿产地质勘查规范 油页岩、石煤、泥炭(正式版)
- 《陆上风电场工程设计概算编制规定及费用标准》(NB-T 31011-2019)
- (高清版)DZT 0426-2023 固体矿产地质调查规范(1:50000)
- 全国矿产资源潜力评价总体实施方案
- 消防联动报警调试报告
- (完整版)牧场物语精灵驿站详细攻略
评论
0/150
提交评论