آموزش های آردوینو

بردهای آردوینو یا Arduino یک پلتفرم اپن سورس برای ساخت پروژه های الکترونیک است. آردوینو از دو قسمت برد سخت افزاری و یک محیط برنامه نویسی تشکیل شده است. سخت افزار ها در مدل های مختلف با میکروکنترلر تولید می شوند و قسمت نرم افزاری که یک IDE یا محیط یکپارچه نرم افزاری هست و روی کامپیوتر شما نصب و اجرا می شود.
برد های Arduino در بین آنهایی که تازه با الکترونیک آشنا شدن و دوست دارند پروژه انجام بدهند بسیار مشهور شده و دلیل عمده آن هم بطور خلاصه سادگی کار با آن است.
بر خلاف مدارهای دیجتالی قابل برنامه ریزی دیگر ، Arduino نیاز به قطعات زیادی برای طراحی یک پروژه ندارد و همچنین امروزه ماژول های فراوانی برای راحتی کار با آردوینو طراحی و به بازار عرضه شده است که کار با Arduino و ساخت پروژه های ساده را بسیار راحتر کرده است.

 برقراری ارتباط بین دو بورد آردوینو با استفاده از پروتکل I2C

برقراری ارتباط بین دو بورد آردوینو با استفاده از پروتکل I2C

در آموزش‌های قبلی نحوه‌ی استفاده از پروتکل SPI در بوردهای آردوینو را توضیح داده‌ایم. در این جلسه می‌خواهیم نوع دیگری از ارتباط سریال  در این بوردها یعنی پروتکل ارتباطی Inter Integrated Circuits) I2C) را ‌یاد بگیریم. اگر بخواهیم این دو پروتکل ‌یعنی I2C و SPI را با هم مقایسه کنیم؛ …

ادامه نوشته »

توابع پایه مربوط به زمان و وقفه در آردوینو

توابع پایه مربوط به زمان و وقفه در آردوینو

در این جلسه می‌خواهیم در مورد توابع پایه مربوط به زمان و وقفه که پیوسته در IDE آردوینو به کار بسته می‌شوند صحبت کنیم. توابع زمانی تابع ()millis این تابع تعداد میلی‌ثانیه‌های سپری شده از زمانی که بورد آردوینو شروع به اجرای برنامه جاری کرده است را برمی‌گرداند. این عدد …

ادامه نوشته »

USART در آردوینو Uno

USART در آردوینو Uno

مقدمه  Universal Serial Asynchronous Receiver Transmitter یا به اختصار USART یک پروتکل ارتباط سریال است که برای دریافت/ارسال داده به صورت سریال و در یک baud rate مشخص به کار گرفته می‌شود. قطعات مختلف از جمله GPS ،GSM ،RFID، سنسورها و … به منظور دریافت یا انتقال اطلاعات، باید با …

ادامه نوشته »

پین‌های GPIO دیجتیال آردوینو

پین‌های GPIO دیجتیال آردوینو

مقدمه پین‌های ورودی خروجی همه منظوره (GPIO) پین‌های دیجیتال روی یک آی‌سی می‌باشند. می‌توان از آنها برای ارتباط با دستگاه‌ها به صورت ورودی یا خروجی استفاده کرد. اگر بخواهیم وضعیت یک سوییچ، داده‌های سنسور و … را بخوانیم باید پین را به عنوان ورودی پیکربندی کنیم. اگر هدف ما کنترل …

ادامه نوشته »

ADC در آردوینو

ADC در آردوینو

مقدمه وقتی ارتباط بین سنسورها با میکروکنترلر را برقرار می‌کنیم، در اکثر موارد خروجی سنسورها ذاتاً آنالوگ می‌باشد. اما میکروکنترلر تنها سیگنال‌های دیجیتالی را پردازش می‌کند. بنابراین باید از ADC بین سنسور و میکروکنترلر استفاده کنیم. ADC سیگنال آنالوگ را به دیجیتال تبدیل کرده و تحویل میکروکنترلر می‌دهد. ADC کاربردهای …

ادامه نوشته »

تایمر سگ نگهبان با آردوینو

تایمر سگ نگهبان با آردوینو

بورد آردوینو Uno یک چیپ ATmega328P را به عنوان واحد کنترل کننده در قلب خود دارد. ATmega328P دارای یک تایمر سگ نگهبان (Watchdog Timer) است. این تایمر در سناریوهایی که سیستم در اثر وجود خطا در کد نوشته شده هنگ کرده و فریز می‌شود و یا در شرایطی که مشکلات …

ادامه نوشته »

PWM در آردوینو

PWM در آردوینو

مقدمه مدلاسیون پهنای پالس (PWM) تکنیکی است که در آن فرکانس ثابت نگه داشته شده و پهنای پالس تغییر می‌کند. این مدولاسیون روشی برای تولید سیگنال آنالوگ با استفاده از یک منبع دیجیتال می‌باشد. یک سیگنال PWM شامل دو مولفه اساسی به نام‌های duty cycle و فرکانس است که رفتارش …

ادامه نوشته »

I2C آردوینو

I2C آردوینو

مقدمه Inter-Integrated Circuit یا به اختصار I2C یک پروتکل ارتباطی سریال می‌باشد. این پروتکل two wire interface) TWI) نیز نامیده می‌شود زیرا از دو سیم برای برقراری ارتباط استفاده می‌کند. این دوسیم SDA (داده سریال) و SCL (کلاک سریال) می‌باشند. I2C یک پروتکل ارتباطی مبتنی بر تایید (acknowledgment-based) می‌باشد، بدین …

ادامه نوشته »

اتصال LCD (نمایشگر کریستال مایع) ۱۶*۲ به آردوینو

LCD آردوینو با استفاده از نمایشگر کریستال مایع ۲*۱۶

در این آموزش، مروری بر مراحل اتصال یک LCD 16*2 ساده به آردوینو خواهیم داشت. کارهای زیادی هست که می‌توان با یک LCD (نمایشگر کریستال مایع) انجام داد، این نمایشگر یک دستگاه کوچک مفید برای یادگیری و برقراری ارتباط می‌باشد. می‌دانید که اکثر بوردهای LCD بدون پین هدر عرضه می‌شوند …

ادامه نوشته »

توابع پایه مرتبط با ارتباط سریال در آردوینو

دوره آموزش آردوینو (برنامه نویسی پیشرفته آردوینو)

در این جلسه برخی از توابع پایه مرتبط با ارتباط سریال، که پیوسته در IDE آردوینو استفاده می‌شوند را با هم ملاحظه می‌کنیم. USART تابع (Serial.begin(baud_rate Baud_rate: باودریتی که برای ارتباط سریال استفاده می‌شود. می‌تواند ۴۸۰۰، ۹۶۰۰، ۱۴۴۰۰، ۱۹۲۰۰ و … باشد. این تابع برای تعریف باودریت مورد استفاده در …

ادامه نوشته »

اضافه کردن کتابخانه جدید به آردوینو و استفاده از آن

اضافه کردن یک کتابخانه جدید به IDE آردوینو و استفاده از آن

اجازه دهید نحوه‌ی اضافه کردن یک کتابخانه برای ماژول MPU6050 (ژیروسکوپ + شتاب‌سنج + دماسنج) را با هم مشاهده کنیم. در اینجا، ما از کتابخانه MPU6050 آقای Kornelisuz Jarzebski از گیت‌هاب استفاده می‌کنیم. کتابخانه را از اینجا دانلود کنید. کتابخانه را دانلود کرده و از حالت فشرده خارج کنید و …

ادامه نوشته »

توابع GPIO آردوینو (توابع پایه)

دوره آموزش آردوینو (برنامه نویسی پیشرفته آردوینو)

می‌خواهیم چند تابع پایه مربوط به راه‌اندازی آردوینو و GPIO که پیوسته در IDE آردوینو استفاده می‌شوند را با هم مرور کنیم. توابع شروع به کار ()setup این تابع در آغاز اسکچ فراخوانی می‌شود. این تابع برای آغاز و مقداردهی اولیه متغیرها، مد پین‌ها و … استفاده می‌شود. این تابع …

ادامه نوشته »

پروتکل CAN Bus در آردوینو با آی‌سی MCP2515

آموزش استفاده از پروتکل CAN Bus در آردوینو با استفاده از آی‌سی MCP2515

در این پروژه، می‌خواهیم با ماژول MCP2515 که یک CAN controller است آشنا شویم و یاد بگیریم که چگونه این ماژول را به بورد آردوینو متصل کنیم. همچنین اینکه چگونه با استفاده از این ماژول و پروتکل CAN، بین دو بورد آردوینو ارتباط برقرار کنیم. فهرست مطالبی که در این …

ادامه نوشته »

نصب بوت لودر روی ATmega328 با آردوینو UNO

چگونگی نصب بوت لودر در ATmega328 با استفاده از آردوینو UNO

در این پروژه، نحوه نصب بوت لودر را در میکروکنترلر ATmega328 به شما نشان خواهم داد. با استفاده از این روش، می‌توانید از میکروکنترلر ATmega328 خود به صورت مستقل در طراحی سفارشی یا PCB استفاده کنید. (هم‌چنین می‌توانید کد را آپلود کنید). مقدمه اگر در حال مطالعه این پروژه هستید، …

ادامه نوشته »

اصول توسعه Bootloader برای آردوینو

اصول توسعه Bootloader برای آردوینو

مقدمه بوت لودر (Bootloader)، اصولاً یک تکه کد آغازین است که هر میکروکنترلری هنگام روشن شدن یا راه‌اندازی مجدد آن را اجرا می‌کند. این کد مشابه مفهوم BIOS است که هر PC هنگام روشن شدن آن را اجرا می‌کند. در مورد PC ،BIOS منتظر ورودی از طرف کاربر برای تغییر …

ادامه نوشته »