چطوری تغییر یک متغییر رو تشخیص بدم ؟
مثلا متغییر a رو دارم میخوام وقتی کم یا زید شد به برچسب بره و وقتی ثابت هم شد مجددا به برچسب بره
در یک متغیر temp مقدارش رو ذخیره میکنید
بعد روتین تغییر اون رو احرا میکنید و با temp مقایسه اش میکنید
نمیتونید مثل بوجود اومدن وقفه و از هرجای برنامه این کار رو انجام بدید
میخوام یه جور باشه که اگر مثلا 1 ثانیه a مقدارش ثابت بود به یک بر چسب و اگر متغییر بود به برچسب دیگه
مقدار a مشخص نیست که راحت مقایسش کرد . ممکنه 1 یا 20 یا هر عددی بشه و رو هر عددی اگر 1 ثانیه ثابت بود به یک بر چسب برود
من حلقه اصلی برنامه شما رو نمیدونم چقدر طول میکشه و ساختارش چیه و هر چند وقت یک بار a رو پدیت میکنه بخاطر همین تنها پیشنهادی که میتونم بکنم اینه که از وقفه تایمر استفاده کنید...
ولی اگر در زمان های مشخصی a پدیت میشه مثلا هر0.5 ثانیه یک بار، میتونید در دوبار گذر از مرحله پدیت شدن و دیدن این که a با مقدار temp که گفتم برابر هست یا نه فلگتون رو ست یا ریست کنید
راستش می خام با التراسونیک یک سرعت سنج بسازم ، طبق فرمول زیر میشه سرعت رو بدست آورد
V = X/T
توی این فرمول من X رو دارم تنها مشکل من T هست
پیشنهاد شما چیه ؟
به نظرم بهتره T رو ثابت کنید مثلا هر 100 میلی ثانیه یک بار به ماژول اولتراسونیک فرمان بدین و بخونیدش و X رو بدست بیارید
میتونید این کار رو در وقفه یک تایمر انجام بدید
دیدگاه