智能LED灯 第3节 手机控制端开发

第3节 手机控制端开发

Arduino开发板已经可以接收命令了。接下来就要开始考虑手机端如何控制LED灯。

我们在之前一篇文档中开发过蓝牙聊天应用,那里面详细介绍了蓝牙设备互相连接的原理和实现方法。在这一节中,我们只需要将那个应用稍微做些改造,就能实现对LED灯的控制功能了。

如果你对安卓开发实在没有兴趣,只想赶快能用手机控制器控制它。那么你可以在这里下载到APK安装包。安装完成后,直接启动程序就可以了。

3.1 界面设计

首先,我们用Android Studio重新创建一个安卓应用的工程,把蓝牙聊天应用原封不动的照搬过去。删除界面相关的代码,我们将在这个基础上对代码进行修改。你只需要按照下面的步骤做就行了。

给主界面activity_chat.xml添加一个SeekBar,让用户通过拖动SeekBar的方式来改变LED灯带亮度。

3.2 逻辑设计

因为调整了布局文件,相应的代码逻辑也要做出改变。

  1. onCreate()回调中,获取SeekBar

  2. 给这个SeekBar设置它被拖动到最大时所对应的数字-255,对应着LED灯的0~255级

  3. SeekBar添加监听器,当用户开始拖动、正在拖动、结束拖动进度条的时候,都会通知给监听器。开发者就可以根据当前进度条所在的位置,来判断要发送什么值给LED灯。

    我们仅当用户结束拖动的时候,才把要设置的亮度发送给LED灯。而且发送之前要确定当前手机与LED灯之间处于连接状态,

  4. 当蓝牙设备没有连接的时候,让SeekBar不能够被拖动,把它setEnabled(false)掉,

至此,一个能控制LED灯的手机控制器就改造完成了。


***************************************


本系列课程使用到的Arduino开发板、扩展板以及其他相关的传感器,各位可以根据我们文章中介绍的硬件在淘宝网选购。
您也可以在我们的网店安豆的杂货铺中购买,这些相关硬件都由我们为您把关购买,为大家节省选择的精力与时间。同时也感谢大家对我们这些码农的支持。

最后再次感谢各位读者对安豆的支持,谢谢:)