Microduino 旋转编码器控制电脑/zh

来自Microduino Wikipedia
Radiumray9@gmail.com讨论 | 贡献2014年10月29日 (三) 06:21的版本 材料清单
跳转至: 导航搜索

概述

  • 项目名称:Microduino 编码器电脑控制
  • 目的:通过32U4结合旋转编码器模拟电脑键盘,按下用来切换选项卡(Ctrl+Tab),旋转移动界面(up、down)。
  • 难度:高级
  • 耗时:3小时
  • 制作者:Microduino Studio-PKJ

材料清单

  • Microduino设备
模块 数量 功能
Microduino-Core/zh 1 核心板
Microduino-USBTTL/zh 1 下载程序
Microduino-CoreUSB/zh 1 模拟键盘和核心控制板
  • 其他设备
旋转编码器控制板 1 控制选择号码及发送短信
USB数据线 1 给核心板供电

文档

下载IDE的Microduino固件包:

http://www.microduino.cc/wiki/index.php?title=%E5%AE%89%E8%A3%85Arduino_IDE_Microduino%E7%A1%AC%E4%BB%B6%E6%94%AF%E6%8C%81%E5%8C%85

示例程序下载: https://github.com/Microduino/Microduino_Tutorials/tree/master/Microduino_Advanced_Tutorial/Microduino_32u4_KEY

调试

  • 准备:
  • 下载Microduino固件包,将解压到IED的hardware文件夹内;
  • 步骤一:

搭建系统,用到的设备如下:

Rotary encoder setup.jpg
  • 步骤二:

下载并打开测试测序,编译通过后下载

Rotary encoder download.jpg
  • 步骤三:

下载后通过编码器进行控制。

程序说明

需要用到Arduino自带的USB库,通过32U4来实现模拟键盘数据输入。

1.“Keyboard.write();”函数只按一次按键,“Keyboard.press()”函数一直按住按键,要配合“Keyboard.releaseAll()”函数一起使用;

2.输入大小写字母数字直接用单引号,例如按下大写字母M:“Keyboard.write(‘M’);”,输入特殊案件则在hardware\arduino\cores\arduino里的“USBAPI.h”文件可以看到特殊按键名称,方法例如按下回车:“Keyboard.write(KEY_RETURN);”

3.编码器按下是通过读取数值口电平高低来判断是否按下,用来模拟“Ctrl+Tab”同时按下;

4.编码器旋转是通过中断来判断旋转方向,用来选择位上的数值;这里我们改了固件,因此玩家需要下载Microduino固件包。

5.doEncoder()用来实现模拟上下按键被按下;

6.主函数里面判断编码器按下来模拟“Ctrl+Tab”同时按下。

结果

旋转编码器可以实现模拟键盘来控制电脑的上下按键。按下编码器可以实现切换选项卡。玩家更换模拟按键值来实现更有趣的实验。

注意问题

  • 该程序只能在32U4下编译,因为32U4才支持USB协议。
  • 需要下载更新Microduino固件包

视频

http://v.youku.com/v_show/id_XNzAwNjQ3MDQw.html