<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Arduino中国 &#187; joystick</title>
	<atom:link href="http://blog.flamingoeda.com/tag/joystick/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.flamingoeda.com</link>
	<description>Flamingo EDA</description>
	<lastBuildDate>Mon, 02 Aug 2010 05:45:22 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0</generator>
		<item>
		<title>电子积木 控制杆 JoyStick</title>
		<link>http://blog.flamingoeda.com/2009/11/15/%e7%94%b5%e5%ad%90%e7%a7%af%e6%9c%a8-%e6%8e%a7%e5%88%b6%e6%9d%86-joystick/</link>
		<comments>http://blog.flamingoeda.com/2009/11/15/%e7%94%b5%e5%ad%90%e7%a7%af%e6%9c%a8-%e6%8e%a7%e5%88%b6%e6%9d%86-joystick/#comments</comments>
		<pubDate>Sun, 15 Nov 2009 08:46:37 +0000</pubDate>
		<dc:creator>flamingoeda</dc:creator>
				<category><![CDATA[电子积木]]></category>
		<category><![CDATA[joystick]]></category>

		<guid isPermaLink="false">http://blog.flamingoeda.com/?p=522</guid>
		<description><![CDATA[但凡玩过点游戏的对这个控制杆肯定不陌生，它可以用来对控制物体在二维平面内（X和Y方向）的运动，不知道加上Arduino后又能够变换出什么样的不同创意来。 从原理上来讲，这个控制杆可以看成由两个电位器和一个按钮组成： 其中两个电位器的输入值分别用来表示用户在X和Y轴上的偏移量，其类型为模拟量；而按钮则用来表示用户是否在Z轴上按下，其类型为数字量。因此该控制杆一共有三个输入接口，分别用来连接X、Y和Z： 具体使用的时候，可以和Arduino传感器扩展板结合起来，用相应的连接线与Arduino上对应的引脚连接起来。在下面的例子中，X和Y轴分别连接在模拟输入端口A0和A1上，而Z轴则连接在数字I/O的7号引脚上： 相应的代码如下所示： int sensorPin = 5; int value = 0; void setup() { pinMode(7, OUTPUT); Serial.begin(9600); } void loop() { value = analogRead(0); Serial.print("X:"); Serial.print(value, DEC); value = analogRead(1); Serial.print(" &#124; Y:"); Serial.print(value, DEC); value = digitalRead(7); Serial.print(" &#124; Z: "); Serial.println(value, DEC); delay(100); } 好了，刚始玩吧;-)]]></description>
			<content:encoded><![CDATA[<p>但凡玩过点游戏的对这个控制杆肯定不陌生，它可以用来对控制物体在二维平面内（X和Y方向）的运动，不知道加上Arduino后又能够变换出什么样的不同创意来。</p>
<p><img alt="" src="http://image.flamingoeda.com/albums/userpics/joystick.jpg" title="JoyStick" class="aligncenter" width="460" height="345" /></p>
<p>从原理上来讲，这个控制杆可以看成由两个电位器和一个按钮组成：</p>
<p><img alt="" src="http://image.flamingoeda.com/albums/userpics/joystick_1.jpg" title="JoyStick" class="aligncenter" width="460" height="345" /></p>
<p>其中两个电位器的输入值分别用来表示用户在X和Y轴上的偏移量，其类型为模拟量；而按钮则用来表示用户是否在Z轴上按下，其类型为数字量。因此该控制杆一共有三个输入接口，分别用来连接X、Y和Z：</p>
<p><img alt="" src="http://image.flamingoeda.com/albums/userpics/joystick_3.jpg" title="JoyStick" class="aligncenter" width="460" height="345" /></p>
<p>具体使用的时候，可以和Arduino传感器扩展板结合起来，用相应的连接线与Arduino上对应的引脚连接起来。在下面的例子中，X和Y轴分别连接在模拟输入端口A0和A1上，而Z轴则连接在数字I/O的7号引脚上：</p>
<p><img alt="" src="http://image.flamingoeda.com/albums/userpics/joystick_4.jpg" title="JoyStick" class="aligncenter" width="460" height="345" /></p>
<p>相应的代码如下所示：</p>
<pre>
<span style="color: #996600;">int</span> sensorPin = 5;
<span style="color: #996600;">int</span> value = 0;

<span style="color: #CC6600;">void</span> <span style="color: #993300;"><b>setup</b></span>() {
  <span style="color: #996600;">pinMode</span>(7, <span style="color: #CC0000;">OUTPUT</span>);
  <span style="color: #996600;">Serial</span>.<span style="color: #996600;">begin</span>(9600);
}

<span style="color: #CC6600;">void</span> <span style="color: #993300;"><b>loop</b></span>() {
  value = <span style="color: #996600;">analogRead</span>(0);
  <span style="color: #996600;">Serial</span>.<span style="color: #996600;">print</span>(<span style="color: #CC0000;">"X:"</span>);
  <span style="color: #996600;">Serial</span>.<span style="color: #996600;">print</span>(value, <span style="color: #CC0000;">DEC</span>);

  value = <span style="color: #996600;">analogRead</span>(1);
  <span style="color: #996600;">Serial</span>.<span style="color: #996600;">print</span>(<span style="color: #CC0000;">" | Y:"</span>);
  <span style="color: #996600;">Serial</span>.<span style="color: #996600;">print</span>(value, <span style="color: #CC0000;">DEC</span>);

  value = <span style="color: #996600;">digitalRead</span>(7);
  <span style="color: #996600;">Serial</span>.<span style="color: #996600;">print</span>(<span style="color: #CC0000;">" | Z: "</span>);
  <span style="color: #996600;">Serial</span>.<span style="color: #996600;">println</span>(value, <span style="color: #CC0000;">DEC</span>);

  <span style="color: #996600;">delay</span>(100);
}
</pre>
<p>好了，刚始玩吧;-)</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.flamingoeda.com/2009/11/15/%e7%94%b5%e5%ad%90%e7%a7%af%e6%9c%a8-%e6%8e%a7%e5%88%b6%e6%9d%86-joystick/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
	</channel>
</rss>
