نمایش نتایج: از 1 به 1 از 1

موضوع: پتانسیومتر دیجیتال ad5171

  1. #1
    Senior Member
    تاریخ عضویت
    Mar 2013
    محل سکونت
    Iran
    نوشته ها
    138

    Lightbulb پتانسیومتر دیجیتال ad5171

    این مثال چگونگی کنترل یک دستگاه آنالوگ AD5171 پتانسیومتر دیجیتال را نشان می دهد که از طریق پروتل سریال I2C سنکرون ارتباط برقرار
    می کند. با استفاده از کتابخانه I2c Wire آردینو ، پتانسیومتر دیجیتال در 64 مرحله از مقاومت، نور یک LED را گام به گام محو خواهد شد.
    پروتکل I2C شامل استفاده از دو سیم برای ارسال و دریافت داده است: یک پین کلاک سریال (SCL) که پالس های آردینو در یک فاصله منظم باشد و دیگر یک پین سریال داده (SDA) ، که داده ها بین دو دستگاه فرستاده می شود. همانطور که پالس کلاک از پایین به بالا(شناخته شده به عنوان لبه بالا رونده کلاک) تغییر می کند، یک بیت از اطلاعات شامل آدرس یک دستگاه به خصوص و یک درخواست برای داده، از آردینو به دستگاه I2C بر روی خط SDA منتقل می شود. وقتی که پین کلاک از بالا به پایین (لبه پایین رونده کلاک) تغییر می کند. بر روی انتقال دستگاه نامیده می شود. داده های آن بر روی خط یکسان به آردینو دیگر برمی گردند. زیرا پروتکل I2C به هر دستگاه فعال اجازه داشتن یک آدرس منحصربه فرد را می دهد و مانند دو دستگاه maste و slave به برقراری به نوبت ارتباط بر روی یک خط تنها میسر می سازد، ممکن است آردینو شما با دستگاه های زیادی (به نوبت) ارتباط برقرار کند درحالی که تنها از دو پین از میکروکنترلر شما استفاده می شود.
    سخت افزار موردنیاز
    برد آردینو
    پتانسیومتر دیجیتال AD5771
    LED
    (1) مقاومت 220 اهم
    (2) مقاومت 4.7 کیلواهم
    بِردبُرد
    سیم
    ad5171_pinconfig.png
    مدار
    پین های 3 ، 6 و 7 از AD5171 را به زمین ، و پین های 2 و 8 به +5V متصل کنید. پین 4 ،پین کلاک پتانسیومتر دیجیتال (SCL) را به پین 5 آنالوگ روی آردینو ، و پین 5، خط(Line) داده (SDA) ، به پین 4 آنالوگ (آدرینو) متصل کنید. به هر دو خطوط SCL و SDA ، مقاومت بالاکش
    (pull up) اضافه ، و هر دو خطوط را به +5V متصل کنید.
    ad5171_bb.jpg
    وقتی پین 6 آردینو ، ADO ، به زمین متصل است ؛ آدرس آن 44 است. برای افزودن یک پتانسیومتر دیگر به درگاه یکسان SDA ، پین ADO پتانسیومتر دوم را به +5V متصل کنید؛ آدرس آن به 45 تغییر می کند. شما تنها می توانید از دو پتانسیومتر بطور هم زمان استفاده کنید.
    شماتیک
    ad5171_sch.jpg
    کد:
    #include <Wire.h> void setup() { Wire.begin(); // I2C پیوستن به درگاه //(آدرس اختیاری برای مستر) } byte val = 0; void loop() { Wire.beginTransmission(44); // انتقال به دستگاه #44 (0x2c) // آدرس دستگاه در دیتاشیت مشخص است Wire.write(byte(0x00)); // بایت دستورالعمل را ارسال می کند Wire.write(val); // بایت مقدار پتانسیومتر را ارسال می کند Wire.endTransmission(); // توقف انتقال val++; // افزایش مقدار if(val == 64) // اگر به شصت و چهارمین موقعیت رسید (max) { val = 0; // شروع از کمترین مقدار } delay(500); }
    لینک سایت:Arduino - DigitalPotentiometer
    ویرایش توسط hesam.time : 04-04-2013 در ساعت 06:51 AM

کلمات کلیدی این موضوع

مجوز های ارسال و ویرایش

  • شما نمیتوانید موضوع جدیدی ارسال کنید
  • شما امکان ارسال پاسخ را ندارید
  • شما نمیتوانید فایل پیوست کنید.
  • شما نمیتوانید پست های خود را ویرایش کنید
  •  

SEO by vBSEO