به نام خدا

<p><strong>آموزش</strong> <a class="wikilink" href="http://arduino.ir/Tutorial">مثال ها</a> | <a class="wikilink" href="http://arduino.ir/Tutorial/Foundations">اطلاعات پایه</a> | <a class="wikilink" href="http://arduino.ir/Hacking">فوت وفن ها</a> | <a class="wikilink" href="http://arduino.ir/Tutorial/Links">پیوندها</a> </p> <p class="vspace"></p> <p><em>Examples > Analog I/O</em> </p> <p class="vspace"></p> <h3>Fading</h3> <p>با استفاده از تابع <a class="wikilink" href="http://arduino.ir/Reference/AnalogWrite"> <span dir="ltr">analogWrite()</a></span> می توانیم کم نور یا پر نور کردن یک LED را نشان دهیم. <span class="wikiword">AnalogWrite</span> جهت روشن و خاموش کردن بسیار سریع یک پین دیجیتال برای ایجاد افکت کم نور کردن از <a class="wikilink" href="http://arduino.ir/Tutorial/PWM"><span dir="ltr">pulse width modulation (PWM)</a></span> استفاده می کند. </p> <p class="vspace"></p> <h3>سخت افزار مورد نیاز</h3> <ul>

	<li>برد آردوینو </li>
	<li>برد بورد </li>
	<li>یک LED </li>
	<li>یک مقاومت 220 اهمی </li>

</ul> <p class="vspace"></p> <h3>مدار</h3> <p>از طریق یک مقاومت 220 اهمی، <strong>آنود</strong>(پایه بلندتر و مثبت)LED تان را به پین دیجیتال خروجی 9 روی آردوینو وصل کنید. <strong>کاتود</strong> (پایه کوتاه تر و منفی) را مستقیم به زمین وصل کنید. </p> <p class="vspace"></p> <p><span style="font-size:83%">برای بزرگ شدن تصویر روی آن کلیک کنید.</span> </p> <div>

	<a class="urllink" href=" rel=nofollow">
	<img width="400px" src=" alt=" title /></a></div>

<p class="vspace"></p> <h3>شماتیک</h3> <p><span style="font-size:83%">برای بزرگ شدن تصویر روی آن کلیک کنید.</span> </p> <div>

	<a class="urllink" href=" rel=nofollow">
	<img width="300px" src=" alt=" title /></a></div>

<p class="vspace"></p> <p><span style="font-size:83%">این تصویر با استفاده از نرم افرار<a class="urllink" href="http://www.fritzing.org" rel="nofollow">Fritzing</a>ایجاد شده است. برای مثال های بیشتر مدار به صفحه <a class="urllink" href="http://fritzing.org/projects/" rel="nofollow">پروژه های Fritzing </a> مراجعه نمایید. </span></p> <p class="vspace"></p> <h3>کد</h3> <p>بعد از معرفی کردن پین 9 به <code>ledPin</code>، کار شما در تابع <span dir="ltr"><code>setup()</code></span> تمام می شود. </p> <p class="vspace"></p> <p>تابع <span dir="ltr"><code>analogWrite()</code></span> که شما در تابع <span dir="ltr">Loop() </span> کدتان استفاده خواهید کرد به دو آرگومان نیاز دارد: یکی برای اینکه به تابع بگویید که روی کدام پین نوشته شود، و دیگری مقدار<a class="wikilink" href="http://arduino.cc/en/Tutorial/PWM">PWM</a> ی که قرار است نوشته شود. </p> <p class="vspace"></p> <p>برای کم نور یا پر نورکردن یک LED ، به تدریج مفدار PWM شما از صفر(تمام بیت ها خاموش) به 255(تمام بیت ها روشن) افزایش می یابد، و بعد یک بار دیگر به مقدار صفر برمی گردد تا چرخه کامل شود. در برنامه ی آردوینو زیر، مقدار PWM با استفاده از متغیری به نام <code>brightness</code> تنظیم می شود. هر بار در <span dir="ltr">Loop()</span>، توسط مقدار متغیر <code>fadeAmount</code> افزایش می یابد. </p> <p class="vspace"></p> <p>اگر <code>brightness</code> در یکی از کران های مقدارش باشد (صفر یا 255) آنگاه <code>fadeAmount</code> به مقدار معکوس آن تغییر می کند. به عبارتی دیگر اگر <code>fadeAmount</code> حاوی مقدار 5 باشد، در این مرحله به 5- تبدیل می شود، اگر 5- باشد به 5 تبدیل می شود. بار بعد در <span dir="ltr">Loop() </span> این تغییر باعث می شود که <code>brightness</code> جهت را نیز تغییر دهد. </p> <p class="vspace"></p> <p><span dir="ltr"><code>analogWrite()</code></span> می تواند به سرعت مقدار PWM را تغییر دهد، بنابراین تأخیر در پایان برنامه سرعت پر نور یا کم نور شدن را کنترل می کند. تغییر مقدار تأخیر را تست کنید و ببینید که چطور برنامه تغییر می کند. </p> <p class="vspace"></p> <div class="code">

	<p class="vspace"></p>
	<p></p>
	<div class="sourceblock " id="sourceblock1">
		<div class="sourceblocktext">
			<div class="arduino" align="left" dir="ltr">
				<span class="coMULTI">/*<br />

 Fade<br />  <br />  This example shows how to fade an LED on pin 9<br />  using the analogWrite() function.<br />  <br />  This example code is in the public domain.<br />  */</span><br />

				<br />
				<span class="kw1">int</span> led <span class="sy0">=</span>
				<span class="nu0">9</span><span class="sy0">;</span>          
				<span class="co1">// the pin that the LED is attached to</span><br />
				<span class="kw1">int</span> brightness <span class="sy0">=</span>
				<span class="nu0">0</span><span class="sy0">;</span>   
				<span class="co1">// how bright the LED is</span><br />
				<span class="kw1">int</span> fadeAmount <span class="sy0">=</span>
				<span class="nu0">5</span><span class="sy0">;</span>   
				<span class="co1">// how many points to fade the LED by</span><br />
				<br />
				<span class="co1">// the setup routine runs once when you press 
				reset:</span><br />
				<span class="kw1">void</span> <span class="kw3">setup</span><span class="br0">()</span> 
				<span class="br0">{</span> <br />

  <span class="co1">// declare pin 9 to be an output:</span><br />   <span class="kw1">pinMode</span><span class="br0">(</span>led<span class="sy0">,</span>

				<span class="kw2">OUTPUT</span><span class="br0">)</span><span class="sy0">;</span><br />
				<span class="br0">}</span> <br />
				<br />
				<span class="co1">// the loop routine runs over and over again forever:</span><br />
				<span class="kw1">void</span> <span class="kw3">loop</span><span class="br0">()</span> 
				<span class="br0">{</span> <br />

  <span class="co1">// set the brightness of pin 9:</span><br />   <span class="kw1">analogWrite</span><span class="br0">(</span>led<span class="sy0">,</span>

				brightness<span class="br0">)</span><span class="sy0">;</span>   
				<br />
				<br />

  <span class="co1">// change the brightness for next time through the loop:</span><br />   brightness <span class="sy0">=</span> brightness <span class="sy0">+</span>

				fadeAmount<span class="sy0">;</span><br />
				<br />

  <span class="co1">// reverse the direction of the fading at the ends of the

				fade: </span><br />

  <span class="kw1">if</span> <span class="br0">(</span>brightness

				<span class="sy0">==</span> <span class="nu0">0</span>
				<span class="sy0">||</span> brightness <span class="sy0">==</span>
				<span class="nu0">255</span><span class="br0">)</span>
				<span class="br0">{</span><br />

    fadeAmount <span class="sy0">=</span> <span class="sy0">-</span>fadeAmount

				<span class="sy0">;</span> <br />

  <span class="br0">}</span>     <br />   <span class="co1">// wait for 30 milliseconds to see the dimming effect   

				</span><br />

  <span class="kw1">delay</span><span class="br0">(</span><span class="nu0">30</span><span class="br0">)</span><span class="sy0">;</span>                           

				<br />
				<span class="br0">}</span></div>
		</div>
		<br>
		<br>
		<div class="sourceblocklink" align="left" dir="ltr">
			<a href="http://arduino.cc/en/Tutorial/Fade?action=sourceblock&num=1" type="text/plain">
			[دریافت کد]</a></div>
	</div>
	<p></p>
	<p class="vspace"></p>

</div> <h3>به لینک های زیر مراجعه کنید:</h3> <ul>

	<li><a class="wikilink" href="http://arduino.ir/Reference/Setup">
	<span dir="ltr">setup()</a></span> </li>
	<li><a class="wikilink" href="http://arduino.ir/Reference/Loop">
	<span dir="ltr">loop()</a></span> </li>
	<li><a class="wikilink" href="http://arduino.ir/Reference/AnalogWrite">
	<span dir="ltr">analogWrite()</a></span> </li>
	<li><a class="wikilink" href="http://arduino.ir/Reference/Int">int</a>
	</li>
	<li><a class="wikilink" href="http://arduino.ir/Reference/For">for</a>
	</li>
	<li><a class="wikilink" href="http://arduino.ir/Tutorial/PWM">PWM</a>
	<p class="vspace"></p>
	</li>
	<li><a class="wikilink" href="http://arduino.ir/Tutorial/BareMinimum">BareMinimum</a>: حداقل 
	کدی که جهت آغاز یک برنامه آردوینو مورد نیاز است. </li>
	<li><a class="wikilink" href="http://arduino.ir/Tutorial/Blink">Blink</a>: یک LED را روشن و خاموش کنید. </li>
	<li>
	<a class="wikilink" href="http://arduino.ir/Tutorial/DigitalReadSerial">DigitalReadSerial</a>: یک 
	سوییچ را خوانده و وضعیت آن را به عنوان خروجی، در محیط Serial Monitor نرم افزار 
	آردوینو چاپ کنید. </li>
	<li>
	<a class="wikilink" href="http://arduino.ir/Tutorial/AnalogReadSerial">AnalogReadSerial</a>: 	مقدار یک پتانسیومتر را خوانده و وضعیت آن را به عنوان خروجی در Serial Monitor 
	نرم افزار چاپ کنید. </li>
	<li><a class="selflink" href="http://arduino.ir/Tutorial/Fade">Fade</a>: 	استفاده از خروجی آنالوگ را برای کم نور کردن یک LED نشان می دهد. </li>
	<li>
	<a class="wikilink" href="http://arduino.ir/Tutorial/ReadAnalogVoltage">ReadAnalogVoltage</a>: مقدار یک ورودی آنالوگ را خوانده و ولتاژ را در Serial Monitor چاپ می کند.
	</li>

</ul>