آموزش رزبری پای رزبری پای میکروپایتون Micropython

آموزش میکروپایتون با رزبری پای پیکو بخش سوم: پایه های GPIO & Pins

getting-started-with-raspberry-pi-pico-micropython-part-three-gpio-pins-digispark
نوشته شده توسط پریسا پوربلورچیان

رزبری پای پیکو Raspberry Pi PICO دارای ۳۰ پایه GPIO است. هر پایه های GPIO رزبری Pico دارای ماهیت متفاوتی است و نقش متفاوتی را برای ما ایفا می‌کنند. برای استفاده از این ۳۰ پایه نیاز به دانش برنامه نویسی میکروپایتون خواهیم داشت. در میکروپایتون از کلاس های پایتون برای کدنویسی استفاده می‌کنیم. هر کلاس شامل تعدادی توابع است که برای فراخوانی استفاده می‌شود. در این آموزش کلاس های مورد نیاز برای استفاده از PINS & GPIO در برد رزبری پای پیکو را یاد خواهیم گرفت. در ادامه با مرجع تخصصی میکروپایتون با رزبری پای به زبان فارسی، دیجی اسپارک همراه باشید.

میکروپایتون با پیکو pico - دیجی اسپارک

 


Pins & GPIO رزبری پای پیکو


جهت فراخوانی پایه های GPIO رزبری Pico از زبان برنامه نویسی میکروپایتون استفاده می‌کنیم. زبان برنامه نویسی میکروپایتون برگرفته از پایتون و توسعه یافته برای بردهای امبدد است. در میکروپایتون از کلاس ها برای فراخوانی تابع مورد نظر استفاده می‌شود. برای فراخوانی پایه های GPIO رزبری Pico از کلاس machin.Pin استفاده می‌کنیم.

class Pin – control I/O pins کلاس پایه ها – کنترل پایه های I/O:

از آبجکت Pin برای کنترل پایه ها I/O یا همان GPIO استفاده می‌شود. آبجکت های تعریف شده برای پایه ها با پایه های فیزیکی مرتبط است و برای دریافت دیتا از ولتاژ ورودی و خروجی استفاده می‌شود. کلاس پین ها دارای یک متد مشخص برای مشخص کردن ورودی، خروجی IN ,OUT است که توسط این کلاس سطح منطقی دیجیتال مانند کنترل ورودی آنالوگ مشخص خواهد شد. آبجکت های تعریف شده برای هر پایه هویت آن پایه را مشخص می‌کند.

 

مدل تعریف پایه ها در کلاس

 

محدودیت در دسترسی کامل به این مجموعه آموزش

 

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

 

برای مشخص کردن وضعیت پایه ها از کلاس های زیر استفاده می‌شود.

دستورات پایه های GPIO رزبری پای پیکو در میکروپایتون - دیجی اسپارک

 

نام گذاری پایه های GPIO رزبری پای پیکو - دیجی اسپارک

 


مثال ۱ – روشن شدن LED داخلی


در مثال اول ال ای دی داخلی برد رزبری پای پیکو را فعال می‌کنیم. ال ای دی داخلی به پایه های GPIO رزبری Pico شماره ۲۵ برد متصل است. برای فراخوانی این پایه آبجکت machin.Pin را وارد برنامه می‌کنیم. اگر بخواهیم ال ای دی روی برد روشن شود، بایستی از کلاس P0.value(1) استفاده کنیم. منظور از p0 پایه انتخابی است که دلخواه است.

from machine import Pin
led = Pin(25, Pin.OUT)
led.value(1)

در این کد ال ای دی gpio شماره ۲۵ است و مد کاری آن Pin.OUT است که به معنی خروجی است. سپس این پایه در متغیری با نام دلخواه led ذخیره شده است. در نهایت برای روشن شدن ال ای دی متغیر بایستی دارای مقدار ۱ باشد تا روشن شود.

مثال 1 - روشن شدن LED داخلی رزبری پیکو با میکروپایتون - دیجی اسپارک

 

  • ۱: قدم اول انتخاب برد MicroPython (Raspberry Pi Pico) است.
  • ۲: کد را در صفحه ی جدید تایپ کنید.
  • ۳: سپس RUN کنید.
  • برنامه اجرا شده و ال ای دی روی برد طبق تصویر زیر روشن خواهد شد.

کنترل ال ای دی با میکروپایتون در رزبری پای Pico - دیجی اسپارک

 


مثال ۲: اضافه شدن کلید


در مثال دوم شناخت پایه های GPIO رزبری Pico یک ورودی به صورت فیزیکی همانند کلید در برنامه اضافه می‌کنیم. بدین صورت که با فشردن کلید ال ای دی روشن شود. برای اینکار در ابتدا کلید بایستی در نقش ورودی پول دان در برنامه تعریف شود. ال ای دی نقش خروجی دارد و در برنامه به صورت OUTPUT تعریف می‌شود. کد برنامه به صورت زیر است.

from machine import Pin
import time

led = Pin(15, Pin.OUT)
button = Pin(14, Pin.IN, Pin.PULL_DOWN)

while True:
    if button.value():
	    led.toggle()
        time.sleep(0.5)

 

مثال 2: اضافه شدن کلید در میکروپایتون با Pico - دیجی اسپارک

 

کدنویسی رزبری پای پیکو با میکروپایتون micropython - دیجی اسپارک

 

در این کد از بازه زمانی برای ایجاد وقفه در برنامه استفاده شده است که در آموزش های بعدی توابع و کلاس های مورد نیاز را فرا خواهیم گرفت. دو مود Mode در این کد استفاده شده است. ورودی به صورت زیر تعریف شده است.

 

محدودیت در دسترسی کامل به این مجموعه آموزش

 

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

 

دستور وقفه در میکروپایتون با Pico - دیجی اسپارک


اتصال کلید و LED به رزبری پای پیکو


برای انجام اتصالات از تمامی پایه های GP سبز رنگ میتوانید استفاده کنید.

  • پایه ال ای دی را به پایه GP14 اتصال دهید.
  • پایه کوتاه را به پایه GND اتصال دهید.
  • پایه کلید را به پایه ی GP13 اتصال دهید.
  • پایه دیگر کلید را به پایه ۳٫۳ ولت اتصال دهید.

اتصال کلید و LED به رزبری پای پیکو - دیجی اسپارک

 


وسایل مورد نیاز


رزبری پای پیکو 

ال ای دی

میکروسوییج

 

کد نویسی میکروپایتون با رزبری پای پیکو پروژه ال ای دی و میکروسوئیچ - دیجی اسپارک

 


جمع بندی لیدی پای


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

 

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

 

درباره نویسنده

پریسا پوربلورچیان

تولید کننده محتوا / کارشناس IOT

زندگی یعنی پژوهش و فهمیدن چیزی جدید

تلاشم بر این است تجربیاتم در زمینه IOT‌ را به بهترین شکل با شما در میان بگذارم.

تبادل نظر و رفع عیب با ثبت دیدگاه

۲۶ دیدگاه