“Sensor-Joystick/zh”的版本间的差异

来自Microduino Wikipedia
跳转至: 导航搜索
程序下载
 
(未显示5个用户的31个中间版本)
第1行: 第1行:
{{Language|Sensor-Joystick }}
+
{| style="width: 800px;"
 +
|-
 +
|[[File: Microduino-Joystick-v1.jpg|300px|left]] ||
 +
::<p style="color: #000000;font-size:200%"><br><br><br><br><br>'''Sensor-Joystick'''</p>
 +
::产品编号:'''<big style="color: #00A0A6">MSDS71</big>'''
 +
|-
 +
|[[File: Add-to-cart.jpg|300px|left|link=https://shop108263663.taobao.com/?spm=a230r.7195193.1997079397.2.ek3cAW]]||
 +
::<p style="color: #000000;font-size:120%">Sensor-Joystick为模拟传感器,作为五向摇杆按键使用。
 +
</p>
 +
|}
 +
<br>
 +
<br>
 
{| style="width: 800px;"
 
{| style="width: 800px;"
 
|-
 
|-
 
|
 
|
[[File:Microduino-Joystick-v1.jpg|400px|thumb|right| Microduino-Joystick]]
+
<p style="color: #333333;font-size:155%">'''技术规格'''</p>
 +
{| class="wikitable"
 +
|-
 +
| '''电压'''||5V
 +
|-
 +
| '''接口'''||A0~A7
 +
|-
 +
| '''传感器大小'''||23.5mm*13mm
 +
|-
 +
| '''接口'''||1.27mm间距的4Pin座
 +
|-
 +
| '''操作方向'''||上下左右及按下五种
 +
|}
 +
<br>
 +
----
 +
<p style="color: #333333;font-size:155%">'''引脚'''</p>
 +
{| border="0" cellpadding="10" width="90%"
 +
|-
 +
|width="35%" valign="center" align="left"|
 +
*IN'''<big style="color: #00A0A6">(模拟信号)</big>'''
 +
**PIN1:GND
 +
**PIN2:VCC
 +
**PIN3:模拟信号输出
 +
**PIN4:NC(空)
 +
|width="35%" valign="top" align="center"|
 +
[[file: Sensor_backpin.png|130px|center]]
 +
|width="25%" valign="top" align="center"|
 +
|}
 +
<br>
 +
----
 +
<br>
 +
<p style="color: #333333;font-size:135%">'''编程手册'''</p>
 +
您可通过[[AVR核心:Getting_started/zh|Getting Started]]了解使用Arduino IDE编程控制模块。
 +
<p style="color: #333333;font-size:120%">'''普通用法'''</p>
 +
可通过[[analogRead()]]来直接读取模拟开关的信号:理论值(0-1023)。通过模拟值判断上拨,下拨,左拨,右拨和按下。
 +
*将摇杆传感器接在A0引脚,读取摇杆信号值
 +
<source lang="cpp">
 +
#define PIN_KEY A0  //摇杆接在A0引脚
  
Sensor-Joystick的产品编号是:'''MSDS71'''
+
uint16_t Val;
  
Sensor-Joystick是摇杆传感器,可以检测摇杆在平面上的位移
+
void setup() {
 +
  Serial.begin(9600);  //设置串口通讯波特率
 +
  pinMode(PIN_KEY, INPUT);//设置摇杆输入状态
 +
}
  
通过模拟端口传回x,y的模拟值,范围是0~1023之间
+
void loop() {
 +
  Val = analogRead(PIN_KEY);//读取摇杆值
 +
  Serial.print("Val:");
 +
  Serial.println(Val); //串口打印摇杆值
 +
  delay(100);//延时检测速度
 +
}
 +
</source>
 +
*根据摇杆信号值,区分方向
 +
<source lang="cpp">
 +
#define PIN_KEY A0  //摇杆接在A0引脚
  
==传感器引脚说明==
+
uint16_t Val;
{{Sensor_explain
 
|nameA=[[Sensor-Joystick/zh]]
 
|modeA=模拟信号输入
 
|modeB=模拟信号输入
 
}}
 
==特色==
 
*平面X,Y轴两个方向
 
*检测灵敏度高,稳定性好
 
*体积小,易安装
 
  
==规格==
+
void setup() {
*传感器电压
+
  Serial.begin(9600);  //设置串口通讯波特率
**3.3V~5V工作电压
+
  pinMode(PIN_KEY, INPUT);//设置摇杆输入状态
 +
}
  
*传感器大小
+
void loop() {
**板子大小:23.5mm*13mm
+
  Val = analogRead(PIN_KEY);  //读取摇杆值
**1.27mm间距的4Pin接口与sensorhub相连
+
  if (Val < 50) {              //按下
**传感器CAD图纸:'''[[File:Sensor_CAD.zip]]'''
+
    Serial.println("PRESS");
 +
  }
 +
  else if ((700 - 50) < Val && Val < (700 + 50)) { //上
 +
    Serial.println("UP");
 +
  }
 +
  else if ((330 - 50) < Val && Val < (330 + 50)) { //下
 +
    Serial.println("DOWN");
 +
  }
 +
  else if ((512 - 50) < Val && Val < (512 + 50)) { //左
 +
    Serial.println("LEFT");
 +
  }
 +
  else if ((860 - 50) < Val && Val < (860 + 50)) { //右
 +
    Serial.println("RIGHT");
 +
  }
 +
  delay(50);//延时检测速度
 +
}
 +
</source>
 +
<p style="color: #333333;font-size:120%">'''高级用法'''</p>
 +
【_07_m_Sensor_Key】库参考页面提供了有关如何使用开关的完整详细信息和示例。
 +
*<p style="font-size:125%">库语法手册</p>[[Sensor_Key_Reference]]
 +
<br>
 +
----
 +
<br>
 +
<p style="color: #333333;font-size:135%">'''文档'''</p>
 +
*传感器CAD图纸:'''[[File:Sensor_CAD.zip]]'''
 +
<br>
 +
----
 +
<br>
 +
<p style="color: #333333;font-size:135%">'''相关教程'''</p>
 +
*[[开关短按与长按]]
 +
*[[开关状态与动作]]
 +
<br>
 +
----
 +
<br>
 +
<p style="color: #333333;font-size:135%">'''Q&A'''</p>
 +
*能同时检测几个状态吗?
 +
**不能,同一时间只能检测上拨,下拨,左拨,右拨和按下其中一个。
  
*功能描述
 
**控制摇杆X,Y轴两个方向,可以检测到遥杆上拨,下拨,左拨,右拨和按下
 
*接法
 
**本传感器可连接到核心的以下接口:'''A0~A7'''
 
  
==文档==
 
 
*原理图:'''[[File: Sensor_Joystick.Zip.pdf]]'''
 
*主要传感器:'''[[File: Sensor_Joystick_datasheet.pdf]]'''
 
==开发==
 
===程序下载===
 
*下载并解压程序'''[[File:Sensor_Joystick.zip |Microduino_Joystick_Test.zip]]'''
 
 
===程序烧写===
 
{{Upload
 
|nameA=[[Microduino-Core/zh]]、[[Microduino-USBTTL/zh]]
 
|nameB=[[Microduino-USBTTL/zh]]
 
|boardName=Microduino/mCookie-Core(328p)、Atmega328P@16M,5V
 
|fileName=Microduino_Joystick_Test.ino
 
}}
 
 
===硬件搭建===
 
*参考下图将Sensor-Joystick传感器连接'''[[Microduino-Sensorhub/zh]]'''的模拟口A0/A1
 
 
<br>
 
<br>
[[file:Microduino-sensorhub_Joystick.JPG|thumb|400px|left]]
+
<br>
<br style="clear: left"/>
+
----
 
+
<br>
===效果观察===
+
<p style="color: #333333;font-size:135%">'''历史'''</p>
*下载完毕后,打开串口监视器
+
*最新版本更新了[[Sensor_Key_Reference]]库使用说明。
**控制摇杆X,Y轴两个方向,当摇杆处于中间位置按下时,串口会打印按下
+
*[https://wiki.microduino.cn/index.php?title=Sensor-Joystick/zh&oldid=20505 2017/6/1]
**当摇杆向左时,串口打印KEY LEFT(模拟值),长按或短按
+
<br>
**当摇杆向右时,串口打印KEY RIGHT(模拟值),长按或短按
+
<br>
**当摇杆向上时,串口打印KEY UP(模拟值),长按或短按
+
----
**当摇杆向下时,串口打印KEY DOWN(模拟值),长按或短按
+
<br>
 
+
<p style="color: #333333;font-size:135%">'''图库'''</p>
==应用==
 
*摇杆控制器
 
 
 
===项目===
 
 
 
==购买==
 
 
 
==历史==
 
 
 
==图库==
 
 
{| border="0" cellpadding="10" width="100%"
 
{| border="0" cellpadding="10" width="100%"
 
|-
 
|-
 
|width="50%" valign="top" align="left"|
 
|width="50%" valign="top" align="left"|
[[file: Microduino-Joystick-F.JPG|thumb|480px|center|mCookie-Joystick Front]]
+
[[file: Microduino-Joystick-F.JPG|250px|center]]
 
|width="50%" valign="top" align="left"|
 
|width="50%" valign="top" align="left"|
[[file: Microduino-Joystick-b.JPG|thumb|480px|center|mCookie-Joystick Back]]
+
[[file: Microduino-Joystick-b.JPG|250px|center]]
 
|}
 
|}
 
|}
 
|}
 +
<p style="font-size:150%">[[MCookie 传感器系列|返回Sensor界面]]</p>
 +
<br>
 +
<br>

2017年12月19日 (二) 08:13的最新版本

Microduino-Joystick-v1.jpg






Sensor-Joystick

产品编号:MSDS71
Add-to-cart.jpg

Sensor-Joystick为模拟传感器,作为五向摇杆按键使用。



技术规格

电压 5V
接口 A0~A7
传感器大小 23.5mm*13mm
接口 1.27mm间距的4Pin座
操作方向 上下左右及按下五种



引脚

  • IN(模拟信号)
    • PIN1:GND
    • PIN2:VCC
    • PIN3:模拟信号输出
    • PIN4:NC(空)
Sensor backpin.png




编程手册

您可通过Getting Started了解使用Arduino IDE编程控制模块。

普通用法

可通过analogRead()来直接读取模拟开关的信号:理论值(0-1023)。通过模拟值判断上拨,下拨,左拨,右拨和按下。

  • 将摇杆传感器接在A0引脚,读取摇杆信号值
#define PIN_KEY A0   //摇杆接在A0引脚

uint16_t Val;

void setup() {
  Serial.begin(9600);  //设置串口通讯波特率
  pinMode(PIN_KEY, INPUT);//设置摇杆输入状态
}

void loop() {
  Val = analogRead(PIN_KEY);//读取摇杆值
  Serial.print("Val:");
  Serial.println(Val); //串口打印摇杆值
  delay(100);//延时检测速度
}
  • 根据摇杆信号值,区分方向
#define PIN_KEY A0   //摇杆接在A0引脚

uint16_t Val;

void setup() {
  Serial.begin(9600);  //设置串口通讯波特率
  pinMode(PIN_KEY, INPUT);//设置摇杆输入状态
}

void loop() {
  Val = analogRead(PIN_KEY);   //读取摇杆值
  if (Val < 50) {              //按下
    Serial.println("PRESS");
  }
  else if ((700 - 50) < Val && Val < (700 + 50)) { //上
    Serial.println("UP");
  }
  else if ((330 - 50) < Val && Val < (330 + 50)) { //下
    Serial.println("DOWN");
  }
  else if ((512 - 50) < Val && Val < (512 + 50)) { //左
    Serial.println("LEFT");
  }
  else if ((860 - 50) < Val && Val < (860 + 50)) { //右
    Serial.println("RIGHT");
  }
  delay(50);//延时检测速度
}

高级用法

【_07_m_Sensor_Key】库参考页面提供了有关如何使用开关的完整详细信息和示例。




文档




相关教程




Q&A

  • 能同时检测几个状态吗?
    • 不能,同一时间只能检测上拨,下拨,左拨,右拨和按下其中一个。






历史





图库

Microduino-Joystick-F.JPG
Microduino-Joystick-b.JPG

返回Sensor界面