学习目标:学习使用WS2812编程灯的库,按键启动RGB灯。
实验现象:每次按下按键,先响一声鸣笛,然后底部四个RGB灯每隔0.5秒依次亮红、绿、蓝、白四种颜色,最后熄灭。
1.把原来的Whistle工程另存为
2.重新命名为RGB。
二、编写代码
1.从硬件速查表查到蜂鸣器对应的引脚为9号
2.导入WS2812编程灯的库并初始化,如果还不会添加第三方库,可以查看前面的开发环境搭建中添加第三方库的教程。
3.新建clearRGB函数,关闭RGB灯。
4.新建showRGB函数,显示RGB灯。参数num:选择哪个灯,如果大于等于最大值(4),则全部灯一起亮。R/G/B三个参数表示的是指示灯的颜色RGB值,取值范围都是0~255。
5.在setup()函数里初始化引脚模式,并且关闭RGB灯。
4.在loop()主循环函数检测按键是否按下,如果按下则先响一声鸣笛,然后底部四个RGB灯同时每0.5秒依次亮红、绿、蓝、白色,最后关闭RGB灯。
三、编译上传运行
1.代码编写完成后,按Ctrl+S保存,然后再点击编译按钮,没有出现问题就点击上传(omniduino全向小车要先和电脑通过USB数据线连接)。
2.每次按下按键松开手后,蜂鸣器都会响一声鸣笛‘滴’,并且底部四个RGB灯同时每0.5秒依次亮红、绿、蓝、白色,最后关闭RGB灯。
3.如果编译正常通过,但是上传时出现类似以下错误,原因可能是选错串口或者串口被占用。
解决方法:打开设备管理器看看有没有CH340标记的串口,如果没有请先重启一下omniduino全向小车,再重新插拔USB线或者更换一根USB数据线;如果有串口号则先关闭其他串口助手软件,避免串口占用,然后到arduinoIDE的Tools->Port重新选择串口。
4.如果出现类似以下这种错误,说明是缺少库文件,请把omniduino全向小车提供的库文件复制到arduinoIDE编译的库文件目录下。
具体方法请查看开发环境搭建中的添加第三方库教程。