|
PS2摇杆一般可以用来控制小车等等,其构造主要就是两个10K的电位器,还有一个按键开关。五个端口分别为VCC,X,Button,Y,GND。
先来看看实物图
老的液晶屏用来做其他东东了,所以换了一个,不同型号的1602液晶调节对比度的电阻阻值是不同的,所以这次我就换用了一个电位器,调节起来方便一些。
先上硬件连接图
把下面的代码下载到arduino控制器中- #include <LiquidCrystal.h> //调用arduino自带的LiquidCrystal库
- LiquidCrystal lcd(12, 11, 10, 9, 8, 7);//设置接口
- int xpotPin = 0; //设置模拟口0为X的信号输入端口
- int ypotPin = 1; //设置模拟口1为Y的信号输入端口
- int bpotPin = 2; //设置模拟口2为Button的信号输入端口
- int xval=0; //设置变量
- int yval=0;
- int bval=0;
- void setup()
- {
- lcd.begin(16, 2); //初始化LCD
- delay(1000); //延时1000ms
- }
- void loop ()
- {
- xval = analogRead(xpotPin); //xval变量为从0信号口读取到的数值
- yval = analogRead(ypotPin); //yval变量为从1信号口读取到的数值
- bval = analogRead(bpotPin); //bval变量为从2信号口读取到的数值
- lcd.clear(); //清屏
- lcd.setCursor(0, 0) ; //设置光标位置为第一行第一个位置
- lcd.print("X="); //使屏幕显示文字X=
- lcd.print(xval);
- lcd.setCursor(7, 0) ; //设置光标位置为第一行第八个位置
- lcd.print("Y="); //使屏幕显示文字Y=
- lcd.print(yval);
- if (bval<500)
- {
- lcd.setCursor(0, 1) ; //设置光标位置为第二行第一个位置
- lcd.print("Button ON"); //使屏幕显示文字Button ON
- }
- else
- {
- lcd.setCursor(0, 1) ;
- lcd.print("Button OFF"); //使屏幕显示文字Button OFF
- }
- delay(100); //延时0.1秒,这里也就是刷新速度。
- }
复制代码 实验效果如下,推动摇杆时,电位器阻值发生变化,相应的电压也会发生变化,液晶屏上的数字就是每一个轴的电压数字输出。按下按键后,液晶上显示的按键状态会发生变化。
|
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有帐号?注册
x
|