کنترل ساده LED توسط کامپیوتر

در این مدار با نحوه کنترل یک led توسط کامپیوتر آشنا می شوید.در این مدار احتیاجی به منبع تغذیه ندارید.در ضمن با یکی از استانداردهای معروف ارسال سریال به نام استاندار RS232 آشنا می شوید.این نوع از استاندارد ارسال نه تنها در کامپیوترها بلکه در صنعت و در ارسال تصاویر و کلمات در LCD ها و موارد دیگر نیز کاربرد دارند.استانداردهای ارسال ودریافت سریال دیگری نیز وجود دارند.مانند استانداردRS248، فرق این استانداردها با یکدیگر در نرخ ارسال ودریافت وپین های مربوط به ارسال ودریافت می باشد.

قطعات مورد نیاز

  • 1 عدد led معمولی
  • یک عدد کابل RS232
  • برد بورد یا برد مسی سوراخدار
  • سیم تلفنی
  • محیط برنامه نویسی ویژوآل بیسیک

در این نوع از استاندارد ارسال ودریافت از طریق کامپیوتر، پین 5 زمین یا گراند است.در این استاندارد تنها سه پین خروجی وجود دارند.این سه پین عبارتند از DTR پین 4،TXD پین 3 ،RTS پین 7 .

نحوه بستن مدار

اگر به کابل RS232 که تهیه کرده اید به خوبی نگاه کنید.، متوجه یک سری شماره از 1 تا 9 روی سوکت آن می شوید.، این شماره ها در واقع همان شماره پینهای مربوط به ارسال و دریافت هستند.،در این مدار ما به2 پین احتیاج داریم . پین 4 DTR ،پین 5 GND ،پین 5 در واقع زمین ما در ارسال ودریافت استانداردRS232 است که می بایست منفی LED را بر روی برد بورد به آن وصل کنید.،می توانید زمین این کابل را به منفی LED بر روی بردهای سوراخدار مسی لحیم کنید.وکل مدار خود را بر روی برد های سوراخدار مسی به جای برد بورد پیاده سازی کنید.از سیمهای تلفنی که در اختیار دارید حدود 2 تکه 5سانتی متری ببرید.حال با استفاده از هویه و سیم قلعی که تهیه کرده اید این سیمها را به پینهای سوکت RS232 که مشخص شده است.، لحیم کنید . در هنگام لحیم کردن به شماره پینها دقت کنید.،شماره هر پین در کنار آن بر روی سوکت نوشته شده است.حال DTR را که پین 4 است.را به مثبت LED وصل کنید.، و برنامه را اجرا کنید.

نقشه مدار

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

برنامه مدار

در ابتدای برنامه متغییر output معرفی شده است.نوع این متغییر Integer یا عدد صحیح است.در خطوط بعدی رویداد های مربوط به کلیک دکمه start معرفی شده است.بارگذاری اولیه تایمر و فعال کردن تایمر،رویداد مربوط به کلیک دکمه stop را در خطوط بعدی مشاهده می کنید.به محض کلیک این دکمه تایمر برنامه متوقف می شود.در قسمت FORM_LOAD به بارگذاری اولیه برنامه در هنگام بالا آمدن اشاره می کند.پورت سریال شماره 2 باز می شود ودر صورت بسته بودن به طور مثال اگر MOUSE به آن وصل باشد پیغام خطای پورت قابل دسترسی نیست را می دهد.مقدار اولیه تایمر 250 میلی ثانیه است.تایمر نیز ENABLE یا فعال می شود.متغییر OUTPUT نیز مقدار صفر را به خود اختصاص می دهد.در قسمت HSCROLL1_CHANGE تایمر یک ،توسط SCROLLBAR ای که بر روی فرم قرار دارد مقدار دهی می شود.با توجه به اینکه مقدار اولیه آن 100 بارگذاری شده با مقدار 10 جمع می شود.وفاصله زمانی بین پالسها 110 میلی ثانیه است.در انتهای برنامه متغییر OUTPUTمقدار دهی می شود.اگر یک باشد.،صفر می شود.، و اگر صفر باشد یک می شود.در خط انتهایی مقدار DTR برابر مقدار OUTPUT است.وفاصله زمانی این بارگذاری ها توسط Scrollbar موجود بر روی فرم تعیین می شود.

  1: Dim Output As Integer
  2:  
  3:  Private Sub Command1_Click()
  4:    Timer1.Interval = HScroll1.Value + 10
  5:    Timer1.Enabled = True
  6:  End Sub
  7:  
 8:  Private Sub Command2_Click()
 9:    Timer1.Enabled = False
 10:  End Sub
 11:  
 12:  Private Sub Form_Load()
 13:   i = OPENCOM("COM2,1200,N,8,1")
 14:   If i = 0 Then MsgBox ("COM Port unavailable")
 15:   Timer1.Interval = 250
 16:   Timer1.Enabled = True
 17:   Output = 0
 18:  End Sub
 19:  
 20:  Private Sub Form_Unload(Cancel As Integer)
 21:  CLOSECOM
 22:  End Sub
 23:  
 24:  Private Sub HScroll1_Change()
 25:   Timer1.Interval = HScroll1.Value + 10
 26:  End Sub
 27:  
 28:  Private Sub Timer1_Timer()
 29:    If Output = 1 Then Output = 0 Else Output = 1
 30:    If Output = 1 Then DTR 1 Else DTR 0
 31:  End Sub

برنامه ماژول

برای انجام پروژه های اینترفیس (Interface) باید پینها وعباراتی را که احتیاج دارید در قسمت ماژول وارد کنید.در این برنامه ما احتیاج داریم که یک پورت سریال را باز کنیم بعد از تمام شدن برنامه آنرا ببندیم.از پین DTR استفاده کنیم.و عمل ارسال یا send را انجام بدهیم تمامی این موارد در این ماژول کاملا رعایت شده است.خط 2 برنامه پورت را باز میکند.،خط3اگر برنامه را شما ببندید پورت را می بندد.و از باز بودن پورت جلوگیری می کند.خط4 مربوط به ارسال است.و خط آخر پین DTR را به عنوان خروجی معرفی می کند.

   
  1:  Declare Function OPENCOM Lib "Port" (ByVal A$) As Integer
  2:  Declare Sub CLOSECOM Lib "Port" ()
  3:  Declare Sub SENDBYTE Lib "Port" (ByVal b%)
  4:  Declare Sub DTR Lib "Port" (ByVal b%)
  5:  End Sub

مقالات مشابه

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

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

Fill out this field
Fill out this field
لطفاً یک نشانی ایمیل معتبر بنویسید.
You need to agree with the terms to proceed

پر بازدید ترین مقالات