آموزش
مثال ها |
اطلاعات پایه |
فوت و فن |
پیوندها
نمونه ها
جهت آگاهی از شرح کامل مفاهیم اصلی نرم افزار و سخت افزار آردوینو،
صفحه اطلاعات
پایه را مطالعه نمایید. همچنین جهت کسب اطلاعات راجع به توسعه و دستکاری
سخت افزار و نرم افزار آردوینو،
صفحه فوت و فن ها
را مشاهده کنید. و در نهایت، جهت مشاهده سایر مستندات به
صفحه پیوندها
مراجعه نمایید.
توجه: مثال ها، جهت نسخه 1.0 نرم افزار آردوینو به بعد نوشته شده اند.
برخی توابع ممکن است در نسخه های قدیمی تر آردوینو کار نکنند. جهت حصول بهترین
نتیجه، آخرین نسخه
را دانلود نمایید.
در اینجا یک
راهنمای سبک
وجود دارد که با نوشتن مثال هایی، به مبتدیان کمک می کند.
توابع اصلی
برنامه های ساده ای که فرمانهای پایه ای آردوینو را نشان می دهد. این مثالها
در محیط آردوینو قرار گرفته اند. جهت باز کردن آنها، در نوار ابزار روی دکمه
Open کلیک کرده و نگاهی اجمالی به پوشه examples بیندازید.
1- مثال های ساده
-
BareMinimum:
حداقل کدی که جهت آغاز یک برنامه آردوینو مورد نیاز است.
- Blink:
یک LED را روشن و خاموش کنید.
-
DigitalReadSerial: یک سوییچ را خوانده و وضعیت آن را به عنوان خروجی،
در محیط Serial Monitor نرم افزار آردوینو چاپ کنید.
-
AnalogReadSerial: مقدار یک پتانسیومتر را خوانده و وضعیت آن را به
عنوان خروجی در Serial Monitor نرم افزار چاپ کنید.
- Fade:استفاده
از خروجی آنالوگ را برای کم نور کردن یک LED نشان می دهد.
-
ReadAnalogVoltage : مقدار یک ورودی آنالوگ را خوانده و ولتاژ را در
Serial Monitor چاپ می کند.
2- دیجیتال
-
Blink Without Delay: چشمک زدن یک چراغ بدون استفاده از تابع
delay() .
-
Button: استفاده از یک دکمه فشاری جهت کنترل یک چراغ.
-
Debounce:
وضعیت یک دکمه فشاری که نویزگیری شده را بخوانید.
-
Button State Change: شمارش تعداد فشرده شدن یک دکمه.
-
Input Pullup Serial: استفاده از INPUT_PULLUP را در فرمان
pinMode() نشان می دهد.
- Tone:
یک موسیقی را با بلندگوی Piezo پخش کنید.
- Pitch
follower: یک صدا را روی بلندگوی piezo و براساس مقدار ورودی آنالوگ،
پخش کنید.
- Simple
Keyboard: یک صفحه کلید موزیکال 3 کلیده با استفاده از سنسورهای Force
و یک بلندگوی Piezo.
- Tone4:
آهنگها را روی چند بلندگو با استفاده مکرر از فرمان tone()
پخش کنید.
3- آنالوگ
-
AnalogInOutSerial: مقدار یک پین ورودی آنالوگ را خوانده، نتیجه را
نگاشت نموده، و سپس داده های آن را جهت کم نور یا پرنور کردن یک LED به
کار ببندید.
-
Analog Input: از یک پتانسیومتر جهت کنترل چشمک زدن یک LED استفاده
کنید.
-
AnalogWriteMega: تعداد 12 LED را با
استفاده از برد آردوینو مگا یکی یکی به حالت Fade on و Fade off در آورید.
-
Calibration: یک مقدار حداقل و حداکثری را جهت مقادیر مورد انتظار
سنسور آنالوگ مشخص کنید.
-
Fading: از یک خروجی آنالوگ (پین PWM) جهت Fade کردن یک LED استفاده
کنید.
-
Smoothing:
خواندن چندگانه ی یک ورودی آنالوگ به صورت نرم و ساده (smooth)
4- ارتباطات
این مثالها شامل کدهایی ست که به آردوینو امکان می دهد تا با برنامه
های Processing که روی سیستم کامپیوتری در حال اجراست، ارتباط برقرار کند.
سایت
processing.org
را مشاهده نمایید. در اینجا Patch های Max/MSP موجود است که می تواند
با هر برنامه آردوینو به خوبی ارتباط برقرار کند. جهت کسب اطلاعات بیشتر در
مورد Max/MSP صفحه
Cycling
74را مشاهده نمایید. جهت آگاهی از patch های Pd که می توانند با این برنامه
ها ارتباط برقرار کنند،
مثال
های Scott Fitzgeraldرا مشاهده کنید.
-
ReadASCIIString: یک رشته از مقادیر عددی را که با کاما از هم جدا
شده اند، جهت Fade کردن یک LED تجزیه کنید.
-
ASCII Table: توابع پیشرفته خروجی سریال مربوط به آردوینو را شرح می
دهد.
-
Dimmer: ماوس را حرکت دهید تا روشنایی یک LED را تغییر دهید.
- Graph:
داده هایی را به کامپیوتر ارسال کرده و نمودار آن را در Processing رسم
کنید.
-
Physical Pixel: با ارسال داده به آردوینو خود از طریق Processing
یا Max/MSP یک LED را روشن و خاموش کنید.
-
Virtual Color Mixer: چندین متغیر را از آردوینو به کامپیوتر خود ارسال
کرده و آنها را در Processing یا Max/MSP بخوانید.
-
Serial Call Response: چندین متغیر را با استفاده از روش تماس و پاسخ
(handshaking) ارسال کنید.
-
Serial Call Response ASCII: چندین متغیر را با استفاده از روش تماس
و پاسخ (handshaking) ارسال کنید. مقادیر را پیش از ارسال، با کد اسکی
رمزگذاری کنید.
-
SerialEvent: استفاده از تابعSerialEvent()
را نشان می دهد.
-
Serial input (Switch (case) Statement): روش
انجام اقدامات مختلف براساس کاراکترهایی که از طریق پورت سریال دریافت
می شود.
- MIDI:
send MIDI note messages serially.
-
MultiSerialMega: از دو پورت سریالی که بر روی برد مگا موجود است استفاده
کنید.
5- ساختارهای کنترلی
-
If Statement (Conditional): روش استفاده از دستور if جهت تغییر
شرایط خروجی بر اساس تغییر شرایط ورودی.
-
For
Loop: کنترل چندین LED با یک دستور
for loop and.
- Array:
طیفی از نمونه های مختلف For Loop که روش استفاده از یک آرایه را
شرح می دهد.
-
While
Loop: چگونه از یک حلقه While استفاده کنیم تا یک سنسور را تا زمانی
که یک دکمه خوانده می شود، اندازه گیری کنیم.
-
Switch Case: روش انتخاب بین تعداد مجزایی از مقادیر. برابر با دستورات
If چندگانه. این مثال نشان می دهد که چطور یک محدوده سنسور را به مجموعه
ای 4 باندی تقسیم کنیم و 4 اقدام مختلف را بر اساس این که نتیجه در کدام
باند است، انجام دهیم.
-
Switch Case 2: یک مثال دیگر از ساختار switch-case، که نشان می دهد
چگونه اقدامات مختلفی را بر اساس کاراکترهای دریافتی از پورت سریال، انجام
دهیم.
6- حسگرها
-
ADXL3xx:
مقدار یک شتاب سنج ADXL3xx را بخوانید.
- Knock:
با یک المان piezo ضربه ها را شناسایی کنید.
-
Memsic2125 : شتاب سنج دو محوری.
- Ping:
شناسایی اشیا با یک مسافت یاب آلتراسونیک.
7- نمایش
مثالهایی از کنترل صفحه نمایش پایه ای
8- رشته ها
9.USB (مثال های ویژه Leonardo ، Micro و Due)
مثالهای ماوس و صفحه کلید برای بردهای Leonardo، Micro و Due منحصر به فرد
هستند. این مثال ها استفاده از کتابخانه های ویژه این بردها را نشان می دهند.
صفحه کلید
-
KeyboardMessage: زمانی که یک دکمه فشرده شده است، یک رشته متنی را
ارسال می کند.
-
KeyboardLogout : توسط فرمانهای کلیدی، کاربر کنونی را Log Out می
کند.
-
KeyboardSerial: یک بایت را از پورت سریال خوانده و یک keystroke را
بر می گرداند.
-
KeyboardReprogram : یک پنجره جدید را در IDE آردوینو باز کرده و برد
Leonardo را با یک برنامه ساده چشمک زدن، مجددا برنامه ریزی می کند.
ماوس
|
|
مثالهایی از کتابخانه هایی که در نرم افزار آردوینو موجود است.
کتابخانه EEPROM
-
EEPROM Clear: بایت ها را در EEPROM پاک کنید.
-
EEPROM Read: حافظه EEPROM را بخوانید و مقادیر آن را به کامپیوتر
ارسال نمایید.
-
EEPROM Write: مقادیر را از ورودی آنالوگ درون EEPROM ذخیره می کند.
کتابخانه Esplora
مثالهای مبتدی Esplora
مثالهای تخصصی Esplora
-
EsploraKart : از Esplora به عنوان یک کنترل کننده جهت اجرای یک بازی
مسابقه ای کارت استفاده کنید.
-
EsploraTable : اطلاعات سنسور Esplora را در
قالب یک جدول چاپ کنید.
-
EsploraRemote : برد Esplora را به Processing متصل کرده و خروجی ها
را کنترل کنید.
-
EsploraPong : بازی Pong را با برد Esplora و با استفاده از Processing
اجرا کنید.
کتابخانه Ethernet
کتابخانه Firmata
کتابخانه GSM
مثال های GSM
-
Make Voice Call: شیلد خود را جهت ایجاد یک تماس تلفنی
از Serial Monitor تهیه کنید.
-
Receive Voice Call: وضعیت مودم را تا زمانی که یک
تماس تلفنی برقرار شود، چک کنید.
-
Send SMS: از Serial Monitor استفاده کنید تا در SMS پیام های خود
را برای شماره تلفن های مختلف تایپ کنید.
-
Receive SMS: پیام های SMS را خوانده و آنها را به سمت Serial Monitor
هدایت نمایید.
-
Web Client: محتویات یک وب سایت را از طریق GPRS به برد آردوینو خود
دانلود کنید.
-
Web Server: یک وب سرور بی سیم را از طریق GPRS ایجاد نمایید.
-
Twitter Client: سایت Twitter را از هر جایی بخوانید.
-
Pachube Client: با بستر حسگر Pachube ارتباط برقرار کنید.
-
Pachube Client String: با بستر حسگر Pachube ارتباط برقرار کنید.
ابزارهای GSM
کتابخانه LiquidCrystal
-
Hello World: displays "hello world!" and the seconds since reset.
-
Blink: control of the block-style cursor.
-
Cursor: control of the underscore-style cursor.
-
Display: quickly blank the display without losing what's on it.
-
TextDirection: control which way text flows from the cursor.
-
Scroll: متن را به چپ یا راست اسکرول می کند.
-
Serial input: ورودی سریال را پذیرفته و آن را نمایش می دهد.
-
SetCursor: موقعیت نشانگر ماوس را تعیین کنید.
-
Autoscroll: مکان یک متن را به چپ یا راست تغییر دهید.
کتابخانه Robot
-
Logo
-از طریق صفحه کلید روی برد، به ربات خود بگویید که کجا برود؟
-
Line Following - شیارهای یک مسابقه را رسم کرده و روبات خود را روی
آن بدوانید.
-
Disco Bot - روبات خود را به یک جعبه گرامافون خودکار 8 بیتی تبدیل
کنید و با آن آهنگ برقصید.
-
Compass - یک بازی treasure hunt را با این قطب نمای دیجیتالی طراحی
کنید.
-
Inputs - بیاموزید که چطور Knob و صفحه کلید را کنترل کنید.
-
Wheel Calibration - چرخ ها را برای کارایی بهتر میزان کنید.
-
Runaway Robot - play tag with your robot using a distance sensor
-
Remote control - reuse that old tv-remote to command the bot on
distance
-
Picture browser - آیا می خواهید از تصویر خود استفاده کنید؟ این مثال
به شما چگونگی کار را نشان می دهد.
-
Rescue - به ربات خود آموزش دهید که به دنبال مرواریدهای مخفی در یک
مارپیچ(Maze) بگردد.
-
Hello User - دموی خوشامد گویی ربات را هک کرده و دموی خود را بسازید.
کتابخانه SPI
کتابخانه Servo
- Knob:
شافت یک موتور سروو را به وسیله تغییر یک پتانسیومتر کنترل کنید.
- Sweep:
شافت یک موتور سروو را به سرعت به عقب و جلو حرکت دهید.
کتابخانه Software Serial
کتابخانه Stepper
-
Motor
Knob: یک موتور استپر بسیار دقیق را با استفاده از یک پتانسیومتر کنترل
کنید.
کتابخانه TFT
Esplora
آردوینو
-
TFT Bitmap Logo: یک فایل تصویری را از یک micro-SD card خوانده، و
آن را در مکانی تصادفی رسم کنید.
-
TFT Display Text : مقدار یک سنسور را بخوانید و روی صفحه نمایش چاپ
کنید.
-
TFT
Pong: پیاده سازی یک بازی کلاسیک با آردوینو
-
Etch a Sketch: یک نسخه آردوینویی از بازی Etch-a-Sketch کلاسیک
-
Color Picker: با سه سنسور، رنگ صفحه TFT را تغییر دهید.
-
Graph:
مقادیر یک مقاومت متغیر را روی TFT به صورت نمودار رسم کنید.
کتابخانه Wire
-
SFRRanger_reader: با استفاده از یک ارتباط
I2C یک مسافت یاب آلتراسونیک Devantech
SRFxx را بخوانید.
-
digital_potentiometer: یک پتانسیومتر دیجیتالی
AD5171 را با استفاده از کتابخانه wire
کنترل کنید.
-
master reader/slave sender: دو (یا تعداد بیشتری) برد آردوینو را
جهت اشتراک اطلاعات از طریق پیکر بندی یک master reader/slave sender راه
اندازی کنید.
-
master writer/slave reader: اشتراک اطلاعات را با استفاده از راه
اندازی یک master writer/slave reader برای دو (یا تعداد بیشتری) برد آردوینو
مقدور کنید.
کتابخانه WiFi
آردوینو به عنوان پروگرمر ISP
ArduinoISP
آردوینو شما را تبدیل به یک پروگرمر مجتمع می کند تا تراشه های Atmega را دوباره
برنامه ریزی کنید. اگر شما
از آردوینو به سمت Atmega روی یک بردبورد می روید، یا اگر شما
مدار آردوینو
خود را به صورت سازگار با یک برد بورد ساخته اید، زمانی که نیاز دارید
bootloader را روی یک آردوینو مجدداً بارگزاری کنید، این عمل مفید است.
سایر
برای داشتن لیست عظیمی از مثالها از انجمن آردوینو، به صفحه
ارتباط با سخت افزار روی playground wiki مراجعه نمایید. همچنین لیست
مثالهای قدیمی
را مشاهده نمایید.
|