0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

如何制作Android Arduino PC游戏控制器

454398 来源:wv 2019-10-29 10:38 次阅读

步骤1:材料

硬件

Arduino Leonardo

》 HC-05蓝牙模块

》某些跳线

软件:

Android Studio

》 Arduino IDE(集成开发环境)

步骤2:原理图和组装

如何制作Android Arduino PC游戏控制器

》将HC-05蓝牙模块+ 5v连接到Arduino Leonardo + 5v

》将HC-05蓝牙模块GND连接到Arduino Leonardo GND

》将HC-05蓝牙模块TX连接到Arduino Leonardo RX

》将HC-05蓝牙模块RX连接到Arduino Leonardo TX

HC-05 ---- --------------------------------------- Arduino Leonardo

+ 5v --------------------------------- ----- ------------ + 5v

GND ----------------- ------------------------------- GND

TX- ---------------------------------------------- RX

RX -------------------------------------- ----------- TX

第3步:将代码上传到Arduino

现在从https下载Arduino IDE ://www.arduino.cc/en/Main/捐赠并安装它,然后从给定链接下载我的Arduino键盘仿真代码,然后将其上传到您的Arduino Leonardo。

步骤4:Android代码说明

》首先,您将在Android Studio中通过File创建一个新项目,并为其指定项目名称BluetoothDeviceList和创建ListView和Button。当您的Android连接到蓝牙并按下按钮时,ListView显示设备列表数据

Button btnPaired;

ListView devicelist;

//Bluetooth

private BluetoothAdapter myBluetooth = null;

private Set pairedDevices;

public static String EXTRA_ADDRESS = “device_address”; @Override

protected void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.activity_bluetooth_list);

Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);

setSupportActionBar(toolbar); btnPaired = (Button)findViewById(R.id.button);

devicelist = (ListView)findViewById(R.id.listView);

myBluetooth = BluetoothAdapter.getDefaultAdapter(); if(myBluetooth == null)

{

//Show a mensag. that the device has no bluetooth adapter

Toast.makeText(getApplicationContext(), “Bluetooth Device Not Available”, Toast.LENGTH_LONG).show(); //finish apk

finish();

}

else if(!myBluetooth.isEnabled())

{

//Ask to the user turn the bluetooth on

Intent turnBTon = new Intent(BluetoothAdapter.ACTION_REQUEST_ENABLE);

startActivityForResult(turnBTon,1);

} btnPaired.setOnClickListener(new View.OnClickListener() {

@Override

public void onClick(View v)

{

pairedDevicesList();

}

});

》》创建一个函数并命名 pairedDevicesList()。此函数负责获取蓝牙配对设备名称和设备地址,我们获取ArrayList并将SetArrayAdapter包含所有配对设备列表数据,并在显示设备按钮onclickListener()中调用 pairedDevicesList()函数;配对的设备仅在我们按下“显示设备”按钮时才起作用

private void pairedDevicesList()

{

pairedDevices = myBluetooth.getBondedDevices();

ArrayList list = new ArrayList(); if (pairedDevices.size()》0)

{

for(BluetoothDevice bt : pairedDevices)

{

list.add(bt.getName() + “ ” + bt.getAddress()); //Get the device‘s name and the address

}

}

else

{

Toast.makeText(getApplicationContext(), “No Paired Bluetooth Devices Found.”, Toast.LENGTH_LONG).show();

} final ArrayAdapter adapter = new ArrayAdapter(this,android.R.layout.simple_list_item_1, list);

devicelist.setAdapter(adapter);

devicelist.setOnItemClickListener(myListClickListener); }

》》现在将onItemClickListener添加到配对设备列表。当我们按下任何设备(如ListView列表中的HC-05模块),然后给定的功能可以从按下的项目/列表中的设备中获取MAC地址时,这很有用

private AdapterView.OnItemClickListener myListClickListener = new AdapterView.OnItemClickListener()

{

public void onItemClick (AdapterView

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

    关注

    12

    文章

    3927

    浏览量

    127171
  • Arduino
    +关注

    关注

    187

    文章

    6464

    浏览量

    186699
  • 游戏控制器
    +关注

    关注

    0

    文章

    15

    浏览量

    3007
收藏 人收藏

    评论

    相关推荐

    stm32与Arduino的比较

    在微控制器的世界里,STM32和Arduino是两个经常被提及的名字。STM32是一系列由STMicroelectronics生产的高性能微控制器,而Arduino则是一个开源电子原型
    的头像 发表于 11-19 15:45 306次阅读

    ARK3399 USB2.0 PC摄像头控制器规格书

    电子发烧友网站提供《ARK3399 USB2.0 PC摄像头控制器规格书.pdf》资料免费下载
    发表于 09-30 14:43 0次下载

    游戏、AR和VR控制器中的位置检测

    电子发烧友网站提供《游戏、AR和VR控制器中的位置检测.pdf》资料免费下载
    发表于 09-05 11:05 0次下载
    <b class='flag-5'>游戏</b>、AR和VR<b class='flag-5'>控制器</b>中的位置检测

    PCI1510 GGU/GVF/PGE/RGVF/RZVF/ZGU/ZVF PC控制器数据表

    电子发烧友网站提供《PCI1510 GGU/GVF/PGE/RGVF/RZVF/ZGU/ZVF PC控制器数据表.pdf》资料免费下载
    发表于 07-10 09:18 0次下载
    PCI1510 GGU/GVF/PGE/RGVF/RZVF/ZGU/ZVF <b class='flag-5'>PC</b>卡<b class='flag-5'>控制器</b>数据表

    机器视觉控制器哪种好

    的机器视觉控制器对于提高生产效率、降低成本和保证产品质量具有重要意义。 机器视觉控制器的分类 根据硬件架构和功能特点,机器视觉控制器可以分为以下几类: 1.1 基于PC的机器视觉
    的头像 发表于 07-04 10:35 489次阅读

    PCI1420 PC控制器数据表

    电子发烧友网站提供《PCI1420 PC控制器数据表.pdf》资料免费下载
    发表于 06-28 11:44 0次下载
    PCI1420 <b class='flag-5'>PC</b>卡<b class='flag-5'>控制器</b>数据表

    PCI1520-EP PC控制器数据手册数据表

    电子发烧友网站提供《PCI1520-EP PC控制器数据手册数据表.pdf》资料免费下载
    发表于 06-28 10:18 0次下载
    PCI1520-EP <b class='flag-5'>PC</b>卡<b class='flag-5'>控制器</b>数据手册数据表

    工业控制器制作与数学的关系

    数学在工业控制器设计中的应用 工业控制器的设计涉及到多个方面,包括硬件设计、软件设计、系统架构设计等。在这些设计过程中,数学发挥着关键作用。 1.1 硬件设计中的数学应用 工业控制器的硬件设计主要
    的头像 发表于 06-16 14:34 494次阅读

    移动机械控制器 车载智能控制器 CAN总线控制器

    控制器机械
    长沙硕博电子科技股份有限公司
    发布于 :2024年06月13日 17:02:51

    RAM 映射 32×4 LCD 控制器PC164S32数据手册

    电子发烧友网站提供《RAM 映射 32×4 LCD 控制器PC164S32数据手册.pdf》资料免费下载
    发表于 05-30 17:30 0次下载

    超酷!基于ESP32自制一个蓝牙游戏手柄

    电路识别为游戏控制器。我还用两个 ESP32 测试了该电路,使用 ESP-NOW 关于它们之间的通信,结果也很成功。 如果你想知道还能用这个电路做什么,可以参考下面的几个项目。 你可以在项目中使用这块 PCB,它有多种无线通讯选项,比如从 ESP32 到 ESP32,以及
    发表于 05-06 16:59

    为什么XMC库不使用控制器的端口输出寄存TESTBOARD_150PC_OUT ?

    为什么XMC库不使用控制器的端口输出寄存TESTBOARD_150PC_OUT ? 程序库仅使用端口输出修改寄存 Pn_OMR 来设置或清除数字输出。
    发表于 03-06 06:17

    USB 2.0视频PC摄像头控制器 SN9C2805A数据手册

    电子发烧友网站提供《USB 2.0视频PC摄像头控制器 SN9C2805A数据手册.pdf》资料免费下载
    发表于 01-24 09:48 10次下载

    Arduino制作循迹小车教程

    Arduino制作循迹小车完全教程
    发表于 01-05 11:09 7次下载

    家用游戏机的控制器接口类型

    家用游戏机的控制器接口类型是游戏机和手柄之间进行连接和通信的关键部分。它决定了用户如何与游戏机进行交互,并直接影响到游戏体验的质量和多样性。
    的头像 发表于 01-04 11:23 1356次阅读