دوست عزیز همانطور که گفتم این تابع وقفه بدون اضافه کردن کد مربوط به ثبت داده ها در کارت حافظه به خوبی کار می کنه و مشکلی نداره دیگه
دوست عزیز همانطور که گفتم این تابع وقفه بدون اضافه کردن کد مربوط به ثبت داده ها در کارت حافظه به خوبی کار می کنه و مشکلی نداره دیگه
سلام آقا ایراد کار رو با تغییر عبارت شرطی if یا همان تابع زمانی به صورت بزرگتر مساوی 1000 میلی ثانیه حل کردم . اما وقتی به این تابع اینتراپت پالس دور می دم اولش نسبتا خوبه ولی وقتی دور پالس داده شده بالا می ره یه تعداد دور رو از دست می ده و نمی خونه به جای اینکه دوری که می خونه زیاد بشه کم میشه یا حتی اصلا منفی میشه؛ دلیلش چیه این؟ به نظرم
به این شکل است یعنی :
دور داده شده که با تاکومتر خوانده شده بر حسب دور بر دقیقه - دور خوانده شده توسط پایه اینتراپت برد آردوینو
1400 1499
1470 1559
1660 1679
1980 2038
2500 منفی 1713
3030 منفی 1174
بعدش دور مثبت نشون میده ولی به جای اینکه زیاد شه کم میشه
دوستان بالاخره مشکل حل شد. شکر خدا ولی دقتش اگه بره بالاتر خیلی بهتر میشه یه نکته هست که هرچی اختلاف زمان داخل عبارت شرطی if را زیادتر کنیم دقت بهتر میشه مثلا هر 4 ثانیه اگر در سریال مانیتور نشان داده شود خطای خواندن دور حدود 15 دور می رسه ولی خوب دیگه لحظه ای دور را نخواهیم داشت. ایرادش اینه