图5 DFRobot产品库文件
用DFRobot模块库中提取的“按钮”与“LED灯”模块编写的ArduBlock程序如图6所示。
图6 按钮与灯的ArduBlock产品图样程序
我手头正好有DFRobot公司的Arduino控制器、XBee传感器接口板、按钮和LED硬件模块,也如搭积木般地快速组建出硬件实验系统,如图7所示。大家可以对比一下实验用到的软件和硬件,ArduBlock还是很直观、形象的,让人感觉蛮新鲜的!
图7 按钮与灯的实验全景图
ArduBlock与Arduino联机运行
ArduBlock是依附于Arduino官方软件的第三方图形化编程软件,两者需同时运行,用USB线把Arduino UNO控制器连接在电脑上,然后在Arduino 1.0编程软件Tools菜单里的Board和Serial Port选项正确设置控制器型号和通信串口号,再点击ArduBlock软件界面上方的“下载到Arduino”按钮,你会发现Arduino编程环境的“上传”图标也开始工作了,而且在Arduino编程环境里还居然生成了C代码(见图8),哈哈,现在可以通过图形程序与文本程序的对照,来深入学习ArduBlock编程了。
图8 Arduino对ArduBlock软件的支撑界面
插文:按钮与灯互动实例对应的C代码
void setup() {
pinMode(9,INPUT); pinMode(13,OUTPUT); }
Void loop() {
if (!( digitalRead( 9) )) {digitalWrite( 13 , !(HIGH ));} Else
{digitalWrite( 13 , !(LOW ));} }
电位计与舵机互动实例
刚才介绍的是如何用ArduBlock编程来实现数字量输入与输出之间的交互,下面谈谈如何实现模拟量输入来控制舵机角度,任务是用手指旋转电位计手柄,180°舵机上的乐高人偶也随之旋转,如图9所示。
图9 电位计与舵机实验全景图
采用“DFRobot”产品模块库编程,程序如图10所示。