17 KiB
ویو ترمینال
ویو ترمینال از Seeed Studios یک میکروکنترلر سازگار با آردوینو است که دارای WiFi، تعدادی حسگر و عملگر داخلی و همچنین پورتهایی برای افزودن حسگرها و عملگرهای بیشتر با استفاده از یک اکوسیستم سختافزاری به نام Grove میباشد.
راهاندازی
برای استفاده از ویو ترمینال، باید نرمافزارهای رایگانی را روی کامپیوتر خود نصب کنید. همچنین باید قبل از اتصال به WiFi، فریمور ویو ترمینال را بهروزرسانی کنید.
وظیفه - راهاندازی
نرمافزارهای موردنیاز را نصب کرده و فریمور را بهروزرسانی کنید.
-
ویژوال استودیو کد (VS Code) را نصب کنید. این ویرایشگری است که برای نوشتن کد دستگاه خود به زبان C/C++ از آن استفاده خواهید کرد. برای دستورالعملهای نصب ویژوال استودیو کد به مستندات VS Code مراجعه کنید.
💁 یک IDE محبوب دیگر برای توسعه آردوینو Arduino IDE است. اگر قبلاً با این ابزار آشنا هستید، میتوانید به جای VS Code و PlatformIO از آن استفاده کنید، اما درسها بر اساس استفاده از VS Code توضیح داده خواهند شد.
-
افزونه PlatformIO را برای VS Code نصب کنید. این افزونه از برنامهنویسی میکروکنترلرها به زبان C/C++ پشتیبانی میکند. برای دستورالعملهای نصب این افزونه در VS Code به مستندات افزونه PlatformIO مراجعه کنید. این افزونه به افزونه Microsoft C/C++ وابسته است که بهطور خودکار هنگام نصب PlatformIO نصب میشود.
-
ویو ترمینال خود را به کامپیوتر متصل کنید. ویو ترمینال دارای یک پورت USB-C در قسمت پایین است که باید به یک پورت USB روی کامپیوتر شما متصل شود. ویو ترمینال با یک کابل USB-C به USB-A ارائه میشود، اما اگر کامپیوتر شما فقط پورت USB-C دارد، به یک کابل USB-C یا یک مبدل USB-A به USB-C نیاز خواهید داشت.
-
دستورالعملهای موجود در مستندات WiFi Overview ویکی ویو ترمینال را دنبال کنید تا ویو ترمینال خود را راهاندازی کرده و فریمور را بهروزرسانی کنید.
سلام دنیا
بهطور سنتی، هنگام شروع کار با یک زبان برنامهنویسی یا فناوری جدید، یک برنامه کوچک به نام 'سلام دنیا' ایجاد میشود که متنی مانند "Hello World"
را نمایش میدهد تا نشان دهد همه ابزارها بهدرستی پیکربندی شدهاند.
برنامه سلام دنیا برای ویو ترمینال اطمینان میدهد که ویژوال استودیو کد با PlatformIO بهدرستی نصب شده و برای توسعه میکروکنترلر آماده است.
ایجاد یک پروژه PlatformIO
اولین گام، ایجاد یک پروژه جدید با استفاده از PlatformIO است که برای ویو ترمینال پیکربندی شده باشد.
وظیفه - ایجاد یک پروژه PlatformIO
پروژه PlatformIO را ایجاد کنید.
-
ویو ترمینال را به کامپیوتر خود متصل کنید.
-
ویژوال استودیو کد را باز کنید.
-
آیکون PlatformIO در نوار منوی کناری قرار دارد:
این گزینه را انتخاب کنید، سپس PIO Home -> Open را انتخاب کنید.
-
از صفحه خوشآمدگویی، دکمه + New Project را انتخاب کنید.
-
پروژه را در Project Wizard پیکربندی کنید:
-
نام پروژه خود را
nightlight
بگذارید. -
از منوی کشویی Board،
WIO
را تایپ کنید تا بردها فیلتر شوند و Seeeduino Wio Terminal را انتخاب کنید. -
Framework را روی Arduino بگذارید.
-
گزینه Use default location را تیکدار بگذارید یا آن را بردارید و مکان پروژه خود را انتخاب کنید.
-
دکمه Finish را انتخاب کنید.
PlatformIO اجزای موردنیاز برای کامپایل کد برای ویو ترمینال را دانلود کرده و پروژه شما را ایجاد میکند. این فرآیند ممکن است چند دقیقه طول بکشد.
-
بررسی پروژه PlatformIO
اکسپلورر ویژوال استودیو کد تعدادی فایل و پوشه را که توسط ویزارد PlatformIO ایجاد شدهاند، نشان میدهد.
پوشهها
.pio
- این پوشه شامل دادههای موقتی است که توسط PlatformIO مانند کتابخانهها یا کد کامپایلشده استفاده میشود. اگر حذف شود، بهطور خودکار بازسازی میشود و نیازی نیست این پوشه را در کنترل نسخه (مانند GitHub) اضافه کنید..vscode
- این پوشه شامل پیکربندیهای مورد استفاده توسط PlatformIO و ویژوال استودیو کد است. اگر حذف شود، بهطور خودکار بازسازی میشود و نیازی نیست این پوشه را در کنترل نسخه اضافه کنید.include
- این پوشه برای فایلهای هدر خارجی است که هنگام افزودن کتابخانههای اضافی به کد خود نیاز دارید. در این درسها از این پوشه استفاده نخواهید کرد.lib
- این پوشه برای کتابخانههای خارجی است که میخواهید از کد خود فراخوانی کنید. در این درسها از این پوشه استفاده نخواهید کرد.src
- این پوشه شامل کد منبع اصلی برنامه شما است. در ابتدا، فقط یک فایل به نامmain.cpp
در آن وجود دارد.test
- این پوشه جایی است که میتوانید تستهای واحد برای کد خود قرار دهید.
فایلها
-
main.cpp
- این فایل در پوشهsrc
نقطه ورود برنامه شما را شامل میشود. این فایل را باز کنید و کد زیر را مشاهده خواهید کرد:#include <Arduino.h> void setup() { // put your setup code here, to run once: } void loop() { // put your main code here, to run repeatedly: }
وقتی دستگاه روشن میشود، فریمورک آردوینو ابتدا تابع
setup
را یک بار اجرا میکند، سپس تابعloop
را بهطور مکرر اجرا میکند تا زمانی که دستگاه خاموش شود. -
.gitignore
- این فایل لیستی از فایلها و دایرکتوریهایی را که باید هنگام افزودن کد به کنترل نسخه (مانند آپلود در یک مخزن GitHub) نادیده گرفته شوند، شامل میشود. -
platformio.ini
- این فایل شامل پیکربندی دستگاه و برنامه شما است. این فایل را باز کنید و کد زیر را مشاهده خواهید کرد:[env:seeed_wio_terminal] platform = atmelsam board = seeed_wio_terminal framework = arduino
بخش
[env:seeed_wio_terminal]
شامل پیکربندی برای ویو ترمینال است. میتوانید چندین بخشenv
داشته باشید تا کد شما برای چندین برد کامپایل شود.مقادیر دیگر با پیکربندی از ویزارد پروژه مطابقت دارند:
platform = atmelsam
سختافزاری را که ویو ترمینال استفاده میکند (یک میکروکنترلر مبتنی بر ATSAMD51) تعریف میکند.board = seeed_wio_terminal
نوع برد میکروکنترلر (ویو ترمینال) را تعریف میکند.framework = arduino
نشان میدهد که این پروژه از فریمورک آردوینو استفاده میکند.
نوشتن برنامه سلام دنیا
اکنون آماده نوشتن برنامه سلام دنیا هستید.
وظیفه - نوشتن برنامه سلام دنیا
برنامه سلام دنیا را بنویسید.
-
فایل
main.cpp
را در ویژوال استودیو کد باز کنید. -
کد را به کد زیر تغییر دهید:
#include <Arduino.h> void setup() { Serial.begin(9600); while (!Serial) ; // Wait for Serial to be ready delay(1000); } void loop() { Serial.println("Hello World"); delay(5000); }
تابع
setup
یک اتصال به پورت سریال (در اینجا، پورت USB که برای اتصال ویو ترمینال به کامپیوتر استفاده میشود) را مقداردهی اولیه میکند. پارامتر9600
نرخ baud (یا نرخ سمبل) است، یعنی سرعت ارسال دادهها از طریق پورت سریال به بیت در ثانیه. این تنظیم به معنای ارسال ۹۶۰۰ بیت داده در هر ثانیه است. سپس منتظر میماند تا پورت سریال آماده شود.تابع
loop
خطHello World!
را به پورت سریال ارسال میکند، بنابراین کاراکترهایHello World!
همراه با یک کاراکتر خط جدید ارسال میشوند. سپس به مدت ۵۰۰۰ میلیثانیه یا ۵ ثانیه متوقف میشود. پس از پایانloop
، دوباره اجرا میشود و این روند تا زمانی که میکروکنترلر روشن باشد ادامه دارد. -
ویو ترمینال خود را در حالت آپلود قرار دهید. هر بار که کد جدیدی را به دستگاه آپلود میکنید، باید این کار را انجام دهید:
-
دو بار سریع کلید پاور را به پایین بکشید - کلید به حالت روشن بازمیگردد.
-
چراغ آبی وضعیت در سمت راست پورت USB را بررسی کنید. باید بهصورت پالس روشن شود.
برای مشاهده ویدئو، روی تصویر بالا کلیک کنید.
-
-
کد را بسازید و به ویو ترمینال آپلود کنید.
-
پالت دستورات ویژوال استودیو کد را باز کنید.
-
عبارت
PlatformIO Upload
را تایپ کنید تا گزینه آپلود جستجو شود و PlatformIO: Upload را انتخاب کنید.PlatformIO در صورت نیاز کد را بهطور خودکار قبل از آپلود کامپایل میکند.
-
کد کامپایل شده و به ویو ترمینال آپلود میشود.
💁 اگر از macOS استفاده میکنید، یک اعلان درباره DISK NOT EJECTED PROPERLY ظاهر میشود. این به این دلیل است که ویو ترمینال بهعنوان یک درایو در فرآیند فلش کردن متصل میشود و هنگام نوشتن کد کامپایلشده به دستگاه، قطع میشود. میتوانید این اعلان را نادیده بگیرید.
⚠️ اگر خطاهایی درباره در دسترس نبودن پورت آپلود دریافت کردید، ابتدا مطمئن شوید که ویو ترمینال به کامپیوتر شما متصل است، با کلید سمت چپ صفحه روشن شده و در حالت آپلود قرار دارد. چراغ سبز در پایین باید روشن باشد و چراغ آبی باید بهصورت پالس روشن شود. اگر همچنان خطا دریافت میکنید، کلید روشن/خاموش را دوباره دو بار سریع به پایین بکشید تا ویو ترمینال را به حالت آپلود مجبور کنید و دوباره آپلود را امتحان کنید.
-
PlatformIO دارای یک مانیتور سریال است که میتواند دادههای ارسالشده از طریق کابل USB از ویو ترمینال را نظارت کند. این امکان را به شما میدهد تا دادههای ارسالشده توسط دستور Serial.println("Hello World");
را مشاهده کنید.
-
پالت دستورات ویژوال استودیو کد را باز کنید.
-
عبارت
PlatformIO Serial
را تایپ کنید تا گزینه مانیتور سریال جستجو شود و PlatformIO: Serial Monitor را انتخاب کنید.یک ترمینال جدید باز میشود و دادههای ارسالشده از طریق پورت سریال به این ترمینال جریان مییابد:
> Executing task: platformio device monitor < --- Available filters and text transformations: colorize, debug, default, direct, hexlify, log2file, nocontrol, printable, send_on_enter, time --- More details at http://bit.ly/pio-monitor-filters --- Miniterm on /dev/cu.usbmodem101 9600,8,N,1 --- --- Quit: Ctrl+C | Menu: Ctrl+T | Help: Ctrl+T followed by Ctrl+H --- Hello World Hello World
عبارت
Hello World
هر ۵ ثانیه یک بار در مانیتور سریال چاپ میشود.
💁 میتوانید این کد را در پوشه code/wio-terminal پیدا کنید.
😀 برنامه 'سلام دنیا' شما با موفقیت اجرا شد!
سلب مسئولیت:
این سند با استفاده از سرویس ترجمه هوش مصنوعی Co-op Translator ترجمه شده است. در حالی که ما تلاش میکنیم دقت را حفظ کنیم، لطفاً توجه داشته باشید که ترجمههای خودکار ممکن است شامل خطاها یا نادرستیها باشند. سند اصلی به زبان اصلی آن باید به عنوان منبع معتبر در نظر گرفته شود. برای اطلاعات حساس، توصیه میشود از ترجمه حرفهای انسانی استفاده کنید. ما مسئولیتی در قبال سوء تفاهمها یا تفسیرهای نادرست ناشی از استفاده از این ترجمه نداریم.