Arduino PS2手柄小车代码
1、首先需要给Arduino的库文件中加入<PS2X_lib.h>这个库
https://github.com/madsci1016/Arduino-PS2X
2、接好小车左右转的电机
3、还需要将PS2手柄接收器和Arduino的板子接好线
4、烧录好下面的程序 开始感受快乐吧~~~

#include <PS2X_lib.h>
PS2X ps2x; // create PS2 Controller Class
int leftmotor1 = 2;
int leftmotor2 =3;
int rightmotor1 = 4 ;
int rightmotor2 = 5 ;
int EN1=6;
int EN2=9;int error = 0;
byte type = 0;
byte vibrate = 0;void setup(){  pinMode (leftmotor1, OUTPUT );pinMode  (leftmotor2, OUTPUT);pinMode (rightmotor1, OUTPUT );pinMode ( rightmotor2, OUTPUT );pinMode (EN1, OUTPUT );pinMode ( EN2, OUTPUT );Serial.begin(57600);
error = ps2x.config_gamepad(13,11,10,12, true, true);   //setup pins and settings:  GamePad(clock, command, attention, data, Pressures?, Rumble?) check for errortype = ps2x.readType();
}void loop()
{ps2x.read_gamepad();          //read controller ps2x.read_gamepad(false, vibrate);          //read controller and set large motor to spin at 'vibrate' speedvibrate = ps2x.Analog(PSAB_BLUE); /*   if(ps2x.Button(PSB_START))                   //will be TRUE as long as button is pressedSerial.println("Start is being held");if(ps2x.Button(PSB_SELECT))Serial.println("Select is being held");if(ps2x.Button(PSB_PAD_UP)) {Serial.print("Up held this hard: ");Serial.println(ps2x.Analog(PSAB_PAD_UP), DEC);}if(ps2x.Button(PSB_PAD_RIGHT)){Serial.print("Right held this hard: ");Serial.println(ps2x.Analog(PSAB_PAD_RIGHT), DEC);}if(ps2x.Button(PSB_PAD_LEFT)){Serial.print("LEFT held this hard: ");Serial.println(ps2x.Analog(PSAB_PAD_LEFT), DEC);}if(ps2x.Button(PSB_PAD_DOWN)){Serial.print("DOWN held this hard: ");Serial.println(ps2x.Analog(PSAB_PAD_DOWN), DEC);}   if (ps2x.NewButtonState())               //改变状态时{if(ps2x.Button(PSB_L3))Serial.println("L3");if(ps2x.Button(PSB_R3))Serial.println("R3");if(ps2x.Button(PSB_L2))Serial.println("L2");if(ps2x.Button(PSB_R2))Serial.println("R2");if(ps2x.Button(PSB_GREEN))Serial.println("三角形");    }   if(ps2x.ButtonPressed(PSB_RED))             //被按Serial.println("圆圈");if(ps2x.ButtonReleased(PSB_PINK))             //被松开Serial.println("正方形");     if(ps2x.NewButtonState(PSB_BLUE))            //被按和被松开Serial.println("X");
*/if((ps2x.Analog(PSS_LY)>100)&&(ps2x.Analog(PSS_LY)<150))   {   digitalWrite ( leftmotor1,LOW );digitalWrite ( leftmotor2,LOW );digitalWrite ( rightmotor1,LOW );digitalWrite ( rightmotor2,LOW );}  if(ps2x.Analog(PSS_LY)<100)    //qianjin{digitalWrite ( leftmotor1,HIGH );digitalWrite ( leftmotor2,LOW );digitalWrite ( rightmotor1,HIGH );digitalWrite ( rightmotor2,LOW );analogWrite ( EN1,100);analogWrite ( EN2,100);}if(ps2x.Analog(PSS_LY)>150)    //左摇杆后推   后退{digitalWrite ( leftmotor1,LOW );digitalWrite ( leftmotor2,HIGH );digitalWrite ( rightmotor1,LOW );digitalWrite ( rightmotor2,HIGH );analogWrite ( EN1,100);analogWrite ( EN2,100);}   if(ps2x.Analog(PSS_RX)<100)      //右摇杆左推   左转{ digitalWrite ( leftmotor1,LOW );digitalWrite ( leftmotor2,HIGH );digitalWrite ( rightmotor1,HIGH );digitalWrite ( rightmotor2,LOW);analogWrite ( EN1,100);analogWrite ( EN2,100);}if(ps2x.Analog(PSS_RX)>150)      //右摇杆右推   右转{digitalWrite ( leftmotor1,HIGH );digitalWrite ( leftmotor2,LOW );digitalWrite ( rightmotor1,LOW);digitalWrite ( rightmotor2,HIGH );analogWrite ( EN1,100);analogWrite ( EN2,100);}Serial.print(ps2x.Analog(PSS_LY), DEC); Serial.print(",");Serial.print(ps2x.Analog(PSS_LX), DEC); Serial.print(",");Serial.print(ps2x.Analog(PSS_RY), DEC); Serial.print(",");Serial.println(ps2x.Analog(PSS_RX), DEC); delay(50);}

Arduino PS2手柄小车代码相关推荐

  1. PS2手柄遥控Arduino小车

    使用手柄遥控小车是经常要用到的,看到PS2手柄很6,就拿来尝试一下. PS2手柄是索尼的PlayStation2游戏机的遥控手柄,因为这款手柄性价比较高,按键丰富,方便扩展到其它应用中,后来有人将其通 ...

  2. 小车主板哪家强?PS2手柄4路电机输出..火魔童主板了解一下?

    微信关注 "DLGG创客DIY" 设为"星标",重磅干货,第一时间送达. 最近收到了芯吧客邮寄的火魔童V1.0主板,今天简单给大家介绍一下 别的废话就不多说了, ...

  3. PS2手柄遥控控制灯开关(arduino)

    PS2手柄遥控控制灯开关(arduino) 使用的材料 arduino板子: ps2遥控手柄; 一个5V供电的LDE: 连线 首先按照遥控手柄底座上的英文,你会发现一共有六根线,分别是GND,VCC, ...

  4. PS2手柄代码移植-合泰平台

    PS2手柄代码移植-合泰平台 1.PS2手柄端口及通讯协议 PS2手柄的通讯协议是SPI协议是一种高速的.全双工.同步的通信总线,并且在芯片的管脚上只占用四根线(DI.DO.CS.CLK),PS2手柄 ...

  5. arduino ps2摇杆程序_PS2手柄在arduino上进行测试,可用,供喜欢diy的朋友借鉴

    #include //PS2手柄 PS2X ps2x; // create PS2 Controller Class //PS2引脚//一共4个信号引脚 #define PS2_DAT 26 // D ...

  6. 新朋实验室之玩具遥控车改装为ARDUINO蓝牙遥控小车(代码及制作过程开源)

    新朋实验室之玩具遥控车改装为ARDUINO蓝牙遥控小车(代码及制作过程开源) 2017年08月21日 12:55:25 XPLab 阅读数:4008 你家里的玩具遥控车坏了?遥控器丢了?先不要急着丢掉 ...

  7. 亚博智能PS2手柄学习笔记

    一.PS2 手柄介绍: PS2 由手柄与接收器两部分组成,手柄主要负责发送按键信息.都接通电源并打开手柄开关时,手柄与接收器自动配对连接(这是由于手柄与接收器之间依靠2.4G进行通信),在未配对成功的 ...

  8. PS2手柄模控制ESP32控制舵机 ArduinoPWM控制

    使用PS2手柄模控制ESP32输出2路PWM信号控制舵机 1.ESP32引脚图 某宝常用EPS32的两种类型,对应下连接对应IO口的线就可以了~ 注意将舵机正负,PS2手柄控制模块正.负分别连接在一起 ...

  9. Arduino智能物流小车项目(MEGA2560)

    因为这是我做的第一个项目,然后平时也不太喜欢拍照.再加上有强迫症,没事喜欢清理文件相册.导致这个项目的材料照片文件十分匮乏(其实几乎都没了).这是用的一些仅存残余文件,来写本人的第一篇博客,算是留作纪 ...

  10. Arduino WIFI智能小车 无线视频遥控小车 课程设计

    目录 一.项目产生的背景分析 2 1.1项目想法 2 1.2用户将如何从产品中获益 2-3 二.方案设计 3 2.1小车整体系统 2-3 2.2小车部件介绍 3-5 三.小车组装 6 3.1小车配件购 ...

最新文章

  1. 它来了!无人车穿梭在深圳的“宇宙最强街道”
  2. 【项目实战】vue+springboot项目使用富文本编辑器实现长文章发表和展示
  3. Firefox终于返回到了Debian stable
  4. SAP WebClient UI view controller所有可用的属性列表
  5. 光盘 机密_使用保险柜管理机密
  6. 跨年照片墙php源码,简单效果照片墙
  7. 为什么需要学习编程?
  8. 关于Maven的7个问题
  9. 第四届“传智杯”全国大学生IT技能大赛(决赛B组)
  10. 小米11青春版 MIUI12安装谷歌条件GMS点击登录没反应的解决办法
  11. macbook air 安装双系统windows10手册及避坑技巧
  12. 计算机磁盘检查,使用磁盘检查工具进行硬盘诊断
  13. 从微信跳转第三方app:在微信打开h5页面后,点击触发跳转自己app指定页面
  14. 手写VIO学习总结(二)
  15. 计算机系统变慢的原因,浅析win7系统变慢的原因以及如何让电脑提速
  16. 华为手机连电脑当摄像头用_今天才知道,华为手机摄像头还能这样用!还不会用你买什么华为?...
  17. 分析一个简单的汇编代码
  18. 仿迅雷播放器遇到的字符串处理函数
  19. Arbitrary Shape Scene Text Detection with Adaptive Text Region Representation ----论文翻译
  20. JAVA梅森旋转随机算法,你没听过的梅森旋转算法

热门文章

  1. Windows操作技巧0001--Windows 10 修改用户名文件夹名称
  2. 安装window10出错:选中的磁盘具有 MBR 分区表。在 EFI 系统上,Windows只能安装到GPT磁盘。
  3. android tf卡 修复工具,闪迪sd卡修复工具(sd卡修复工具安卓版)
  4. 基于模板匹配的螺母检测(计算机视觉实验)
  5. 服务器系统怎么么安装手绘板驱动,wacom数位板如何使用?wacom数位板驱动安装教程!...
  6. java连点方法,Re:连点器(示例代码)
  7. Flash 第九章 运动补间动画
  8. 注册表如何管理右键菜单
  9. ruby基础-安装和命令行
  10. DEV GridView同时多列排序,附上排序列是实体解决右击没有排序箭头的问题