这篇文章来源于DevicePlus.com英语网站的翻译稿。
本文最初发布在deviceplus.jp网站上,而后被翻译成英语。
在这篇文章中,我想尝试一下,看看用“Arduino Pro Micro”功能还能实现哪些 “Device Plus “风格的创造!
项目说明
预计完成时间:60分钟
所需元器件
Arduino主机(Arduino Pro Micro)
面包板
可调电阻(10KΩ)
木料
目录
制作音量调节设备
再制作个外壳
结论
我经常一边用电脑工作一边听音乐,然而总是会在调节音量方面遇到问题。因为笔记本电脑的音量键在键盘上,所以只要按下这个键就可以了。然而台式机并没有这个键,所以就相对麻烦些。
以Windows系统为例,必须点击屏幕右下方的扬声器图标或者使用一些播放软件的音量调节控件才能调节音量。现在,为了解决这个烦恼,我将创建一个可以轻松改变音量的设备!
这次仍然使用Arduino Pro Micro,并且今后我也会继续用它来实现一些项目。
我以前就想过要创建一个音量调节设备,但当我为写这篇文章查找资料时,才发现:在Windows系统中,可以用键盘上的”Win “+”PageUP “键调高音量,用 “Win “+”PageDown “键调低音量!
然而有些问题仍待解决:”Win “键和 “PageUP “键及 “PageDown “键相距甚远,必须使用双手才能同时按下它们。因此,我还是决定尝试制作这个仅用一个旋钮就可以控制音量的设备!
如何用Arduino调节音量
虽然之前已经介绍过了,但我们仍需考虑如何利用Arduino上的键盘命令去调节音量。
在旋转可调电阻的同时,只要获取电阻的状态就可以实现音量的增减。但是这种方法无法知道当前的音量值,所以无法进行更精细的调节。然而,随便用用并不需要考虑这么细的问题,那么让我们尝试一下吧!
在Windows系统上可以通过结合图片中标记的按键来调节音量。这些按键被作为虚拟命令发送到Arduino Pro Micro。
既然能够调节音量,那我们也来设置一下可调电阻。这个电路很简单,用模拟输入(引脚 A0)来检测可调电阻的值,并根据该值的增减尝试向Windows端发送按键命令。
调节音量的程序
#include "Keyboard.h" int _pos = 0; void setup() { Keyboard.begin(); Serial.begin(9600); } void loop() { int ain = analogRead(A0); delay(10); // Volume UP: if((_pos-2) > ain){ Keyboard.press(KEY_LEFT_GUI); Keyboard.write(KEY_PAGE_UP); Keyboard.releaseAll(); delay(500); Serial.println("Volume UP"); } // Volume Down: if((_pos+2) < ain){ Keyboard.press(KEY_LEFT_GUI); Keyboard.write(KEY_PAGE_DOWN); Keyboard.releaseAll(); delay(500); Serial.println("Volume Down"); } _pos = ain; }
在这个程序中,如果当前的电阻值不等于之前状态的电阻值,_pos-2)> ain等条件语句将会被执行。但是曾经出现过即使未旋转电阻,阻值也会在±1~3这个范围轻微波动的情况,因此我们将误差范围设为±2,这样即使电阻值波动也不会发生误动作。
我们尝试转动音量旋钮,Windows系统上的声音也同时产生了变化! 现在,用电脑工作已经变得更加轻松舒适了!
2. 再制作个外壳只是这一点工作貌似缺点什么,那让我们再给它做一个外壳吧。我在当地的商店买了一块价格合适的木料,接着只需要用电钻打孔来安装可调电阻即可。
安装一个ON/OFF开关。
钻一个大小合适的孔,并把Arduino和相关配件放在里面。
可以直接将外壳与Arduino焊接在一起,但由于我还想再使用它,所以没有焊死,还可以插拔。
之后,将Arduino放在孔内就大功告成了。让我们检查一下它是否还能继续工作。
非常完美!现在观感与普通的Arduino相比更加惊艳,不是吗?
结论在今天的文章中,我们基于Arduino Pro Micro开发了一个音量调节设备。配合操作键盘快捷键或鼠标,您还可以通过Arduino Pro Micro创建专门帮助游戏完成某个特定过程或完成一些简单任务的设备。试试吧,看看您能创造出哪些惊喜。