خواندن داده حسگر I2C با Wire
خواندن حسگر I2C با Wire را با یک آزمایش قابل تکرار یاد میگیریم. پس از پیدا کردن نشانی، باید قالب رجیسترها را از دیتاشیت همان حسگر بخوانید؛ همه حسگرها فرمان و ترتیب بایت یکسان ندارند.

وسایل و پیشنیازهای خواندن حسگر I2C با Wire
از حسگری استفاده کنید که نقشه رجیستر آن در اختیار شماست. نشانی، رجیستر شناسه یا داده و تعداد بایت خروجی را یادداشت کنید.
مراحل عملی
با Wire.beginTransmission(address)، شماره رجیستر را بنویسید و با endTransmission(false) ارتباط را ادامه دهید. سپس requestFrom را برای تعداد بایت لازم فراخوانی و قبل از read تعداد available را بررسی کنید. تبدیل بایتها به عدد باید دقیقاً مطابق دیتاشیت انجام شود.
- قطعات را با تغذیه قطعشده ببندید و اتصالات را بررسی کنید.
- ابتدا نمونه ساده همان بخش را اجرا و خروجی را ثبت کنید.
- فقط بعد از تأیید هر مرحله، قطعه یا قابلیت بعدی را اضافه کنید.
عیبیابی
اگر مقدار ثابت یا غیرعادی بود، ترتیب بایتها، علامتدار بودن داده، زمان نمونهبرداری و کد خطای endTransmission را بررسی کنید. حدس زدن ضریب تبدیل اندازهگیری را بیاعتبار میکند.
تمرین و ارزیابی
مقدار خام و مقدار تبدیلشده را کنار هم در مانیتور سریال چاپ کنید.
نتیجه را با یادداشت مقدار ورودی، خروجی مورد انتظار و خروجی مشاهدهشده ارزیابی کنید. در پروژههای چندقطعهای، هر بخش را پیش از ترکیب جدا امتحان کنید.
درسهای مرتبط
منبع تکمیلی: راهنماهای رسمی Arduino و مرجع زبان و کتابخانهها.