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

    文章

    3851

    浏览量

    125643
  • Arduino
    +关注

    关注

    184

    文章

    6428

    浏览量

    184848
  • 游戏控制器
    +关注

    关注

    0

    文章

    15

    浏览量

    2928
收藏 人收藏

    评论

    相关推荐

    Arduino制作雕刻机时用哪个pin来控制激光开关?

    Arduino制作雕刻机是用哪个pin来控制激光的开关? Limit Z_Axis 还是 SPINDLE_ENABLE 好像要交换一下.
    发表于 10-27 07:52

    利用Arduino制作智能空调

    宿舍总是太热,我们决定用Arduino来建造我们自己的空调。每个房间都有自己的温度传感、通风井和风扇控制器Arduino的工作是监控室温并控制
    发表于 09-22 06:32

    ArduinoAndroid窗帘控制

    电子发烧友网站提供《ArduinoAndroid窗帘控制.zip》资料免费下载
    发表于 07-12 10:01 1次下载
    <b class='flag-5'>Arduino</b>和<b class='flag-5'>Android</b>窗帘<b class='flag-5'>控制</b>

    AndroidArduino的电视、DVD和音频控制

    电子发烧友网站提供《AndroidArduino的电视、DVD和音频控制.zip》资料免费下载
    发表于 07-10 11:32 0次下载
    <b class='flag-5'>Android</b>和<b class='flag-5'>Arduino</b>的电视、DVD和音频<b class='flag-5'>控制</b>

    Arduino Android APP来控制8个继电器

    电子发烧友网站提供《Arduino Android APP来控制8个继电器.zip》资料免费下载
    发表于 07-10 10:48 1次下载
    <b class='flag-5'>Arduino</b> <b class='flag-5'>Android</b> APP来<b class='flag-5'>控制</b>8个继电器

    制作Arduino控制的机器人

    电子发烧友网站提供《制作Arduino控制的机器人.zip》资料免费下载
    发表于 07-06 14:21 0次下载
    <b class='flag-5'>制作</b><b class='flag-5'>Arduino</b><b class='flag-5'>控制</b>的机器人

    使用ArduinoAndroid控制RGB LED灯条

    电子发烧友网站提供《使用ArduinoAndroid控制RGB LED灯条.zip》资料免费下载
    发表于 07-05 09:45 2次下载
    使用<b class='flag-5'>Arduino</b>的<b class='flag-5'>Android</b><b class='flag-5'>控制</b>RGB LED灯条

    DIY安卓+Arduino控制迷宫游戏

    电子发烧友网站提供《DIY安卓+Arduino控制迷宫游戏.zip》资料免费下载
    发表于 06-29 14:53 0次下载
    DIY安卓+<b class='flag-5'>Arduino</b><b class='flag-5'>控制</b>迷宫<b class='flag-5'>游戏</b>

    使用ArduinoAndroid设备控制Roomba机器人

    电子发烧友网站提供《使用ArduinoAndroid设备控制Roomba机器人.zip》资料免费下载
    发表于 06-29 09:16 0次下载
    使用<b class='flag-5'>Arduino</b>和<b class='flag-5'>Android</b>设备<b class='flag-5'>控制</b>Roomba机器人

    用于控制Arduino 10开关的PC应用程序

    电子发烧友网站提供《用于控制Arduino 10开关的PC应用程序.zip》资料免费下载
    发表于 06-28 15:30 0次下载
    用于<b class='flag-5'>控制</b><b class='flag-5'>Arduino</b> 10开关的<b class='flag-5'>PC</b>应用程序

    Arduino:连续MIDI控制器/键盘

    电子发烧友网站提供《Arduino:连续MIDI控制器/键盘.zip》资料免费下载
    发表于 06-27 10:31 0次下载
    <b class='flag-5'>Arduino</b>:连续MIDI<b class='flag-5'>控制器</b>/键盘

    如何制作Arduino蓝牙控制的汽车

    电子发烧友网站提供《如何制作Arduino蓝牙控制的汽车.zip》资料免费下载
    发表于 06-26 10:21 0次下载
    如何<b class='flag-5'>制作</b><b class='flag-5'>Arduino</b>蓝牙<b class='flag-5'>控制</b>的汽车

    使用Arduino和其他常见组件制作热风枪控制器

    电子发烧友网站提供《使用Arduino和其他常见组件制作热风枪控制器.zip》资料免费下载
    发表于 06-26 09:19 1次下载
    使用<b class='flag-5'>Arduino</b>和其他常见组件<b class='flag-5'>制作</b>热风枪<b class='flag-5'>控制器</b>

    基于Arduino的2人游戏

    电子发烧友网站提供《基于Arduino的2人游戏.zip》资料免费下载
    发表于 06-19 15:05 0次下载
    基于<b class='flag-5'>Arduino</b>的2人<b class='flag-5'>游戏</b>

    android应用程序在AP模式下与esp8266通信,如何开发arduino代码?

    我正在为 esp8266-07 开发代码。我的代码有 3 个子例程 1- 独立的微控制器:在这个子例程中,我使用 ESP8266-07 作为带有一些按钮和显示的微控制器来与用户通信。 2-物联网
    发表于 05-16 07:45