认识Arduino与C语言的指针和指针数组

读者询问如何在Arduino中建立数个自定义函式,并且透过“函式指针数组”,在不使用if…else或switch…case等条件判断式的情况下,让程序依据变数的值,执行不同的自定义函式。

下文将先介绍Arduino与C程序语言的函式指针语法。

建立函式指针程序

就像变数一样,函式(function)同样被暂存在某个内存内存块,可以透过指针(pointer)取用;指向函式的指针称为“函式指针(function pointer)”

底下的Arduino程序宣告了一个hello()自定义函式,并透过一个叫做‘f’的指针指向并执行它:

若在Arduino执行此程序,将能在序列端口监控视窗看见“hello world.”信息。

阅读全文

Arduino 4×4薄膜键盘按键扫描程序原理

下图左是一款常见的薄膜按键模块(hex keypad),有4×4或3×4(少了最右边一行的A,B,C,D键),它的内部如同下图右边的电路所示,是由16个按键(开关)交织而成。有些按键模块直接使用按键(微触)开关组装,连接电路与程序都和本文相同。

4×4按键模块有8个接脚,分成列、行两组,可以接在Arduino的任意8个接脚,笔者将它接在数位6~13脚:
阅读全文

认识与实验Arduino的睡眠模式

根据Nick Gammon这位澳大利亚老兄,在Power saving techniques for microprocessors(微处理器省电技术)文章,于Arduino UNO Rev 3控制板执行底下的代码:

voidsetup(){}
voidloop(){}

所测量到的消耗电流量:

  • 采用9V电池,接电源插孔供电,约消耗55 mA
  • 用5V电源供电,约消耗46.6 mA

若用最精简的准系统(barebone)形式,例如,在面包板上直接用ATmega828处理器和石英震荡器等少数零件组装的Arduino,仅消耗15.15 mA电流

阅读全文

生物电极:用 Arduino 遥控“捕蝇草”


我们将在这个简单又有趣的项目里创造一棵遥控捕蝇草,并将捕蝇草的叶片接上Arduino控制器,再发送微小的电子信号来触发生物反应。材料费只需要250人民币(不包括重复利用的Arduino),组装所需要的时间还不到90分钟(但必须外加24小时让捕蝇草休息),非常适合当做课堂范例。还可以加装WiFi模组和第二组电路来侦测叶子闭合的状况,这样你就有一颗可连上网络的捕蝇机械植物了!

阅读全文

Arduino实现智能浇花系统


还在担心不在家时没法给花浇水?现在就教你做基于arduino的自动浇花系统。液晶屏上会显示温度以及插座的开关状态,我是用的是潜水泵,因为潜水泵使用比较方便,也为了以后好改,我把模块和板子装进了个纸盒里,防止水花溅到板子上。新人发帖,如果有不足之处,请多多指教。

阅读全文

使用Arduino读取水位传感器数据

首先说明一下,这是一个非常简单的小实验,是我现在所做项目的一个很小的部分,不过还是希望把它分享一下,期待看到的同行或爱好者与我交流或拍砖。

我用的水位传感器是这个。

比较便宜,一块钱一个,但是便宜同时也有不足,因为量程太小,我用直尺量了一下,最深只能测4cm,不过好在它体积比较小而且轻便,自己可以根据需要DIY和定制,使用方式比较灵活。
说一下接线,水位传感器是通用三接口连线,一个连VCC一个连GND,模拟输出端接入Arduino的任何一个模拟输入端口中,我用的是A0端口,如下图:
阅读全文