623浏览
查看: 623|回复: 0

[讨论] Arduino常见函数讲解

[复制链接]

这篇文章我们来讲一下Arduino里面的编程语言,也就是一些常见函数的应用。

Arduino 是由 C/C++ 混合编写而成。Arduino 语言也继承了 C/C++ 语言的语法。通常所说的 Arduino 语言,是指 Arduino 核心库文件提供的各种应用程序编程接口(Application Programming Interface,简称API)的集合。Arduino程序基本结构由setup() 和loop() 两个函数组成,那我们就先来看看这两个函数是如何使用的。

Set up函数

Arduino控制器通电或复位后,即会开始执行setup() 函数中的程序,我们一般会把要执行的程序写在中括号里,该部分的程序只会执行一次。通常我们会在setup() 函数中完成Arduino的初始化设置,如配置I/O口状态,初始化串口等操作。

Loop函数

在Setup() 函数中的程序执行完后,Arduino会接着执行Loop() 函数中的程序。而Loop()函数是一个死循环,其中的程序会不断的重复运行。通常我们会在loop() 函数中完成程序的主要功能,如驱动各种模块,采集数据等。我们拿一个最简单的灯泡闪烁这个为例,讲一下LOOP这个函数,中括号里面写的内容我们可以解读为:首先LED小灯泡亮,之后延迟一秒,接着LED小灯泡灭,之后又延迟了一秒,最后反复循环这一段程序,从而实现了小灯泡闪烁的效果。
640_副本.jpg

时间函数

描述:将程序暂停给定参数的时间量(以毫秒为单位)
函数原型:delay(ms)
参数:ms - 暂停的毫秒数
返回值:无

If函数

If else 语句是一种选择结构,可以让代码选择执行。所谓选择执行,就是“某些代码可能执行,也可能不执行,有选择地执行某些代码”。If 语句后面可以跟随一个可选的 else if ... else 语句,其对于测试各种条件非常实用。

当使用 if ... else if ... else 语句时,我们需要记住三个要点:
1)一个 if 可以有0或一个else语句,它必须在所有else if之后。
2)if 可以有0到多个else if语句,它们必须在else之前。
3)一旦 else if 成功,将不会测试剩余的else if或else语句。
640-1_副本.jpg

我们来举个例子:
640-2_副本.jpg

常量用法

HIGH | LOW 表示数字IO口的高低电平。HIGH 表示高电(1),LOW 表示低电平(0)。

INPUT | OUTPUT 表示数字IO口的方向,INPUT 表示输入(高阻态),OUTPUT 表示输出(AVR单片机能提供5V电压 40mA电流)。Arduino中输出的低电平为0V,输出的高电平为当前Arduino的工作电压。例如Arduino UNO的工作电压为5V,其高电平输出也是5V;Arduino UNO工作电压为3.3V,所以高电平输出也就是3.3V。

没有接触过C语言的同学,可能一上来接受这么多知识会觉得有些困难,其实C语言学起来并不是很难,比较友好。我们可以先从一些简单的语句写起来,用一些简单的函数做一些实验,等真正掌握了各个常见函数的应用场景之后,就可以实现复杂的效果了。还要跟大家强调一点,无论是Arduino电路连接还是C语言学习,都需要不断尝试 ,不断试错,只有这样才能真正学会函数的用法。

文章作者:程雅秋
英国皇家艺术学院产品设计硕士
擅长产品服务系统设计、用户体验设计和硬件Arduino交互

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

为本项目制作心愿单
购买心愿单
心愿单 编辑
[[wsData.name]]

硬件清单

  • [[d.name]]
btnicon
我也要做!
点击进入购买页面
上海智位机器人股份有限公司 沪ICP备09038501号-4

© 2013-2022 Comsenz Inc. Powered by Discuz! X3.4 Licensed

mail