۲۲-بهمن-۱۳۹۱, ۲۲:۴۸:۵۲
دوست عزیز انگار من نتوانستم خوب توضیح بدهم
خطی که a=0 است همیشه اجرا می شود پس همیشه ودر همه جای برنامه a=0 است در نتیجه مثلا ال ای دی روشن است و خاموش نخواهد شد
a=0 را باید در جایی قرار دهیم که مثلا اطلاعات سریال وارد شود
()data=Inkey
if data=10 then a=0
if data=20 then b=0
if data=30 then c=0
تنها در این صورت است که برنامه کار می کند
توضیح برنامه هم به این صورت است که در لحظه وارد شدن داده از طریق پورت سریال
اگر داده برابر 10 شد a برابر صفر می گردد
در وقفه تایمر چون a کوچکتر از 500 است ال ایی دی روشن شده وهر بار یک واحد به a افزوده می شود
وقتی a به 500 رسید ال ای دی خاموش شده و دیگر به a اضافه نمی شود
در ضمن خط If A > 500 Then A = A + 1 هم اشتباه است در ست ان
If A < 500 Then A = A + 1
موفق باشی
[attachment=8740]مثالی با سی برایت ارسال کردم اگر اگر از طریق سریال 10 واردشد portb.0 500 میلی ثانیه روشن بعد خامش می شود همینطور اگر 20 باشد portb.1
و اگر 30 باشد portb.1
هگز برنامه هم پیوست می باشد می توانی تست کنی
خطی که a=0 است همیشه اجرا می شود پس همیشه ودر همه جای برنامه a=0 است در نتیجه مثلا ال ای دی روشن است و خاموش نخواهد شد
a=0 را باید در جایی قرار دهیم که مثلا اطلاعات سریال وارد شود
()data=Inkey
if data=10 then a=0
if data=20 then b=0
if data=30 then c=0
تنها در این صورت است که برنامه کار می کند
توضیح برنامه هم به این صورت است که در لحظه وارد شدن داده از طریق پورت سریال
اگر داده برابر 10 شد a برابر صفر می گردد
در وقفه تایمر چون a کوچکتر از 500 است ال ایی دی روشن شده وهر بار یک واحد به a افزوده می شود
وقتی a به 500 رسید ال ای دی خاموش شده و دیگر به a اضافه نمی شود
در ضمن خط If A > 500 Then A = A + 1 هم اشتباه است در ست ان
If A < 500 Then A = A + 1
موفق باشی
[attachment=8740]مثالی با سی برایت ارسال کردم اگر اگر از طریق سریال 10 واردشد portb.0 500 میلی ثانیه روشن بعد خامش می شود همینطور اگر 20 باشد portb.1
و اگر 30 باشد portb.1
هگز برنامه هم پیوست می باشد می توانی تست کنی