چشمک زن با استفاده از ۸۰۵۱

يکی ديگر از مدارهای چشمک زن طراحی آن با استفاده از ميکروکنترلر ۸۰۵۱ است.برای بستن اين مدار به يک پروگرمر،ميکروکنترلری از خانواده ی ۸۰۵۱ و نرم افزاری برای نوشتن برنامه ی آن به زبان اسمبلی احتياج داريد.(مانند keil uvision)(و هم چنين به نرم افزار مربوط به پروگرمر برای لود کردن فايل نياز است که متاسفانه در آز آماتوری نرم افزار مربوط به پروگرمر DATAMAN نيست!)

برای اينکه LED چشمک بزند، هم می توان از يک تايمر داخلی استفاده کرد و هم با استفاده از حلقه های تودرتو در برنامه ای که به ميکرو داده می شود وقت CPU را تلف کرد.که ما از روش دوم استفاده می کنيم.

ابتدا بايد برنامه ی مورد نظر را در keil uvision بنويسيد و سپس آن را به فرمت hex تبديل کنيد.

برنامه ی زير برای ايجادdelay تاخير زمانی استفاده می شود:

include <AT89x51.H>

MAIN:

    MOVE P1,#0

    MOVE R0,#255

    MOVE R1,#255

    MOVE R2,#15

LOOP:

    CPL P1_6

    LCALL DELAY

    SJMP LOOP

DELAY:

    DJNZ R0,DELAY

    MOVE R0,#255

    DJNZ R1,DELAY

    MOVE R1,#255

    DJNZ R2,DELAY

    MOVE R2,#10

    RET

END

تاخير زمانی ايجاد شده تقريبا ۱.۵ ثانيه است.ابتدا با استفاده از دستور cpl وضعيت LED برعکس می شود.بعد تاخير صدا زده می شود که اين تاخير در يک حلقه ی بينهايت تکرار می شود.

اين برنامه ی مورد استفاده برای مدار چشمک زن بود.در يادداشت بعدی شکل مدار رو هم می گذارم.

باتشکر از آقای نجفی که اين مدار رو طراحی کردند.

(لطفا اگر کسی سرور مناسبی رو برای قرار دادن عکس در وبلاگ می شناسه در قسمت نظرات آدرسش رو بگذاره.در صورتی که نتونم سرور مناسب رو پيدا کنم شکل مدار رو به صورت فايل در يادداشت بعدی می گذارم.)

 

/ 4 نظر / 9 بازدید
محمد صادق افراسيابی

سلام. مطالبت رو خوندم. خيلی خوب بود. دوست داری با سايت خبری پرشين بلاگ کار کنی و مقاله بدی؟ اگه دوست داشتی خبرم کن.

پریسا

مدارت که جواب نمی ده!یه مدار درست بذار!

فرشته

چرا جواب نمی ده؟اگه ممکنه بيشتر توضيح بده