I2C BUS
اسلاید 1: I2C BUSارائه دهندگان :محسن قلعه نوئيسيد مجتبي شاکري
اسلاید 2: فهرست :تاريخچهمنافع توليد کننده و طراحمقدمه اي بر I2C Busسخت افزارپروتکل ارتباطيانواع استانداردهاي I2Cکاربردهاي I2C
اسلاید 3: تاريخچهپروتکل I2C در اوايل دهه 1980 توسط شرکت Philips ابداع گرديد.هدف آن در ابتدا فراهم کردن راهي ساده جهت ارتباط يک CPU با تراشه هاي جانبي در يک دستگاه TV بود.I2C در حقيقت مخفف Inter IC Bus مي باشد که به منظور فراهم کردن يک لينک ارتباطي بين مدارات مجتمع مي باشد.
اسلاید 4: البته امروزه اين پروتکل در صنعت به صورت عمومي پذيرفته شده است و کاربرد آن از سطح تجهيزات صوتي و تصويري نيز فرا تر رفته است به گونه اي که شرکتهاي گوناگون مانند Xicor ، SGS Thomson ، Siemens،Intel ، T I ، Maxim ، Atmel و Analog Devices به روشهاي گوناگون شروع به سازگار کردن قطعات خود با اين پروتکل نمودند.
اسلاید 5: منافع طراح و توليد کننده
اسلاید 6: منافع طراحاين پروتکل سبب سهولت و سرعت در طراحي مدارات ميگردد. با اين پروتکل به راحتي مي توان نمونه اوليه را از روي بلوک دياگرام سيستم بدست آورد ، زيرا :بلوک دياگرام عملياتي کاملا با ICهاي واقعي مطابقت دارند.رابطهاي I2C به صورت on-chip وجود دارند.هم از لحاظ نرم افزاري و هم سخت افزاري قابل کنترل است.
اسلاید 7: ICها براحتي مي توانند به اين باس افزوده يا کم گردند.عيب يابي و رفع آن براحتي امکان پذير است.زمان طراحي نرم افزاري نيز با استفاده از Library هايي که موجود هستند کاهش مي يابد.و بطور عمومي :مصرف بي نهايت کم جريانامنيت در برابر نويز بسيار بالا محدوده وسيع ولتاژ تغذيهرنج وسيع گرمايي
اسلاید 8: منافع توليد کنندهعلاوه بر منافع ذکر شده براي طراح مي توان به منافع زير براي توليد کننده نيز اشاره کرد :دو سيمه بودن آن سبب سادگي و کوچک شدن PCBها گرديد.حذف Decoderهاي آدرس.قابليت ارائه در Packageهاي کوچک.
اسلاید 9: خلاصه اي بر I2C و مشخصات کلي آن
اسلاید 10: مقدمه :اين باس بطور فيزيکي دو خط فعال زير را دارا مي باشد:Serial Data line (SDA)Serial Clock line (SCL)در اين باس هر قطعه متصل به باس داراي آدرس يکتاست که هر کدام مي توانند به صورت گيرنده يا فرستنده و يا هر دو عمل کنند.همچنين در اين باس مي توان يک يا چند Master داشت.
اسلاید 11:
اسلاید 12:
اسلاید 13: در حالت چند Master بودن در اين پروتکل دو بحث زير مطرح مي باشد:Arbitration : فرآيند انتخاب يک Master براي استفاده از Bus .Synchronization : همزمان سازي clock براي دو يا چند دستگاه متفاوت که به يک باس متصل مي باشد.
اسلاید 14: Bus Hardwareاين نوع باس داراي خطوط SDA و SCL به صورت دو جهته مي باشد. به همين خاطر مي توان به صورت داخلي يا خارجي آنها را درايو کرد.براي جلوگيري از تاثير نامطلوب قطعات معيوب بر روي باس از تکنيکهاي open-drain output و open-collector output استفاده مي شود.
اسلاید 15: در اين باس خطوط SDA و SCL از طريق مقاومتهاي pull-up ويا current-source ها به يک منبع ولتاژ مثبت متصل مي باشند. در اين صورت هنگامي که چيزي بر روي خط اتفاق نمي افتد اين خطوط در وضعيت منطقي HIGH قرار دارند.
اسلاید 16:
اسلاید 17: هر چند که تکنيک ذکر شده (open-collector) داراي مزيت ارائه شده بود ولي اگر باس طولاني شود تاثيراتي بر روي سرعت انتقال داده ها مي گذارد.خطوط طولاني سبب ايجاد يک ظرفيت خازني مي گردد که با يک مقاومت pull-up پسيو يک ثابت زماني RC توليد مي گردد که بر روي شکل سيگنال تاثير خواهد گذاشت.
اسلاید 18:
اسلاید 19: همچنين در سرعتهاي زياد ممکن است نويزهاي سوزني بر روي سيگنال ظاهر گردد که با توجه به منطق موجود ممکن است ايجاد خطا کند.
اسلاید 20: داده ها بر روي اين باس با سرعتهاي زير قابل جابجايي مي باشند:Standard-mode: حداکثر 100 Kbit/sّFast-mode: حداکثر 400 Kbit/sHigh Speed-mode : حداکثر 3.4 Mbit/sمحدوديت امپدانسي خط نيز 400 pf مي باشد.
اسلاید 21: مشخصات کليرنج فرکانسي : بسته به نوع آن تا 3.4 Mbit/s نيز کار مي کند.رنج تغذيه : 2.5 تا 5.5 ولت يا 2.7 تا 5.5 ولت و با وسايل جديد 2.3 تا 5.5 ولت و يا 3 تا 3.6 ولترنج دمايي:از 40- تا 85 درجه سانتيگراد و در بعضي موارد 0 تا 70 يا 0 تا 120 درجه سانتيگراد
اسلاید 22: پينهاي آدرس سخت افزاري:معمولا سه پايه (A0, A1, A2) تهيه شده که اجازه مي دهد 8 نوع از يک IC در يک باس موجود باشد و تنها با آدرس دهي از هم متمايز گردند.Packageهاي ارائه شده:قبلا در انواع DIP ، SOP ، SSOP ارائه مي شدند.وسايل جديد فقط در packageهاي SOP و TSSOP و يا همراه وسايل ديگر در TSOP و MLP ارائه مي شوند.
اسلاید 23: پروتکل انتقال داده در I2C BUS
اسلاید 24: انتقال بيت :با توجه به تکنولوژي وسايل مرتبط با I2C سطوح صفر و يک منطقي ثابت نيستند و وابسته به سطح تغذيه VDD ميباشد.هر پالس ساعت نيز براي انتقال يک بيت توسط Master توليد مي گردد.تعيين اعتبار يک Bit :سطوح HIGH يا LOW براي SDA تنها زماني مي تواند تغيير کند که SCL در سطح LOW باشد.
اسلاید 25:
اسلاید 26: وضعيتهاي Start و Stop : يک تغيير وضعيت از سطح high به low بر روي SDA وقتي که SCL در سطح high است به عنوان وضعيت START شناخته مي شود. يک تغيير وضعيت از سطح low به high بر روي SDA وقتي که SCL در سطح high است به عنوان وضعيت STOP شناخته مي شود.وضعيت Start و Stop هميشه بوسيله Master توليد مي شود.
اسلاید 27:
اسلاید 28: تشخيص وضعيتهاي START و STOP در صورتي که وسايل متصل به باس از سخت افزار رابط بر روي خود استفاده کنند بسيار راحتتر است. ميکروکنترلر هايي که اين گونه سخت افزار را ندارند بايد از SDA حداقل 2 بار در هر پالس ساعت نمونه برداري کنند تا بتوانند اين تغييرات را حس کنند.تشخيص وضعيتهاي Start و Stop :
اسلاید 29: توليد پالس ساعت و مسئله Arbitration
اسلاید 30: همه Master ها پالس ساعت خودشان را به منظور ارسال داده ها بر روي SDA توليد مي کنند.اما چون تنها يک خط براي clock وجود دارد بايستي از يک حالت منطقي براي همزمان سازي clock چند Master استفاده نمود.همزمان سازي با استفاده از خاصيت wired-AND رابطهاي I2C بر روي SCL انجام مي گردد.
اسلاید 31:
اسلاید 32: Arbitrationيک Master تنها زماني مي تواند داده هايش را بر روي SDA ارسال کند که اين خط آزاد باشد.همچنين در هر زمان تنها يک Master مي تواند بر روي باس داده بفرستد.Arbitration بر روي خط داده تنها زماني که پالس ساعت High مي باشد اتفاق مي افتد.در اينجا نيز از خاصيت wired-AND وسايل متصل به خط استفاده مي شود.
اسلاید 33: بدين صورت هنگامي که يک Master سطح High را ارسال مي کند در حالي که ديگر Master ها سطح low را بر روي SDA مي فرستند سبب ميشود که سطح خروجي داده قطع شود.اين وضعيت مي تواند براي چندين بيت متوالي ادامه داشته باشد.هنگامي که يک Master حاکميت خود بر باس را از دست مي دهد آن را رها مي کند يعني باس را در سطح High رها مي کند تا تاثيري بر کار ديگر Masterها نداشته باشد.
اسلاید 34:
اسلاید 35: استفاده از همزمان سازي پالس ساعت به عنوان handshakeيک receiver ممکن است در هر دو سطح بايتي يا بيتي اطلاعات را دريافت کند ولي نياز به زمان بيشتري دارد تا يک بايت را ذخيره کند يا يک بايت جديد را براي ارسال فراهم کند. در سطح بايتي slave ها مي توانند SCL را بعد از دريافت ديتا low نگه دارند تا master به حالت انتظار وارد شود.در سطح بيتي نيز يک ميکرو کنترلر مي تواند سطح low براي پالس ساعت باس را افزايش دهد تا سرعت را کاهش دهد.Hs-mode تنها در سطح بايتي موجود است.
اسلاید 36: آدرسدهي به صورت 7 بيتي
اسلاید 37: غير از حالتي که به general call معروف است هميشه بعد از START هفت بيت خواهيم داشت که مشخص کننده آدرس slave مورد نظر است بعد از آن نيز يک بيت کم ارزش ديگر خواهيم داشت که بيانگر جهت پيغام است :صفر باشد : حالت write است.يک باشد : حالت read است.
اسلاید 38:
اسلاید 39:
اسلاید 40: آدرس يک slave از دو قسمت ثابت و قابل برنامه ريزي تشکيل شده است که سبب مي شود چندين دستگاه يکسان در يک باس داشته باشيم.قسمت قابل برنامه ريزي مشخص کننده حداکثر اين دستگاهها مي باشد که اين نيز به نوبه خود به حداکثر پين در دسترس بستگي دارد.بايد توجه داشت که دو دسته از آدرسهاي (0000XXX (1111XXX , براي مقاصد خاص نگه داشته شده اند.
اسلاید 41:
اسلاید 42: ترکيب هاي مختلف براي آدرس دهي
اسلاید 43: General call addressاز اين حالت براي آدرسدهي تمامي وسايل متصل به باس I2C استفاده مي شود.اگر وسيله اي نياز به آدرسدهي داشته باشد بعد از اين کد به عنوان slave-receiver عمل مي کند.اما بايت دوم دو حالت دارد:هنگامي که بيت کم ارزش آن صفر باشد.هنگامي که يک باشد.
اسلاید 44:
اسلاید 45: بايت STARTميکرو ها مي توانند با باس به دو صورت ارتباط داشته باشند:به کمک رابط هاي on-chip براي ارتباط با I2Cاز طريق نرم افزار. يک ميکرو اساساً بايستي به باس دسترسي داشته باشد، تعداد دسترسي هاي کمتر سبب مي شود که بهتر بتواند کارهاي داخلي خودش را انجام دهد.
اسلاید 46: در اين موارد مي توان روال شروع را ابتدا ارسال کرد که زمان بيشتري نسبت به حالت عادي طول مي کشد.ميکروکنترلر ديگر با سرعت کم از SDA نمونه برداري مي کند تا اينکه يکي از هفت بيت صفر ارسالي در اين روال را تشخيص دهد سپس شروع به نمونه برداري با سرعت بالا مي کند تا وضعيت Sr را بمنظور همزمان سازي مجدد تشخيص دهد.
اسلاید 47:
اسلاید 48: تحولات در I2C
اسلاید 49: توسعه خصوصيات باس:به دو دليل زير نياز به توسعه از حالت استاندارد احساس گرديد:ابزارهاي جديد نياز به سرعتهاي بالاتر داشتند.حداکثر 112 حالت آدرسدهي در حالت 7 بيتي بسيار کم بود.بنابراين تحولات زير صورت گرفت:ايجاد Fast-modeايجاد Hs-modeآدرسدهي 10 بيتي
اسلاید 50: Fast-mode :زمان بندي سيگنالهاي SDA و SCL تطبيق داده شد.در ورودي آنها در SDA و SCL سيستم حذف نويز سوزني و Schmitt trigger را تعبيه کردند.اگر تغذيه قطع شود پينهاي ورودي و خروجي شناور شده و بر روي خط تاثيري ندارند.
اسلاید 51: دستگاههاي pull-up خارجي بايد با زمان خيز براي اين باس تطبيق داده شود.براي کمتر از 200 pf مي توان از pull-up هاي مقاومتي استفاده کرد و براي بيشتر از آن از منابع جريان ( حداکثر 3 mA ) يا مدارات مقاومتي سوئيچينگ استفاده کرد.
اسلاید 52:
اسلاید 53: Hs-mode :داراي يک بافر خروجي open-drain براي سيگنال SDAH و ترکيبي ازمدارات open-drain pull-down، pull-up و current-source بر روي خروجي SCLH است که زمان خيز را براي SCLH کاهش مي دهد. البته در هر لحظه فقط منبع جريان يک Master فعال است.
اسلاید 54: Arbitration و همزمان سازي clock وجود ندارد.Masterها در اين مد سيگنال ساعت سريال را با نسبت 1 به 2 براي سطح high به low توليد مي کنند که زمانبندي را کاهش مي دهد.داراي پلهاي داخلي هستند که براي اتصال SDAH و SCLH به SDA و SCL در Fast-mode استفاده مي شود.
اسلاید 55:
اسلاید 56: فرمت ارسال داده هاي سريال در Hs-modeHs-mode تنها بعد از وضعيت هاي زير توليد مي گردد :وضعيت Start (S)کد Master به صورت 8 بيتي (00001XXX)بيت not-Acknowledge
اسلاید 57:
اسلاید 58: Hs-mode devices at lower speedدر اين حالت اين ابزارها در Fast-mode به کار خود ادامه مي دهند و از همان پينهاي SDAH و SCLH براي اين منظور استفاده مي شود و پينهاي SDA و SCL (در صورت وجود) براي ديگر کاربردها استفاده مي شود.
اسلاید 59:
اسلاید 60: Mixed speed modes on one serial bus در اين حالت از پلهاي داخلي و پايه هاي SDA و SCL در وسايل High speed استفاده مي شود.
اسلاید 61:
اسلاید 62: آدرسدهي 10 بيتي
اسلاید 63: حالت 1111XXX براي اين مقصود رزرو شده است .اما باز هم تنها حالت 11110XX استفاده مي شود و حالت 11111XX براي مقاصد آتي رزرو شده است.بيت دوم نيز مانند حالت 7 بيتي شامل هفت بيت آدرس و يک بيت Read/Write مي باشد.شکلهاي آتي حالات مختلف آدرسدهي 10 بيتي را نشان مي دهند.
اسلاید 64:
اسلاید 65:
اسلاید 66:
اسلاید 67:
اسلاید 68:
اسلاید 69: کاربردهاي I2C
اسلاید 70: ميکروکنترلرهاشرکت فيليپس پايه و اساس ميکرو هاي خود را بر معماري 80c51 بنا نهاده است.با توجه به ساختار کوچک و ارزان اين تراشه مي توان از آن در اکثر سيستم هاي کنترلي ارزان قيمت استفاده کرد.شرکت مذکور تراشه هايي در کاربردهاي متنوع ارائه داده است.
اسلاید 71: در مجموع اين تراشه ها شامل ROM(OTP/Flash) و RAM قابل افزايش ، پورت I2C ، I/O گسترده ، ADC و... مي باشند.
اسلاید 72:
اسلاید 73: حافظه هاي قابل برنامه ريزي در قالب هاي مختلفي ارائه مي شوند نظير:ISP (In-System Programmable)IAP (In-Application Programmable)OTP (One Time Programmable)MTP (Multi Time Programmable)
اسلاید 74: تقريبا تمامي ميکروهاي فيليپس I2C را پشتيباني مي کنند.تعدادي هم پروتکل CANBus را پشتيباني مي کنند مانند : 87C591 ليست ميکروهاي فيليپس سازگار با I2C
اسلاید 75: ميکروکنترلر80C552 (PLCC-68)
اسلاید 76: CS6208براي کاربردهاي شبکه با I2C Interface بمنظور پياده سازي شبکه هاي Master/Slave
اسلاید 77: ADUC831Micro converter 12 بيت ADC/DAC 62KB Flash memory
اسلاید 78: ارتباط I2C با RS232
اسلاید 79: مثال : استفاده از ميکروهاي AT89C2051/AT89C4051در ارتباط با قطعاتي با رابط I2C
اسلاید 80:
اسلاید 81: RS232 & I2C servo control IC
اسلاید 82: Extender , Repeater & Hubاز جمله :PCA9511-16 , PCA9518 , P82B715 , P82B96که مزاياي زير را دارا هستند :اجازه مي دهند که امپدانس خط بيشتر از 400pf گردد.طولاني شدن خطامکان وجود منابع و سطوح منطقي ولتاژ مختلف در يک سيستم
اسلاید 83: امکان ايزولاسيون نوري براي ايمني بيشترقرار دادن کارتهاي بدون منبع تغذيه به خط فعال I2Cايزوله کردن قسمتهايي از سيستم که منبع تغذيه آنها به دلايلي قطع مي شود.
اسلاید 84: مثال 1 -
اسلاید 85:
اسلاید 86: مثال 2 :
اسلاید 87: مثال 3 :I2C Hot swap Buffer
اسلاید 88:
اسلاید 89: مثال 4 : استفاده از کابل USB براي انتقال اطلاعات با رابط I2CI2C Bus Extenders
اسلاید 90:
اسلاید 91: I2C general purpose I/O Expanders
اسلاید 92: ارتباط باس موازي با I2C Controller
اسلاید 93: Multiplexed/Latched I2C EEPROM
اسلاید 94:
اسلاید 95: مثال :
اسلاید 96: I2C Device for LED Display ControlSame as : PCA9530-33 , PCA9550-53 , SAA1064
اسلاید 97:
اسلاید 98: مثال 1 : استفاده از PCA955X
اسلاید 99: براي LED دو پايه
اسلاید 100: براي LED سه پايه
اسلاید 101: مثال 2 : Blinkers
اسلاید 102: LED Dimmers
اسلاید 103: ايجاد طيف رنگي بوسيله PCA953X
اسلاید 104: SensorsLM75A (digital temperature sensor and thermal watch-dog)
اسلاید 105:
اسلاید 106: LM82 : Remote diode & local digital temperature sensor with 2 wire interface
اسلاید 107: AD7416 : temperature sensor
اسلاید 108: CMOS Sensor-MB86S02A
اسلاید 109:
اسلاید 110: Application Note Automated linearization of sensor circuits
اسلاید 111: کاربردهاي متنوع
اسلاید 112: Server Management Card
اسلاید 113:
اسلاید 114:
اسلاید 115: Motorola handheld computer
اسلاید 116:
اسلاید 117: I2C 2002-1 Evaluation Board kit
نقد و بررسی ها
هیچ نظری برای این پاورپوینت نوشته نشده است.