
مروری بر سنسور ICP20100
سنسور فشار ICP-20100 یک سنسور فشار بارومتریک و دما با دقت بالا و توان کم است که از یک سنسور فشار خازنی برای نظارت بر تغییرات فشار در محدوده 30 تا 110 کیلو پاسکال ، یک پردازشگر سیگنال دیجیتال(DSP) برای کالیبراسیون ، یک مبدل آنالوگ به دیجیتال (ADC)، فیلتر دیجیتال و FIFO در ساخت آن استفاده شده و و دارای رابط های I2C، I3C و SPI میباشد.
مشخصات فنی
- Output type: Digital – I2C or I3C or SPI
- Pressure range: 30 to 110 kpa
- Pressure Resolution: 20 Bit
- Operating temperature range: -40°C to +85°C
کاربردها
- Smartphones and Tablets
- Wearable Sensors
- Home and Building Automation
- Weather Stations
ماژول فشار بارومتریک و دما Gebra ICP20100

- با توجه به اینکه دسترسی به پایههای سنسور دشوار است، کاربران برای توسعه سختافزاری و نرمافزاری این سنسور به یک برد ابتدایی (starter board) و درایور نیاز دارند. برای راحتی کاربران، GebraMS برد ماژول فشار بارومتریک و دما Gebra ICP20100 را طراحی کرده است. کاربران میتوانند به کمک این برد، به مهمترین پایههای سنسور بهراحتی دسترسی پیدا کنند.
- کافی است برد ماژول فشار بارومتریک و دما Gebra ICP20100 را روی برد (Breadboard) قرار دهید و سپس با یکی از بردهای Arduino، Raspberry Pi یا Discovery و با اعمال ولتاژ مناسب، آن را راهاندازی کنید.
- ما بهویژه استفاده از Gebra STM32F303 را توصیه میکنیم؛ چرا که این برد دارای رگولاتور داخلی ۳.۳ ولت است و ترتیب پایههای آن با تمامی ماژولهای Gebra هماهنگ است (استاندارد GEBRABUS)، بنابراین میتوانید برد ماژول فشار بارومتریک و دما Gebra ICP20100 را مستقیماً به سوکت مربوطه متصل کرده و بدون نیاز به سیمکشی، برنامهنویسی را آغاز کنید.
GebraBit ICP20100 یک ماژول اندازه گیری فشار و دما با دقت بالا است که می تواند با ولتاژهای تغذیه “1V8” یا “3V3” که توسط جامپر سلکتور “VDD SEL” قابل انتخاب اند، کار کند. همچنین یک جامپر دیگر به نام “VDIO SEL” وجود دارد که برای انتخاب سطح منطقی ولتاژ پایه های ورودی/خروجی ماژول بین “1V8” یا “3V3” در نظر گرفته می شود. این ویژگی به استفاده از طیف گسترده ای از میکروکنترلرها برای رابط با این ماژول کمک می کند. .
کاربر می تواند با پروتکل I2C یا SPI با GebraBit ICP20100 ارتباط برقرار کند. این امر توسط چهار جامپرسلکتور اختصاصی که در سمت راست بالای ماژول GebraBit ICP20100 قرار گرفته اند، امکان پذیر است.
ویژگیهای ماژول GebraBit ICP20100
- Selectable module power supply and I/O logic voltage between1V8 and 3V3
- On Board Selectable protocol between I2C and SPI
- On Board Selectable I2C address
- On Board, ON/OFF LED indicator
- On Board LED indicator for sensor interrupt
- GEBRABIT Pin Compatible with GEBRABUS
- It can be used as a daughter board of GEBRABIT MCU Modules
- Featuring Castellated pad (Assembled as SMD Part)
- Separatable screw parts to reduce the size of the board
- Package: GebraBit small (36.29mm x 32.72mm)
پینهای ماژول GebraBit ICP20100

پین های تغذیه
- 3V3 و 1V8 : این پینها می تواند با توجه به وضعیت Jumper Selector های VDDSEL و VDIOSEL ،تغذیه اصلی سنسور و سطح منطق(Logic Level) ارتباط دییجیتال(I2C یا SPI) سنسور را تامین کنند.
- GND : این پین زمین مشترک برای تغذیه و سطح منطق(Logic Level) سنسور می باشد
پین های I2C
با استفاده از Jumper Selector های تعبیه شده روی برد می توان نوع ارتباط با ماژول را انتخاب کرد.در صورتی که مقاومتهای 0R تمام Jumper Selector ها به سمت چپ باشد،پروتکل I2C اتنخاب شده است.وضعیت جامپر AD0 SEL آدرس I2C سنسور ( 0x63 یا 0x64 ) را مشخص می کند.
- SDA : این پین، پین دیتای ارتباط I2C می باشد، که به پین دیتای متناظر در میکروکنترلر(پردازنده) ، متصل می شود.با توجه به وضعیت جامپر VDIOSEL ،می توانید از سطح منطق(Logic Level) با ولتاژ 1V8 یا 3V3 استفاده کنید.این پین با یک مقاومت پول آپ (Pull Up) شده است.
- SCL : این پین، پین کلاک ارتباط I2C می باشد، که به پین کلاک متناظر در میکروکنترلر(پردازنده) ، متصل می شود.با توجه به وضعیت جامپر VDIOSEL ،می توانید از سطح منطق(Logic Level) با ولتاژ 1V8 یا 3V3 استفاده کنید.این پین با یک مقاومت پول آپ (Pull Up) شده است.
پین های SPI
با استفاده از Jumper Selector های تعبیه شده روی برد می توان نوع ارتباط با ماژول را انتخاب کرد.در صورتی که مقاومتهای 0R تمام Jumper Selector ها به سمت راست باشد،پروتکل SPI اتنخاب شده است.وضعیت جامپر AD0 SEL در این حالت بی تاثیر است.
- SDI(MOSI) : از این پین، برای ارسال دیتا از میکروکنترلر(پردازنده) به ماژول(سنسور) استفاده میشود.نام اختصاری این پین برگرفته از عبارت لاتین Serial Data In / Microcontroller Out Sensor In می باشد.
- SDO(MISO) : از این پین، برای ارسال دیتا از ماژول(سنسور) به میکروکنترلر(پردازنده) استفاده میشود.نام اختصاری این پین برگرفته از عبارت لاتین Serial Data Out / Microcontroller In Sensor Out می باشد.
- SCK : این پین، پین کلاک برای ارتباط SPI بوده که از نوع ورودی (Input) برای سنسور محسوب و به پین کلاک متناظر در میکروکنترلر(پردازنده) ، متصل می شود.
- CSB : این پین، پین Chip Select برای ارتباط SPI با ماژول(سنسور) می باشد، که با اعمال ولتاژ LOW (0V) ،ماژول(سنسور) برای ارتباط SPI انتخاب می شود.این پین از نوع ورودی (Input) برای سنسور محسوب می شود
در صورتی که می خواهید از چندین ماژول GebraBit ICP20100به صورت همزمان استفاده کنید، کافیست پین های SDO , SDI , SCK همه انها و میکرکنترلر(پردازنده) را به هم متصل کرده و به CS هر کدام، یک پین منحصر به فرد اختصاص دهید.
پین وقفه
- INT : پین Interrupt (وقفه) سنسور ICP20100 بوده که با توجه به دیتاشیت سنسور، کاربر می تواند شرایط وقوع وقفه،حالات و روش های وقوع وقفه و … را تنظیم کند.
معرفی بخش های ماژول

سنسور ICP20100
ای سی اصلی این ماژول بوده که وظیفهی اندازهگیری فشار و دما را برعهده دارد و در مرکز ماژول قرار گرفته و مدار ان طراحی شده است.
جامپرهای انتخاب پروتکل ارتباطی
در صورتی که مقاومتهای 0R تمام Jumper Selector ها به سمت چپ باشد،پروتکل I2C اتنخاب شده است.
در صورتی که مقاومتهای 0R تمام Jumper Selector ها به سمت راست باشد،پروتکل SPI اتنخاب شده است.
جامپرAD0 SEL
در صورت انتخاب پروتکل I2C ،وضعیت جامپر AD0 SEL آدرس I2C سنسور ( 0x63 0 => یا 0 x64 1 =>) را مشخص می کند.
به صورت پیش فرض مقاومت 0R روی 0 قرار داشته و آدرس 0x63 انتخاب شده است.
جامپرVDIO SEL
با توجه به وضعیت مقاومت 0R این جامپر ، سطح منطق (Logic Level) ارتباط دیجیتال(I2C یا SPI) سنسور از بین 1V8 و 3V3 انتخاب می شود.
به صورت پیش فرض سطح منطق (Logic Level) ارتباط دیجیتال(I2C یا SPI) سنسور 3V3 انتخاب شده است.
جامپرVDD SEL
با توجه به وضعیت مقاومت 0R این جامپر ، ولتاژ اصلی تغذیه سنسور از بین 1V8 و 3V3 انتخاب میشود.
به صورت پیش فرض ولتاژ اصلی تغذیه سنسور 3V3 انتخاب شده است.
LED وقفه
یکLED اختصاصی برای پین وقفه روی ماژول در نظر گرفته شده است که با تغییر وضعیت وقفه با توجه به دیتاشیت سنسور، وضعیت LED نیز تغییر میکند.
تغذیه LED
با توجه به وضعیت جامپرهای VDD SEL اعمال ولتاژ به ماژول توسط پین مربوطه، LED ماژول روشن می شود.
اتصال به پردازنده
اتصال I2C با GebraBit STM32F303
ابتدا اطمینان حاصل کنید که پروتکل I2C با استفاده از جامپر های روی برد انتخاب شده است، سپس برای اتصال I2C ماژول GebraBit ICP20100به ماژول میکروکنترلرGebraBit STM32F303 بعد از تعریف کردن SDA و SCL رو پین های PB9 و PB8 (برای راحتی کار در STMCUBEMX)مراحل زیر را دنبال کنید:
- پین “3V3” ماژول ICP20100 را به پین “3V3” خروجی ماژول میکروکنترلر متصل کنید.(سیم قرمز)
- پین “GND” ماژول ICP20100 را به پین “GND” ماژول میکروکنترلر متصل کنید.(سیم سیاه)
- پین “SCL” ماژول ICP20100 را به پین PB8 ماژول میکروکنترلر (SCL) متصل کنید.(سیم آبی)
- پین “SDA” ماژول ICP20100 را به پین PB9 ماژول میکروکنترلر (SDA) متصل کنید.(سیم زرد)

توجه: با توجه به اینکه پین PA14 ماژول میکروکنترلرGebraBit STM32F303 برای پروگرام کردن میکروکنترلر استفاده میشود،تنظیم I2C بر روی پین های PA14 و PA15 در این ورژن مقدور نمی باشد،لذا در اتصال I2C به ماژول میکروکنترلرGebraBit STM32F303 در این ورژن ، ماژول GebraBit ICP20100 نمی تواند به صورت Pin to Pin بر روی آن قرار گیرد.برای راحتی کار می توانید پروتکل SPI را با استفاده از جامپر های روی برد انتخاب کرده و سپس ماژول GebraBit ICP20100را به صورت Pin to Pin بر روی ماژول GebraBit STM32F303 قرار دهید.
اتصال SPI با GebraBit STM32F303
ابتدا اطمینان حاصل کنید که پروتکل SPI با استفاده از جامپر های روی برد انتخاب شده است، سپس برای اتصال SPI ماژول GebraBit ICP20100به ماژول میکروکنترلرGebraBit STM32F303 بعد از تعریف کردن “SDI” و “SDO” و “SCK” و “CS” رو پین های PB5 و PB4 و PB3 و PC13 (برای راحتی کار در STMCUBEMX) ماژول GebraBit ICP20100 را به صورت Pin to Pin به راحتی بر روی ماژول GebraBit STM32F303 قرار دهید. در اینجا برای درک بهتر،اتصال جداگانه این دو ماژول نشان داده شده است:

اتصال SPI یا I2C با GebraBit ATMEGA32A
با توجه به اینکه پین های SPI و I2C میکروکنترلر ATMEGA32A بر اساس استاندارد GEBRABUS متناظر با پین های SPI و I2C دیگر ماژول های GEBRABIT می باشد، ماژول GebraBit ICP20100 را به صورت Pin to Pin به راحتی بر روی ماژول GebraBit ATMEGA32A قرار داده و با تغییر وضعیت مقاومت های جامپر انتخاب پروتکل، با ماژول GebraBit ICP20100از طریق SPI یا I2C ارتباط برقرار کنید. در اینجا برای درک بهتر،اتصال جداگانه این دو ماژول نشان داده شده است:


توجه: در صورت استفاده از ماژولهای میکروکنترلریGebraBit توجه داشته باشید که جامپر سلکتورهای ماژول GebraBit ICP20100 روی “3V3” باشد تا راحت تر بتوانید با گرفتن ولتاژ”3V3” از ماژول میکروکنترلری ، ماژول سنسور مورد نظر را راه اندازی کنید.
اتصال I2C با ARDUINO UNO
ابتدا اطمینان حاصل کنید که پروتکل I2C با استفاده از جامپر های روی برد انتخاب شده است، سپس برای اتصال I2C ماژول GebraBit ICP20100 به ARDUINO UNO مراحل زیر را دنبال کنید:
- پین 3V3 ماژول ICP20100 را به پین 3V3 خروجی برد ARDUINO UNO متصل کنید.(سیم قرمز)
- پین GND ماژول ICP20100 را به پین GND برد ARDUINO UNO متصل کنید.(سیم سیاه)
- پین SCL ماژول ICP20100 را به پین A5 برد ARDUINO UNO( (SCLمتصل کنید.(سیم آبی)
- پین SDA ماژول ICP20100 را به پین A4 برد ARDUINO UNO( (SDAمتصل کنید.(سیم نارنجی)

اتصال SPI با ARDUINO UNO
ابتدا اطمینان حاصل کنید که پروتکل SPI با استفاده از جامپر های روی برد انتخاب شده است، سپس برای اتصال SPI ماژول GebraBit ICP20100 به ARDUINO UNO مراحل زیر را دنبال کنید:
- پین “3V3” ماژول ICP20100 را به پین “3V3” خروجی برد ARDUINO UNO متصل کنید.(سیم قرمز)
- پین “GND” ماژول ICP20100 را به پین “GND” برد ARDUINO UNO متصل کنید.(سیم سیاه)
- پین” “SDI ماژول ICP20100 را به پین D11 برد ARDUINO UNO( (SDIمتصل کنید.(سیم زرد)
- پین” “SDO ماژول ICP20100 را به پین D12 برد ARDUINO UNO( (SDOمتصل کنید.(سیم بنفش)
- پین “SCK” ماژول ICP20100 را به پین D13 برد ARDUINO UNO( (SCKمتصل کنید.(سیم نارنجی)
- پین” “CS ماژول ICP20100 را به پین D10 برد ARDUINO UNO( (SSمتصل کنید.(سیم آبی)
