مدار شبیه سازی شده
دراین مقاله با نحوه شبیه سازی المانهای منطقی توسط کامپیوتر و استاندارد RS232 می شوید.در این مدار نیازی به منبع تغذیه یا باطری ندارید.
قطعات مورد نیاز
کابل RS232
1 عدد LED
2 کلید 1 حالته
برد بورد
سیم تلفنی
محیط برنامه نویسی ویژوآل بیسیک
کابل RS232
در این نوع از استاندارد ارسال ودریافت از طریق کامپیوتر، پین 5 زمین یا گراند است.در این استاندارد تنها سه پین خروجی وجود دارند.این سه پین عبارتند از DTR پین 4،TXD پین 3 ،RTS پین 7 به شکل پینها واسامی آنها در زیر توجه کنید.
نحوه بستن مدار
اگر به کابل RS232 که تهیه کرده اید به خوبی نگاه کنید.، متوجه یک سری شماره از 1 تا 9 روی سوکت آن می شوید.، این شماره ها در واقع همان شماره پینهای مربوط به ارسال و دریافت هستند.،در این مدار ما به 5 پین احتیاج داریم .،پینهای 4و5و6و7و8 پین 4 DTR ،پین 5 GND ،پین 6 DSR،پین 7 RTS ،پین 8 CTS،پین 5 در واقع زمین ما در ارسال ودریافت استانداردRS232 است که می بایست منفی LED را بر روی برد بورد به آن وصل کنید.،می توانید زمین این کابل را به منفی LED بر روی بردهای سوراخدار مسی لحیم کنید.وکل مدار خود را بر روی برد های سوراخدار مسی به جای برد بورد پیاده سازی کنید.از سیمهای تلفنی که در اختیار دارید حدود 5 تکه 5سانتی متری ببرید.حال با استفاده از هویه و سیم قلعی که تهیه کرده اید این سیمها را به پینهای سوکت RS232 که مشخص شده است.، لحیم کنید . در هنگام لحیم کردن به شماره پینها دقت کنید و برای اینکه بعدا مشکلی پیش نیاید بهتر است برای هر پین یک سیم رنگی مجزا در نظر بگیرید.،شماره هر پین در کنار آن بر روی سوکت نوشته شده است.حال DTR را که پین 4 است.را به مثبت LED وRTS را که پین 7 میباشد.، را به سر یکی از کلیدهای دوحالته بر روی برد بورد وصل کنید. و سر دیگر این کلید را به پین 6 وصل کنید..یک سر کلید دیگر را به پین 8 یا CTS وصل کنید.مانند حالت قبل سر دیگر این کلید را به پین 6 وصل کنید.
نقشه مدار
به نقشه مدار در شکل زیر توجه کنید.،زمانیکه کلید اول بسته می شود.،CTS حاوی ولتاژ می شود.و زمانیکه کلید دوم بسته می شود.DSR حاوی ولتاژ می شود.بر اساس برنامه ای که به زبان ویژوآل بیسیک نوشته شده.با توجه به ولتاژ دار شدن این دو پین DTR حاوی ولتاژ می شود.ودر واقع بر اساس نوع گیت LED روشن وخاموش می شود.
برنامه ویژوال بیسیک
این برنامه به زبان ویژوال بیسیک نوشته شده.در ابتدای برنامه متغییر logic معرفی شده است.سپس در قسمت load شدن برنامه باز بودن یا نبودن پورت دوم سریال کامپیوتر بررسی می شود به طور مثال اگر به این پورت وسیله ا ی مثل موس(mouse) وصل باشد.عبارت داخل message box که بیان می کند پورت آزاد نیست بر روی صفحه نمایش یا مانیتور آشکار می شود.در خطوط بعدی پین RTS و متغییر logic با مقدار یک بار گذاری می شوند.در ادامه دستور closecom را می بینید.به محض اینکه شما برنامه را ببندید.،پورت سریال شماره 2 نیز بسته می شود.این به این خاطر است که پورت 2 برای همیشه باز نماند.،خطوط بعدی برنامه به OPTION های XOR ، NOR ، AND ، NAND ، OR اشاره شده است.
در انتهای برنامه مقادیر CTS ,DSR که توسط RTS بارگذاری می شوند.در داخل دو متغییر A,B قرار می گیرند.نتیجه در پین DTR بارگذاری می شود.نتیجه بارگذاری شده در DTR باعث روشن و خاموش شدن LED می شود.
1:
2: Dim Logic
3: Private Sub Form_Load()
4: If OPENCOM("COM2:9600,N,8,1") = 0 Then MsgBox "COM2 not free"
5: RTS 1
6: Logic = 1
7: End Sub
8:
9: Private Sub Form_Unload(Cancel As Integer)
10: CLOSECOM
11: End Sub
12:
13: Private Sub Option1_Click()
14: Logic = 1
15: Label3.Caption = "AND"
16: End Sub
17:
18: Private Sub Option2_Click()
19: Logic = 2
20: Label3.Caption = "OR"
21: End Sub
22:
23: Private Sub Option3_Click()
24: Logic = 3
25: Label3.Caption = "NAND"
26: End Sub
27:
28: Private Sub Option4_Click()
29: Logic = 4
30: Label3.Caption = "NOR"
31: End Sub
32:
33: Private Sub Option5_Click()
34: Logic = 5
35: Label3.Caption = "XOR"
36: End Sub
37:
38: Private Sub Timer1_Timer()
39: A = CTS: b = DSR
40: Text1.Text = Str$(A)
41: Text2.Text = Str$(b)
42: If Logic = 1 Then C = A And b
43: If Logic = 2 Then C = A Or b
44: If Logic = 3 Then C = (Not (A And b)) And 1
45: If Logic = 4 Then C = (Not (A Or b)) And 1
46: If Logic = 5 Then C = A Xor b
47: Text3.Text = Str$(C)
48: DTR C
49: End Sub
برنامه Module
برای انجام پروژه های اینترفیس (Interface) باید پینها وعباراتی را که احتیاج دارید در قسمت ماژول وارد کنید.
1:
2: Declare Function OPENCOM Lib "Port" (ByVal A$) As Integer
3: Declare Sub CLOSECOM Lib "Port" ()
4: Declare Sub SENDBYTE Lib "Port" (ByVal b%)
5: Declare Function READBYTE Lib "Port" () As Integer
6: Declare Sub DTR Lib "Port" (ByVal b%)
7: Declare Sub RTS Lib "Port" (ByVal b%)
8: Declare Function CTS Lib "Port" () As Integer
9: Declare Function DSR Lib "Port" () As Integer
10: End Sub
فایلهای DLL
برای اجرا کردن این این برنامه میبایست یک سری فایل DLL را در دایرکتوری SYSTEM ویندوز کپی کنید.
در هنگام دانلود کردن این فایلها پنجره ای باز می شود. بر روی دکمه Save کلیک کنید و فایل فشرده DLL را بر روی کامپیوتر ذخیره کنید. سپس با استفاده از نرم افزار های مثل Winrar این فایل فشرده را باز کنید و آنرا در داخل دایرکتوری System ویندوز کپی کنید .