怎样将USB游戏控制器添加到Arduino Leonardo / Micro

电子说

1.3w人已加入

描述

步骤1:更新Arduino代码

首先在“%”中制作以下两个文件的备份副本PROGRAMFILES%\ Arduino \ hardware \ arduino \ avr \ cores \ arduino”文件夹:

USBAPI.h

HID.cpp

将这两个文件替换为附加文件,以向Arduino Leonardo和Arduino Micro添加通用游戏控制器。

步骤2:运行测试草图

使用Arduino软件(IDE)编译附加的UsbJoystickTest.ino草图文件并将其上传到Arduino Leonardo或Arduino Micro。我已经使用1.6.1到1.6.5版本的软件对此进行了测试。对于Arduino IDE 1.6.6及更高版本,请参见以下Instructionable:Arduino Leonardo/Micro作为游戏控制器/操纵杆。

以下步骤适用于Windows 7。不同的操作系统,这些步骤可能会有所不同。

步骤3:Windows控制面板-硬件和声音

Arduino

转到Windows控制面板,然后选择“硬件和声音”。

步骤4:设备和打印机

Arduino

然后选择“设备和打印机”

第5步:应该出现Arduino

Arduino

Arduino Micro或Arduino Leonardo应该出现在设备列表中。

第6步:Arduino设置

Arduino

下一步,右键单击Arduino Leonardo或Arduino Micro以显示设置菜单。

然后选择“游戏控制器设置”以进入“游戏控制器”对话框。

步骤7:游戏控制器设置

Arduino

Arduino Micro或Arduino Leonardo应该出现在已安装游戏控制器的列表中。选择Arduino Micro或Arduino Leonardo,然后单击“属性”按钮以显示游戏控制器测试对话框。

步骤8:

Arduino

当此对话框为焦点时,将Arduino上的A0引脚接地以激活测试脚本。测试脚本将按以下顺序测试游戏控制器的功能:

32个按钮

油门和方向舵

X和Y轴

Z轴

2个帽子开关

X和Y轴旋转

第9步:操纵杆库

现在,由于Arduino Leonardo或Arduino Micro具有游戏杆库,因此Arduino可用于自定义游戏控制器项目。下面介绍了更新的USBAPI.h和HID.cpp文件中包含的游戏杆库。

Joystick.begin(bool initAutoSendState)

启动模拟连接到计算机的游戏控制器。默认情况下,所有方法都会立即更新游戏控制器状态。如果initAutoSendState设置为false,则必须调用Joystick.sendState方法来更新游戏控制器状态。

Joystick.end()

游戏控制器仿真到已连接的计算机。

Joystick.setXAxis(byte value)

设置X轴值。范围-127至127(0为中心)。

Joystick.setYAxis(字节值)

设置Y轴值。范围-127到127(0为中心)。

Joystick.setZAxis(byte value)

设置Z轴值。范围-127到127(0为中心)。

Joystick.setXAxisRotation(int value)

设置X轴旋转值。范围从0°到360°。

Joystick.setyAxisRotation(int value)

设置Y轴旋转值。范围从0°到360°。

Joystick.setZAxisRotation(int value)

设置Z轴旋转值。范围从0°到360°。

Joystick.setButton(字节按钮,字节值)

设置指定按钮的状态。该按钮是从0开始的按钮编号(即,按钮#1为0,按钮#2为1,依此类推)。如果按下按钮,则值为1;如果释放按钮,则值为0。

Joystick.pressButton(字节按钮)

按下指示的按钮。该按钮是从0开始的按钮编号(即按钮#1为0,按钮#2为1,依此类推。)。

Joystick.releaseButton(字节按钮)

释放指示的按钮。该按钮是基于0的按钮编号(即按钮#1为0,按钮#2为1,依此类推。)。

Joystick.setThrottle(字节值)

设置油门值。范围为0到255。

Joystick.setRudder(字节值)

设置方向舵值。范围从0到255。

Joystick.setHatSwitch(字节hatSwitch,整数值)

设置指定的帽子开关的值。 hatSwitch是基于0的(即,帽子开关#1为0,帽子开关#2为1)。值是从0°到360°,但以45°为增量。小于45°的任何值都将向下舍入(即,将44°向下舍入为0°,将89°向下舍入为45°,依此类推。)。/strong》

责任编辑:wv

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分