تحلیل فناوری آبشاری I2C برنامه شبکه چند دستگاهی MCP23017E/SS
16 سپتامبر 2025 اخبار ️ با توسعه سریع صنعت 4.0 و فناوری اینترنت اشیا، تقاضا برای قابلیت های گسترش I/O دستگاه ها به طور فزاینده ای در حال افزایش است.تراشه گسترش دهنده I/O 16 بیتی MCP23017-E/SS که توسط شرکت Shenzhen Anxinruo Technology Co عرضه شده است.، Ltd. با قابلیت های قدرتمند گسترش رابط و گزینه های پیکربندی انعطاف پذیر، در حال تبدیل شدن به یک انتخاب مهم برای کنترل صنعتی، خانه هوشمند و دستگاه های IoT است.
MCP23017-E/SS از یک رابط I2C برای دستیابی به گسترش 16 بیتی I/O استفاده می کند، که از حداکثر 8 دستگاه از طریق 3 پین آدرس پشتیبانی می کند.و ارائه می دهد 400kHz ارتباطات با سرعت بالا با خروجی قطع قابل تنظیماین تراشه دارای 16 GPIO قابل برنامه ریزی مستقل است که از تنظیم جهت ورودی / خروجی ، مقاومت های داخلی کشش و معکوس قطب پشتیبانی می کند.هر پورت I/O می تواند 25mA جریان درایو را فراهم کند، و مصرف برق در حالت آماده سازی کمتر از 1μA است. در یک بسته SSOP-28 درجه صنعتی قرار دارد، یک راه حل جامع گسترش رابط برای سیستم های جاسازی شده را فراهم می کند.
ماژول های عملکردی اصلی
1ماژول رابط ارتباطات
رابط سریال I2C
SCL: پین ورودی ساعت سریال
SDA: خط داده سریال دو طرفه
پشتیبانی از حالت استاندارد (100kHz) و حالت سریع (400kHz)
![]()
2. ماژول رمزگشایی آدرس: آدرس سخت افزاری 3 بیتی پشتیبانی از 8 دستگاه
3ماژول کنترل وقفه: دارای خروجی وقفه دوگانه (INTA/INTB) است.
4. ماژول تبدیل داده ها: تبدیل داده های سریال به موازی را اجرا می کند
5ماژول.GPIO: پورتهای I/O برنامه نویسی 16 بیتی
6بانک ثبت: پارامترهای پیکربندی و وضعیت کنترل را ذخیره می کند
جریان کار
1پیکربندی راه اندازی
پیکربندی ثبت کنترل از طریق رابط I2C
تنظیم جهت I/O، مقاومت های کششی و سایر پارامترها
2ارتباطات داده
میزبان دستورات کنترل و داده ها را از طریق I2C ارسال می کند
سریالیزر داده های سریالی را به داده های موازی تبدیل می کند
رجیستر های پیکربندی تنظیمات مربوطه را به روز می کنند
3. دست زدن رو قطع کن
تغییر حالت GPIO باعث قطع منطق می شود
پین های INTA/INTB سیگنال های قطع را به میزبان ارسال می کنند
میزبان می خواند ثبت پرچم قطع برای تعیین منبع قطع
مزاياي خاص:
ادغام بالا: گسترش I / O 16 بیتی که در یک تراشه واحد اجرا می شود
پیکربندی انعطاف پذیر: هر پورت I/O می تواند به طور مستقل برنامه ریزی شود
مصرف کم برق: جریان آماده < 1μA
ظرفیت قوی درایو: 25mA درایو در هر پورت
1. عملیات نوشتن بایت
![]()
زمانبندی:
حالت شروع (S): فرمانده سیگنال شروع را تولید می کند
کد Opcode دستگاه (OP): آدرس دستگاه 7 بیتی (0100AAA) + بیت پرچم نویسی (0)
آدرس ثبت (ADDR): ثبت هدف را برای نوشتن مشخص می کند.
ورودی داده ها (DIN): داده هایی که باید به ثبت ثبت شوند
حالت توقف (P): فرمانده سیگنال توقف را تولید می کند.
2. عملیات نوشتن دنباله ای
زمانبندی:
حالت شروع (S): میزبان سیگنال شروع را تولید می کند
کد Opcode دستگاه (OP): آدرس دستگاه 7 بیتی + بیت پرچم نوشتن
آدرس ثبت (ADDR): آدرس شروع ثبت را مشخص می کند.
ورودی داده (DIN): به طور مداوم چندین داده را با آدرس خودکار اضافه می کند
حالت توقف (P): میزبان سیگنال توقف را تولید می کند
3تعاریف کلیدی سیگنال
|
نماد |
معنی
|
توضیحات |
| S |
حالت شروع |
سيگنال شروع |
| SR |
شروع مجدد |
سیگنال شروع مکرر |
| P | حالت توقف | سیگنال توقف |
| W | بِت بنویس (0) | پرچم عملیات را بنویسید |
| R | بِت (۱) | پرچم عملیات خوانده شده |
| OP | کد اپ دستگاه | کد عملکرد دستگاه (0100AAA + R/W) |
| ADDR | آدرس ثبت | آدرس ثبت |
| DIN | ورودی داده | داده های ورودی (Host → MCP23017) |
| DOUT | خروجی داده | داده های خروجی (MCP23017 → میزبان) |
4. پارامترهای ویژگی های زمان بندی
نرخ ارتباطات: از 100kHz (وضع استاندارد) و 400kHz (وضع سریع) پشتیبانی می کند
اعتبار داده ها: داده های SDA باید در طول سطح بالا SCL پایدار باشند.
حالت شروع: انتقال SDA از بالا به پایین در حالی که SCL بالا است
حالت توقف: انتقال SDA از پایین به بالا در حالی که SCL بالا است
5يادداشت هاي درخواست
آدرس دستگاه: 0100AAA، که AAA توسط پین های A2/A1/A0 تعیین می شود.
انتقال داده: اول MSB، داده های 8 بیتی + ACK 1 بیتی
سیگنال تایید: گیرنده سیگنال ACK را پس از هر بایت تولید می کند
الزامات زمان بندی: باید پارامترهای مشخصات I2C را برآورده کند (tSU، tHD، و غیره)
این نمودار زمان بندی پروتکل ارتباطی I2C کامل MCP23017-E/SO را نشان می دهد و مرجع زمان بندی دقیق برای برنامه نویسی دستگاه و ادغام سیستم را فراهم می کند.
پین های بندر GPIO
| بندر B (GPB) - پین 1 تا 8 |
پورت A (GPA) - پین های 21 تا 28 |
|
GPB0 (Pin 1) |
GPA7 (Pin 21) |
|
GPB1 (Pin 2) |
GPA7 (Pin 22) |
|
GPB2 (Pin 3) |
GPA7 (Pin 23) |
|
GPB2 (Pin 4) |
GPA7 (Pin 24) |
|
GPB2 (Pin5) |
GPA7 (Pin 25) |
|
GPB2 (Pin 6) |
GPA7 (Pin 26) |
|
GPB2 (Pin 7) |
GPA7 (Pin 27) |
|
GPB2 (Pin 8) |
GPA7 (Pin 28) |
1.پين هاي قدرت
VDD (Pin 9): ورودی منبع برق مثبت (2.7V تا 5.5V)
VSS (Pin 10): زمین قدرت
2کنترل و پیکربندی پین
تنظیم مجدد (Pin 18): ورودی تنظیم مجدد (کم فعال)
INTA (Pin 19): PORT A خروجی قطع
INTB (Pin 20): خروجی قطع PORT B
![]()
3پین های تنظیم آدرس
A0 (Pin 15): بیت انتخاب آدرس I2C 0
A1 (Pin 16): بیت انتخاب آدرس I2C 1
A2 (Pin 17): بیت انتخاب آدرس I2C 2
4.پين هاي ويژه
NC (Pins 11 و 14): بدون اتصال
پد حرارتی (پایینی): پد تبعید گرما، باید به زمین متصل شود
5مشخصات بسته بندی
نوع بسته بندی: SOIC-28
فاصله پین: 1.27 میلی متر
دمای کار: -40°C تا +85°C
طراحی حرارتی: پد حرارتی پایین باید به سطح زمین PCB متصل شود
این پیکربندی پین بسته استاندارد SOIC-28 را اتخاذ می کند و یک راه حل گسترش I / O قابل اعتماد برای کنترل صنعتی و سیستم های جاسازی شده را فراهم می کند.تمام پین های GPIO از پیکربندی مستقل و قابلیت 25mA پشتیبانی می کنند.
روش های عملیات پروتکل
1. عملیات نوشتن تک بایت
2. عملیات نوشتن چند بایت
3. عملیات خواندن تک بایت
4. عملیات خواندن چند بایت دنباله ای
5حالت کار مخلوط
![]()
ویژگی های اصلی پروتکل
مدیریت نشانگر آدرس
نشانگر آدرس به طور خودکار در طول عملیات نوشتن به روز می شود
افزایش خودکار اشاره گر در طول عملیات خواندن / نوشتن متوالی
پشتیبانی از دسترسی مستمر در سراسر مرزهای ثبت
اعتبار داده ها
داده ها در طول سطح بالا SCL پایدار هستند
هر بایت نیاز به تأیید دارد (ACK/NACK)
اولین انتقال MSB
مکانیسم مدیریت خطا
تشخیص عدم شناخت برده (NACK)
حفاظت از زمان بندی اتوبوس
پشتیبانی کشش ساعت
الزامات زمان بندی
|
پارامتر |
حالت استاندارد |
حالت سریع |
|
SCL فرکانس |
100kHz |
400kHz |
|
زمان تنظیم |
250n |
100ns |
|
زمان نگهداري |
300n |
۹۰ns |
این پروتکل به طور کامل با مشخصات استاندارد I2C سازگار است و روش های انتقال داده انعطاف پذیر را ارائه می دهد که هر دو حالت انتقال تک بایت و شتاب را پشتیبانی می کند.این امکان را می دهد تا پیکربندی و کنترل کارآمد از تمام ثبت عملکردی در MCP23017.

