رفتن به مطلب
Mehdi.Aref

پروژه کنترل ترافیک

پست های پیشنهاد شده

این برنامه یک برنامه ساده برای کنترل 2 چراغ قرمز در یک چهار راه است طرز کار ان بدین گونه است که هنگامی که لامپ قرمز چراغ اول روشن است لامپ سبز چراغ دوم روشن است و چراغ عابر پیاده اول روشن و چراغ عابر پیاده دوم خاموش است (حالت اول) .

سپس بعد ازمدت 50 ثانیه همچنان که لامپ قرمز اول روشن است لامپ سبز چراغ دوم خاموش شده ولامپ زردچراغ دوم روشن می شود و چراغ عابر پیاده اول به علامت هشدار به مدت 10 ثانی به صورت چشمک زن روشن و خاموش می شود (حالت دوم)وسپس بعد از این 10 ثانیه مدار به حالت سوم رفته و بعد از ان هم به حالت چهارم می رود وبعد دوباره به حالت اول برگشته و این حلقه ادامه پیدا میکند.حالت سوم و چهادم هم مثل حالت اول و دوم کار می کند با این تفاوت که وضعیت هدایت چراغ ها عکس می شود.

 

$regfile = "m8def.dat" ‘* تعیین نوع میکرو و مقدار کریستال

$crystal = 1000000 ‘*وتعیین پورت به عنوان خروجی

Config Portb = Output

Dim S As Byte

'----------------------------------------------------------------------------------------------------------

R1 Alias Portd.0 ‘* تعویض نام پایه های پورت با نامهای مناسب دلخواه

Y1 Alias Portd.1

G1 Alias Portd.2

R2 Alias Portd.3

Y2 Alias Portd.4

G2 Alias Portd.5

A1 Alias Portd.6

A2 Alias Portd.7

 

S = 20 : Y2 = 0 : G1 = 0 ‘*مقدار دهی اولیه به متغیر و پایه های پورت

'-----------------------------------------------------------------------------------------------------------

Main:

S = 20 : R1 = 1 : R2 = 0 : Y1 = 0 : G2 = 1 : A1 = 1 : A2 = 0‘* حالت اول

Wait 50

'-----------------------------------------------------------------------------------------------------------

G2 = 0 : Y2 = 1

Next1:

Toggle A1

Waitms 500 ‘* حالت دوم

Decr S

If S > 0 Then

jmp next1

Else

'-----------------------------------------------------------------------------------------------------------

S = 20 : R1 = 0 : R2 = 1 : Y2 = 0 : G1 = 1 : A1 = 0 : A2 = 1

Wait 50 ‘*حالت سوم

G1 = 0 : Y1 = 1

'-----------------------------------------------------------------------------------------------------------

Next2:

Toggle A2

Waitms 500

Decr S ‘*حالت چهارم

If S > 0 Then

jmp next2

Else

jmp main

'-----------------------------------------------------------------------------------------------------------

End If

End If ‘* پایان برنامه

End

‘-----------------------------------------------------------------------------------------------------------

به اشتراک گذاری این ارسال


لینک به ارسال
به اشتراک گذاری در سایت های دیگر

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

مهمان
ارسال پاسخ به این موضوع ...

×   شما در حال چسباندن محتوایی با قالب بندی هستید.   حذف قالب بندی

  تنها استفاده از ۷۵ اموجی مجاز می باشد.

×   لینک شما به صورت اتوماتیک جای گذاری شد.   نمایش به عنوان یک لینک به جای

×   محتوای قبلی شما بازگردانی شد.   پاک کردن محتوای ویرایشگر

×   شما مستقیما نمی توانید تصویر خود را قرار دهید. یا آن را اینجا بارگذاری کنید یا از یک URL قرار دهید.


×
×
  • جدید...