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

سون سگمنت چیست و چگونه کار می کند؟

کاور درونی پست آموزش سون سگمنت

مقدمه

سلام. یکی از متداول ترین و ساده ترین نمایشگر های موجود، سون سگمنت ها (7Segment) هستند. فقط کافیه یه نگاهی به وسایلی دور و برمون هست بندازیم تا یکی از این نمایشگر هارو ببینیم.

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

  • سون سگمنت چیست و چگونه کار می کند
  • تفاوت 7segment کاتد مشترک و آند مشترک
  • راه اندازی سون سگمنت با آردوینو
  • ساخت تاس دیجیتال با 7segment

سون سگمنت چیست و چگونه کار می کند؟

همینجور که از اسمش مشخصه، 7segment قطعه ایه که 7 قسمت (7 تا ال ای دی) داره. این ال ای دی ها به شکل عدد 8 انگلیسی در کنار هم قرار گرفتن. با این 7 قسمت، میشه اعداد و برخی از حروف رو نشون داد. اگه دقیق تر بخوام بگم، با این 7 ال ای دی میشه اعداد هگز (مبنای 16) رو نشون دارد.

اعداد هگز یعنی:

0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F

برای اینکه بشه کاربرد های 7segment رو افزایش بدن، یک ال ای دی دیگه هم به شکل “نقطه” (Decimal point) به سون سگمنت ها اضافه شد. اینجوری در اصل ما 8 تا قسمت داریم، ولی هنوز بهش میگیم 7segment!

سون سگمنت

برای سادگی کار با سون سگمنت ها، هر بخش با یک حرف نام گذاری شده است. (مثلا به ال ای دی خط افقی بالایی میگیم A)

بخش های مختلف سون سگمنت

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

برای کاهش تعداد پایه های مورد نیاز برای کنترل سون سگمنت ها، پایه های کاتد (منفی) ال ای دی هارو به هم وصل کردن و اسم اون پایه رو پایه ی “مشترک” (Common) گذاشتن.

پس برای راه اندازی این سون سگمنت ها کافیه پایه ی مشترک رو به زمین (GND) وصل کنیم و پایه ی آند (مثبت) ال ای دی ای مدنظر رو به ولتاژ مورد نیاز وصل کنیم تا اون ال ای دی روشن بشه.

در سون سگمنت های آند مشترک، قضیه کاملا برعکسه و تمام پایه های آند ال ای دی ها به هم وصل شده. پس برای راه اندازی آن ها باید پایه ی آند رو به ولتاژ تغذیه وصل کرد و پایه ی کاتد ال ای دی ای که میخایم روشن کنیم رو به زمین وصل کنیم.

سون سگمنت CC و CA

ترتیب پایه های سون سگمنت

باتوجه به سایز و نوع سون سگمنت ها، ترتیب و شکل قرار گیری پایه ها ممکنه متفاوت باشه. متداول ترین شکل اون در این آموزش مطرح شده.

پایه بندی سون سگمنت

دو پایه Com که همون پایه های مشترک ال ای دی ها هستند در داخل سون سگمنت به هم وصل شدن. (یعنی میتونیم از یکیش استفاده کنیم)

سایزها و رنگ های مختلفی از سون سگمنت تو بازار وجود داره و ولتاژ و جریان کاری اونا با هم متفاوته. هنگام خرید باید دقت کنید که کدوم سایز رو می خرید. (سایز متداولی که در بازار موجوده، سون سگمنت 0.56 اینچه که ولتاژ کاریش حدود 2 ولته.) اینو میدونیم که اعمال ولتاژ خیلی بالاتر از حد توان یه LED اونو میسوزونه!

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

برای اینکار اول باید کتابخونه ی مورد نیازشو نصب کنیم. فایل کتابخونه رو می تونید از اینجا دانلود کنید و اونو به IDE آردوینو اضافه کنید.

برای نصب کتابخونه در نرم افزار IDE آردوینو، از منوی Sketch گزینه ی Include Library و سپس گزینه ی Add .ZIP Library را انتخاب کنید. فایل کتابخونه ای که دانلود کردید رو انتخاب کنید تا براتون نصیب شه.

اگه نصب کتابخونه براتون راحت نیست اول این آموزش رو بخونید.

برای نمایش اعداد و حروف مدنظرمون، کافیه بخش های مورد نیاز رو  به ترتیبی که در عکس زیرنمایش داده شده روشن کنیم. (اگر این کار به نظرتون سخت یا طولانی میاد، نگران نباشید، کتابخونه خودش این کارو برامون می کنه!)

جدول تبدیل برای سون سگمنت

اینجا باید یه نکته ای رو یادآوری کنم و اونم اینکه بعضی وقتا اگه ما از کتابخونه های آماده سافتاده نکنیم خیلی خیلی بهتره، جرا؟ چندتا دلیل داره: اول اینکه معمولا کتابخونه ها عمومی نوشته شده پس حجم کد زیادی ازتون میگیره و دوم اینکه وقتی خودتون کد رو میزنید کااااملا بهش مسلط هستید و هرجا که دوست داشتید تغییر ایجاد میکنید. شاید یکم سخت باشه ولی بیاید تلاش کنیم برای کارایی که سبک تره مثل همین سون سگمنت خودمون کدش رو 0 تا 100 بنویسیم.

سیم بندی

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

کاتد مشترک:

مدار سون سگمنت کاتدمشترک

آند مشترک:

مدار سون سگمنت آندمشترک

یه سول ! میدونید چرا بجای اینهمه مقاومت فقط یه مقاومت به پایه مشترک 7segment وصل نکردیم؟ جواب هارو برامون کامنت کنید.

کد

کد زیر اعداد 0 تا 9 رو به ترتیب روی سون سگمنت نمایش میده. اگه سیم بندی رو طبق عکس های بالا انجام دادید، نیازی به تغییر کد زیر نیست و میتونید همین کد رو روی آردوینو آپلود کنید. درغیر این صورت اول کد رو تغییر بدید و سپس اونو روی بردتون آپلود کنید.

توضیح بخش های مختلف کد

اول کد طبق معمول، کتابخونه ی سون سگمنت  رو به کد اضافه می کنیم و یک شئ (object) به نام sevseg از این کتابخونه می سازیم (اسمش هرچی میتونه باشه ها).

متغیر numDigits تعداد سون سگمنت های مارو مشخص میکنه. (مثلا اگه از 7segment دوتایی استفاده می کنید، مقدار اون رو 2 بذارید)

آرایه ی  digitPins برای تعریف شماره پایه های مشترک (Com) برای سون سگمنت های چندتاییه. اگر از سون سگمنت تکی استفاده می کنید، اونو خالی بگذارید.

تو آرایه ی segmentPins باید شماره پایه های 7segment که به آردوینو متصل شدن رو مشخص کنیم. به ترتیب پایه ها دقت کنید.

بعد از تعریف متغیر های مورد نیاز، با دستور sevseg.begin متغیر ها را به شئ ساخته شده پاس می دهیم، حالا هکه چی آماده ست.

اگر 7segment شما کاتد مشترکه، تو کد به جای COMMON_ANODE باید از COMMON_CATHODE استفاده کنید.

در بخش loop هم، با استفاده از یک حلقه ی for اعداد 0 تا 9 را تولید می کنیم و به ترتیب نمایش میدیم.

ساخت تاس دیجیتال با سون سگمنت و آردوینو

در این بخش میخایم یک تاس دیجیتال بسازیم. هدف پروژه اینه که هربار کلیدو فشار دادیم، به صورت خودکار یک عدد بین 1 تا 6 به صورت تصادفی تولید شه و روی 7segment نمایش داده شه.

سیم بندی

یک کلید را با استفاده از یک مقاومت Pull down به مدار خود اضافه کنید.

کاتد مشترک:

مدار تاس با سون سگمنت کاتدمشترک

آند مشترک:

مدار تاس با سون سگمنت آندمشترک

کد

تغییرات مورد نیاز خود را رو کد زیر اعمال کنید و اونو روی آردوینو خود آپلود کنید.

با کد بالا، هربار که کلید فشرده می شود، با استفاده از تابع random یک عدد بین 1 تا 6 تولید میشه و بعد اون عدد روی 7segment نمایش داده میشه.

نتیجه گیری

برای پروژه هایی که میخوایم ارزون تموم شه یا حتی اطلاعات برای نمایش اونقدر زیاد و پیچیده نیست واقعا 7segment ایده بی نظیریه و الان شما براحتی می تونید باهاش کار کنید

راستی اون نکته ای که راجع به کتابخونه گفتم رو فراموش نکنید.

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

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *