راهاندازیgpio به هنگام کارکردن با برخی از آی سیها، میکروپروسسور و میکروکنترلر یک مفهوم مهم است که باید با آن آشنا شد، مخصوصا راهاندازی gpio در stm32 که بسیار مهم و کاربردی است. از بخشهای اساسی کار با قطعههای الکترونیکی میتوان به gpio درک پینهای خروجی و ورودی اشاره نمود. در این مطلب سعی داریم شما را به طور کامل با gpio و IO آشنا کنیم، تا پایان این مطلب همراه ما باشید.
محصولات مرتبط : سیم برد بورد فلتی نر به ماده
GPIO
GPIO به معنای ورودی و خروجی همه منظوره یک نوع پین است که در آی سیها پیدا میشود و عملکرد چندان خاصی ندارد؛ بنابراین به هنگام خرید آی سی به درگاه ورودی و خروجی آن دقت کنید. بیشتر پینها دارای اهداف اختصاصی هستند. به عنوان مثال هنگام ارسال یک قطعه خاص، عملکرد پین قابل تنظیم بوده و میتوان توسط نرم افزار آن را کاملا کنترل کرد. از GPIO برای اتصال میکروکنترلرها به سایر دستگاههای الکترونیکی مانند: سنسورها، دیودها، نمایشگرها، ماژولهایSystem-on-Chip استفاده میشود.
“مقالات مرتبط : معرفی سنسور نوری (فوتو الکتریک) و کاربردهای آن “
تمامی چیپها دارای پین ورودی و خروجی نیستند، اما گاهی روی تراشههایی مانند چیپی که در مدیریتهای توان و کارتهای تصویری و صوتی استفاده میشود، پیدا میشوند؛ همچنین به واسطه مدارهای سیستم روی تراشهSOC قابل استفاده هستند. پردازنده، رابطهای خارجی و حافظه روی یک تراشه قرار گرفتهاند. پینها به این تراشهها اجازه پیکربندی برای هدفهای مختلف را میدهند و با چند نوع کامپوننت کار میکنند.
محصولات مرتبط : برد بورد GL BREAD BOARD
نحوه عملکرد GPIO به چه صورت است؟
میتوان از GPIO در سه حالت ورودی، خروجی و رابط UART استفاده نمود. یک پورت خروجی_ ورودی میتواند سیگنالهای دیجیتال ورودی _ خروجی را تنظیم و کنترل کند. از یک پورت ورودی میتوان برای ارتباط سیگنالهای روشن یا خاموش که از سوئیچ دریافت شده یا نوشتههای دیجیتالی دریافتی از سنسورها به CPU استفاده نمود. پین GPIO دیجیتال است، یعنی فقط سطحهای بالا یا پایین و روشن یا خاموش را پشتیبانی و حمایت میکند. پین GPIO معمولا از ورودی یا خروجی آنالوگ با سطح ولتاژ جدا پشتیبانی نمیکند. ممکن است بعضی از پینهای همه منظوره به طور مستقیم از پروتکلهای ارتباطی مانند: ارتباط سریال، PWM، PCM، I2C و SPI پشتیبانی کنند.
عملکردهای پین GPIO شامل موارد زیر میشود:
- فعال یا غیر فعال شدن
- خواندن مقدار یک خروجی دیجیتالی
- تنظیم و کنترل مقدار خروجی دیجیتال
- ایجاد توقف در هنگام تغییر مقدار ورودی توسط GPIO
چه دستگاه هایی از GPIO استفاده می کنند؟
دستگاههای زیادی مانند: چراغهای نشانگر، بازرها، نشانگرها و آشکارسازهای حرکت وجود دارند که میتوان از طریق درگاه ورودی_ خروجی همه منظوره آنها را به یک فناوری آر اف ای دی اضافه کرد. در این قسمت چند نمونه از مواردی که یک برنامه میتواند از دستگاه GPIOاستفاده کند، نام برده میشود:
GPIO در رزبری پای
دستگاه خوب و پرکاربرد رزبری پای از GPIO استفاده میکند، یک سیستم تکبرد برای علاقهمندان طراحی شده و شامل یک ردیف پین ورودی _ خروجی در امتداد لبه برد است که رابط بین رزبری پای و باقی اجزا را فراهم میسازد. این پینها مانند یک کلید عمل میکنند و وقتی روی HIGH تنظیم میشوند ۳/۳ ولت خروجی میدهند؛ همچنین زمانی که روی LOW تنظیم میشوند هیچ ولتاژی ندارند. میتوان یک دستگاه را به پینهای بسیار خاص GPIO متصل و آن را با یک نرمافزار کنترل نمود. برای مثال یک LED را به یک GPIO و یک پین زمین را روی رزبری پای متصل کنید، اگر برنامه نرمافزاری به پین خروجی _ ورودی دستور روشن شدن بدهد، LED روشن خواهد شد.
محصولات مرتبط : سیم برد بورد فلتی ماده به ماده
GPIO در پایتون
GPIO یک ماژول پایتون بوده که برای کنترل رابط ورودی _ خروجی همه منظوره در رزبری پای قرار دارد و توسط بن کراستون توسعه یافته است؛ همچنین تحت مجوز نرم افزار رایگان MIT منتشر شده است.
“مقالات مرتبط : آشنایی با انواع نمایشگر الکترونیکی از نظر مقایسه و کاربرد “
GPIO در آردوینو
در تمام پردازندههایی که از آنها استفاده میشود یک رزبری پای و یک برد آردوینو وجود دارند که میتوان از طریق آنها مدارهای خود را طراحی نمود و سنسورهای خود را از روی آنها خواند.
GPIOدر میکروکنترلر
GPIO در اکثر میکروکنترلرهای جدید MCU به جهت دسترسی آسان به خصوصیات داخلی دستگاه وجود دارد. فرد میتواند پینها را به عنوان ورودی تنظیم و برنامهریزی کند تا در زمان و مکان دلخواه بتواند آنها را دستکاری کند.
کاربرد GPIO در STM32 چیست ؟
STM32از خانواده میکروکنترلرهای ۳۲ ولتی بوده که کاربردهای زیادی دارد و از آن در اسباب بازیهای ساده گرفته تا سیسیتمهای پیچیده مانند لوازم خانگی استفاده میشود؛ بنابراین توانایی توسعه و گسترش برنامههای کاربردی در این پلتفرم یک مهارت خواهد بود. GPIO در میکروکنترلر STM32 راههای زیادی برای ارتباط با مدارهای خروجی ارائه داده است. تمامی پینهای میکروکنترلرSTM32 همانند یک GPIO کار میکنند. پینها قادر هستند مجموعهای از یک عملیات از پیش تعیین و تعریف شده را به گونهای رجیستریمیکروکنترلر برای ورودی_ خروجی همه منظوره انجام بدهند. این حالتها در عملیات شامل موارد زیر میشود:
- ورودی دیجیتال
- خروجی دیجیتال
- ورودی _ خروجی آنالوگ
I/O چیست؟
I/O در واقع مخفف Output بوده و کامپیوترها بر ایده هر ورودی منجر به خروجی است، ساخته شدهاند. اگر برنامهای مانند word را در سیستم خود اجرا کرده و یک جمله روی صفحه کلید تایپ کنید، متن روی صفحه تایپ، نمایش داده میشود. صفحه کلید یک دستگاه ورودی و صفحه نمایش یک دستگاه خروجی است؛ همچنین میتوان متن را با استفاده از پرینتر که یک دستگاه خروجی دیگر هست، چاپ کرد. درگاههای بیرونی کامپیوتر پورت خروجی _ ورودی هستند؛ زیرا آنها دستگاههای خروجی و ورودی را به کامپیوتر وصل میکنند. بعضی از توسعهدهندگان نرمافزار I/O را برای توضیح چگونگی عملکرد یک برنامه، بسته به این که کاربر چه چیزی را وارد میکند، به کار میگیرند.
محدوده ولتاژ I/O چیست ؟
محدوده ولتاژ میتواند یک ورودی یا خروجی باشد. محدوده ولتاژ I/O دو قطبی است که به عنوان مثال ۱۰- تا ۱۰+ ولت را پوشش میدهد اما در حالت یک قطبی تنها ۰ تا ۱۰ + ولت را میتواند پوشش دهد. GPIO یک میکروکنترلر بسته به کاربرد، ممکن است رابط اصلی آن را با مدارهای خروجی تشکیل دهد یا فقط یکی از انواع ورودی _ خروجی I/O را مورد استفاده در میان ورودی _ خروجی سیگنال آنالوگ، تایمر، ارتباط سری و … قرار بدهد.
انواع ورودی/ خروجی (I/O)
سه نوع عملیات ورودی_ خروجی موجود است که شامل موارد زیر میشود:
- ورودی حسی: این نوع ورودی شامل ورودی دیجیتال و آنالوگ است.
- خروجی کنترل: خروجی کنترل شامل خروجی دیجیتال مستقیم، خروجی دیجیتال ماژولی و خروجی آنالوگ میشود.
- انتقال داده: عملیات انتقال داده شامل انتقال موازی و سری است.
محصولات مرتبط : سیم برد بورد 50 تایی BREADBOARD
سخن پایانی
بیشتر کاربرانی که کامپیوتر دارند با پینهایGPIO مواجه نمیشوند و نگران پیکربندی کامپیوتر نیستند. اگر شما به انجام کارهای الکترونیکی علاقه دارید، میتواند به یادگیری چیپهایی که داراری خروجی _ ورودی هستند؛ همچنین چگونگی استفاده از آنها بپردازید. در این مطلب تا حدودی با GPIO وI/O آشنا شدهاید، اما اگر مایل هستید اطلاعات بیشتری دریافت کنید، پیشنهاد میشود برای پاسخ سوالات خود و اطلاعات بیشتر، به سایت مگنت مراجعه کنید.