برد توسعه espBerry ESP32 با Raspberry Pi GPIO
اطلاعات محصول
مشخصات
- منبع تغذیه: چندین منبع
- GPIO: سازگار با هدر Raspberry Pi 40 پین GPIO
- قابلیت های بی سیم: بله
- برنامه نویسی: آردوینو IDE
تمام شدview
espBerry DevBoard با اتصال به هدر 32 پین GPIO سازگار با RPi، برد توسعه ESP40DevKitC را با هر کلاه Raspberry Pi ترکیب میکند. قرار نیست این یک جایگزین Raspberry Pi باشد، بلکه با استفاده از طیف گسترده ای از کلاهک های RPi موجود در بازار، گسترش عملکرد ESP32 است.
سخت افزار
کانکتور منبع تغذیه
espBerry می تواند از طریق منابع مختلف تغذیه شود. لطفاً برای اطلاعات دقیق در مورد منابع برق موجود به دفترچه راهنمای کاربر مراجعه کنید.
طرحواره های espBerry
espBerry به گونه ای طراحی شده است که تا حد امکان سیگنال های (GPIO، SPI، UART، و غیره) را نقشه برداری کند. با این حال، ممکن است تمام کلاه های موجود در بازار را پوشش ندهد. برای انطباق و توسعه کلاه خود، به شماتیک espBerry مراجعه کنید. شما می توانید طرحواره های کامل espBerry (PDF) را دانلود کنید. اینجا.
ESP32 DevKit Pinout
پین اوت ESP32 DevKit یک نمایش بصری از پیکربندی پین برد ارائه می دهد. برای کامل view از تصویر پینآوت، کلیک کنید اینجا.
هدر Raspberry Pi 40-pin GPIO
Raspberry Pi دارای یک ردیف پین GPIO در امتداد لبه بالایی برد است. espBerry با هدر 40 پین GPIO که در همه بردهای فعلی Raspberry Pi وجود دارد، سازگار است. لطفاً توجه داشته باشید که هدر GPIO در Raspberry Pi Zero، Raspberry Pi Zero W و Raspberry Pi Zero 2 W خالی است. هدر GPIO دارای پیچ پین 1 (26 میلی متر) است.
اتصال پورت SPI
پورت SPI در espBerry امکان برقراری ارتباط سریالی تمام دوبلکس و همزمان را فراهم می کند. از یک سیگنال ساعت برای انتقال و دریافت داده ها بین یک کنترل مرکزی (master) و چندین دستگاه جانبی (slave) استفاده می کند. برخلاف ارتباطات UART که ناهمزمان است، سیگنال ساعت انتقال داده ها را همگام می کند.
سوالات متداول
- آیا می توانم از Raspberry Pi HAT با espBerry استفاده کنم؟
espBerry طوری طراحی شده است که با هر کلاه Raspberry Pi با اتصال به هدر 40 پین GPIO آنبورد سازگار باشد. با این حال، ممکن است تمام کلاه های موجود در بازار را پوشش ندهد. لطفاً برای اطلاعات بیشتر به شماتیک espBerry مراجعه کنید. - از چه زبان برنامه نویسی می توانم با espBerry استفاده کنم؟
espBerry از برنامه نویسی با استفاده از IDE محبوب Arduino پشتیبانی می کند که قابلیت های برنامه نویسی عالی را ارائه می دهد. - از کجا می توانم اطلاعات و منابع اضافی پیدا کنم؟
در حالی که این کتابچه راهنمای کاربر اطلاعات دقیقی را ارائه می دهد، شما همچنین می توانید پست ها و مقالات آنلاین را برای منابع اضافی کاوش کنید. اگر به اطلاعات بیشتر نیاز دارید یا پیشنهادی دارید، با ما تماس بگیرید.
تمام شدview
- espBerry DevBoard ترکیبی از توسعه ESP32-DevKitC با اتصال به سربرگ 40 پین GPIO سازگار با RPi آنبورد، با هر کلاه Raspberry Pi استفاده کنید.
- هدف espBerry نباید به عنوان جایگزین Raspberry Pi تلقی شود، بلکه باید عملکرد ESP32 را با استفاده از پیشنهادات گسترده کلاه های RPi در بازار گسترش داد و از آن استفاده کرد.tage از گزینه های سخت افزاری متعدد و انعطاف پذیر.
- espBerry راه حل مناسبی برای نمونه سازی و برنامه های کاربردی اینترنت اشیا (IoT) است، به ویژه آنهایی که به قابلیت های بی سیم نیاز دارند. همه کدهای منبع بازamples take advantage یکی از آردوینو IDE محبوب با قابلیت های برنامه نویسی عالی.
- در ادامه، ویژگیهای سختافزاری و نرمافزاری، از جمله تمام جزئیاتی را که برای افزودن Raspberry HAT باید بدانید، توضیح خواهیم داد. علاوه بر این، مجموعه ای از سخت افزار و نرم افزار را ارائه خواهیم کردampقابلیتهای espBerry را نشان میدهد.
- با این حال، از تکرار اطلاعاتی که قبلاً از طریق منابع دیگر در دسترس است، یعنی پستها و مقالات آنلاین، خودداری میکنیم. هر جا که اطلاعات اضافی را ضروری بدانیم، منابعی را برای مطالعه شما اضافه خواهیم کرد.
توجه: ما بسیار تلاش می کنیم تا هر جزئیاتی را که ممکن است برای مشتریانمان مهم باشد، مستند کنیم. با این حال، مستندسازی زمان می برد و ما همیشه کامل نیستیم. اگر به اطلاعات بیشتری نیاز دارید یا پیشنهادی دارید، لطفاً به آن مراجعه کنید با ما تماس بگیرید.
ویژگی های espBerry
- پردازنده: ESP32 DevKitC
- 32 بیتی Xtensa دو هسته ای @240 مگاهرتز
- WiFi IEEE 802.11 b/g/n 2.4 گیگاهرتز
- بلوتوث 4.2 BR/EDR و BLE
- 520 کیلوبایت SRAM (16 کیلوبایت برای کش)
- رام 448 کیلوبایتی
- قابل برنامه ریزی برای هر کابل USB A/micro-USB B
- هدر 40 پین GPIO سازگار با Raspberry Pi
- 20 GPIO
- 2 x SPI
- 1 x UART
- برق ورودی: 5 VDC
- حفاظت از قطبیت معکوس
- Overvoltagحفاظت
- جک اتصال بشکه برق 2.00 میلی متر ID (0.079 اینچ)، 5.50 میلی متر OD (0.217 اینچ)
- گزینه های 12/24 VDC موجود است
- محدوده عملیاتی: -40 درجه سانتی گراد ~ 85 درجه سانتی گراد
توجه: اکثر کلاهک های RPi در دمای 0 تا 50 درجه سانتی گراد کار می کنند - ابعاد: 95 × 56 میلیمتر - 3.75 × 2.2 اینچ
مطابقت دارد مشخصات مکانیکی استاندارد Raspberry Pi HAT…
سخت افزار
- به طور کلی، برد توسعه espBerry ماژول ESP32-DevKitC را با هر Raspberry Pi HAT با اتصال به هدر 40 پین GPIO سازگار با RPI ترکیب می کند.
- بیشترین اتصالات بین ESP32 و RPi HAT SPI و پورت UART هستند که در فصل های بعدی توضیح داده شده است. ما همچنین چندین سیگنال GPIO (خروجی ورودی با هدف عمومی) را نگاشت کرده ایم. برای اطلاعات بیشتر در مورد نقشه برداری، لطفاً به شماتیک مراجعه کنید.
- ما بسیار تلاش می کنیم تا مستندات خوبی ارائه کنیم. با این حال، لطفاً درک کنید که ما نمیتوانیم تمام جزئیات ESP32 را در این کتابچه راهنمای کاربر توضیح دهیم. برای اطلاعات دقیق تر، لطفا به راهنمای شروع ESP32-DevKitC V4.
اجزای تخته espBerry
کانکتور منبع تغذیه
- espBerry می تواند از طریق چندین منبع تغذیه شود:
- کانکتور Micro-USB در ماژول ESP32 DevKitC
- جک 5 VDC 2.0 میلی متری
- بلوک ترمینال 5 VDC
- منبع تغذیه خارجی متصل به RPi HAT
- کلاهک های Raspberry Pi وجود دارند که امکان تامین برق خارجی (مثلاً 12 VDC) را به طور مستقیم به کلاه می دهند. هنگام تغذیه espBerry از طریق این منبع تغذیه خارجی، باید جامپر را در انتخابگر منبع تغذیه روی "EXT" تنظیم کنید. در غیر این صورت، باید روی «On Board» تنظیم شود.
- این امکان وجود دارد که espBerry را به صورت داخلی ("On Board") تغذیه کنید، در حالی که هنوز برق روی HAT اعمال می شود.
طرحواره های espBerry
- espBerry به گونه ای طراحی شده است که تا حد امکان سیگنال های (GPIO، SPI، UART، و غیره) را نقشه برداری کند. با این حال، این لزوما به این معنا نیست که espBerry تمام کلاهک های موجود در بازار را پوشش می دهد. منبع نهایی شما برای سازگاری و توسعه کلاه خود باید شماتیک espBerry باشد.
- برای دانلود کامل طرحواره های espBerry (PDF) اینجا را کلیک کنید.
- علاوه بر این، ما ESP32 DevKitC و Raspberry Pi 40-pin GPIO header pinout را در فصل های بعدی اضافه کرده ایم.
پین اوت ESP32 DevKit
برای کامل view از تصویر بالا، اینجا را کلیک کنید.
هدر Raspberry Pi 40-pin GPIO
- یکی از ویژگی های قدرتمند Raspberry Pi ردیفی از پین های GPIO (ورودی/خروجی همه منظوره) در امتداد لبه بالایی برد است. یک هدر GPIO 40 پین در همه بردهای فعلی Raspberry Pi (بدون جمعیت در Raspberry Pi Zero، Raspberry Pi Zero W و Raspberry Pi Zero 2 W) یافت می شود. قبل از Raspberry Pi 1 Model B+ (2014)، بردها دارای هدر 26 پین کوتاه تری بودند. هدر GPIO در همه بردها (از جمله Raspberry Pi 400) دارای یک پین 0.1 اینچی (2.54 میلی متر) است.
- برای اطلاعات بیشتر مراجعه کنید سخت افزار Raspberry Pi – GPIO و هدر 40 پین.
- برای اطلاعات بیشتر در مورد کلاه های Raspberry Pi، لطفاً به تابلوهای الحاقی و کلاه.
اتصال پورت SPI
- SPI مخفف عبارت Serial Peripheral Interface، یک رابط سریالی تمام دوبلکس و همزمان است. رابط سنکرون به سیگنال ساعت برای انتقال و دریافت داده نیاز دارد. سیگنال ساعت بین یک کنترل مرکزی ("master") و چندین دستگاه جانبی ("slave") هماهنگ می شود. برخلاف ارتباطات UART که ناهمزمان است، سیگنال ساعت زمان ارسال داده و زمان آماده خواندن را کنترل می کند.
- فقط یک دستگاه اصلی می تواند ساعت را کنترل کند و سیگنال ساعت را به همه دستگاه های برده ارائه دهد. داده ها بدون سیگنال ساعت قابل انتقال نیستند. هم master و هم slave می توانند داده ها را با یکدیگر مبادله کنند. نیازی به رمزگشایی آدرس نیست.
- ESP32 دارای چهار گذرگاه SPI است، اما تنها دو گذرگاه برای استفاده در دسترس هستند و به نامهای HSPI و VSPI شناخته میشوند. همانطور که قبلاً ذکر شد، در ارتباطات SPI، همیشه یک کنترلر (همچنین به عنوان master شناخته می شود) وجود دارد که سایر دستگاه های جانبی (همچنین به عنوان Slave شناخته می شوند) را کنترل می کند. شما می توانید ESP32 را به عنوان یک Master یا Slave پیکربندی کنید.
- در espBerry، سیگنالهای اختصاص داده شده به IOهای پیشفرض:
- تصویر زیر سیگنال های SPI را از ماژول ESP32 به هدر RPi GPIO به عنوان گزیده ای از شماتیک نشان می دهد.
- انواع مختلفی از بردهای ESP32 موجود است. بردهای غیر از espBerry ممکن است پینهای SPI پیشفرض متفاوتی داشته باشند، اما میتوانید اطلاعات مربوط به پینهای پیشفرض را از صفحه داده آنها پیدا کنید. اما اگر پینهای پیشفرض ذکر نشدهاند، میتوانید با استفاده از طرح آردوینو آنها را پیدا کنید (از لینک اول زیر استفاده کنید).
- برای اطلاعات بیشتر رجوع کنید به:
- espBerry از اتصال VSPI بهعنوان پیشفرض استفاده میکند، به این معنی که اگر با سیگنالهای پیشفرض بروید، نباید با مشکل مواجه شوید. راه هایی برای تغییر انتساب پین و تغییر به HSPI وجود دارد (همانطور که در مراجع بالا توضیح داده شد)، اما ما این سناریوها را برای espBerry بررسی نکرده ایم.
- همچنین به بخش ما در مورد برنامه نویسی پورت SPI مراجعه کنید.
اتصال پورت سریال (UART).
- علاوه بر پورت USB داخلی، ماژول توسعه ESP32 دارای سه رابط UART، یعنی UART0، UART1 و UART2 است که ارتباطات ناهمزمان را با سرعت حداکثر 5 مگابیت در ثانیه ارائه میکند. این پورت های سریال را می توان تقریباً به هر پینی نگاشت کرد. در espBerry، ما IO15 را به عنوان Rx و IO16 را به عنوان Tx اختصاص دادیم، که همانطور که در اینجا نشان داده شده است به GPIO16 و GPIO20 در هدر 40 پین متصل می شوند:
- ما انتخاب کردهایم که از سیگنالهای استاندارد RX/TX (GPIO3/GPIO1) در ESP32 DevKit استفاده نکنیم، زیرا آنها اغلب برای چاپهای آزمایشی از طریق مانیتور سریال آردوینو IDE استفاده میشوند. این ممکن است در ارتباط بین ESP32 و RPi HAT اختلال ایجاد کند. در عوض، باید IO16 را به عنوان Rx و IO15 را به عنوان Tx در هر نرم افزار همانطور که در بخش نرم افزار این راهنما توضیح داده شده است، ترسیم کنید.
- همچنین به بخش ما در مورد برنامه نویسی سریال (UART) مراجعه کنید.
نرم افزار
- در ادامه به طور خلاصه مهمترین جنبه های برنامه نویسی برای espBerry را توضیح خواهیم داد. همانطور که قبلاً در این کتابچه راهنمای کاربر ذکر شد، در مواردی که فکر کنیم اطلاعات اضافی لازم است، مراجع آنلاین اضافه خواهیم کرد.
- برای اطلاعات بیشتر، پروژه عملی samples، ما را نیز ببینید نکات برنامه نویسی ESP32.
- علاوه بر این، بسیاری از سابق وجود داردamples از ادبیات برنامه نویسی ESP32، که ارزش سرمایه گذاری را دارند.
- با این حال، استفاده از آن را به شدت توصیه می کنیم پروژه های الکترونیکی با ESP8266 و ESP32، به خصوص برای پروژه های کاربردی بی سیم شما. بله، این روزها کتاب های خوب و منابع آنلاین رایگان زیادی در دسترس هستند، اما این کتابی است که ما از آن استفاده می کنیم. این رویکرد ما به بلوتوث، BLE، و WIFI را بسیار ساده کرد. برنامهنویسی برنامههای بیسیم بدون دردسر سرگرمکننده بود و ما آنها را در سایت خود به اشتراک میگذاریم web سایت
نصب و آماده سازی Arduino IDE
- تمام برنامه های ماamples با استفاده از Arduino IDE (محیط توسعه یکپارچه) به دلیل سهولت نصب و استفاده از آن توسعه یافته است. علاوه بر این، تعداد بی شماری از طرح های آردوینو به صورت آنلاین برای ESP32 موجود است.
- برای نصب، مراحل زیر را دنبال کنید:
- مرحله 1: اولین قدم دانلود و نصب Arduino IDE است. این کار را می توان به راحتی با دنبال کردن لینک https://www.arduino.cc/en/Main/Software و دانلود رایگان IDE انجام داد. اگر قبلاً یکی را دارید، مطمئن شوید که آخرین نسخه را دارید.
- مرحله 2: پس از نصب، Arduino IDE را باز کرده و به آن بروید Files -> Preferences برای باز کردن پنجره ترجیحات و یافتن "Additional Boards Manager URLs:” مطابق شکل زیر:
- کادر متن ممکن است خالی باشد یا در حال حاضر حاوی جعبه دیگری باشد URL اگر قبلاً از آن برای برد دیگری استفاده کرده اید. اگر خالی است، به سادگی زیر را بچسبانید URL در جعبه متن
https://dl.espressif.com/dl/package_esp32_index.json - اگر جعبه متن قبلاً حاوی موارد دیگری است URL فقط این را اضافه کنید URL برای آن، هر دو را با کاما (،) جدا کنید. ما قبلاً Teensy را داشتیم URL. تازه وارد شدیم URL و کاما را اضافه کرد.
- پس از اتمام، بر روی OK کلیک کنید و پنجره ناپدید می شود.
- کادر متن ممکن است خالی باشد یا در حال حاضر حاوی جعبه دیگری باشد URL اگر قبلاً از آن برای برد دیگری استفاده کرده اید. اگر خالی است، به سادگی زیر را بچسبانید URL در جعبه متن
- مرحله 3: به Tools -> Boards -> Board Managers بروید تا پنجره مدیر Board باز شود و ESP32 را جستجو کنید. اگر URL به درستی چسبانده شده است، پنجره شما باید صفحه زیر را با دکمه Install پیدا کند، فقط روی دکمه Install کلیک کنید و برد شما باید نصب شود.
اسکرین شات بالا ESP32 را پس از نصب نشان می دهد. - مرحله 4: قبل از شروع برنامه نویسی، باید سخت افزار ESP32 مناسب را انتخاب کنید (گزینه های متعددی وجود دارد). همانطور که در اینجا نشان داده شده است، به Tools -> Boards بروید و ESP32 Dev Module را انتخاب کنید:
- مرحله 5: مدیر دستگاه را باز کنید و بررسی کنید ESP32 شما به کدام پورت COM متصل است.
- هنگام استفاده از espBerry، به دنبال Silicon Labs CP210x USB to UART Bridge باشید. در تنظیمات ما COM4 را نشان می دهد. به Arduino IDE برگردید و در قسمت Tools -> Port، پورتی را که ESP شما به آن متصل است انتخاب کنید.
- اگر با Arduino IDE مبتدی هستید، لطفاً به آن مراجعه کنید استفاده از نرم افزار آردوینو (IDE).
برنامه نویسی پورت SPI
- موارد زیر فقط مختصری را نشان می دهدview برنامه نویسی SPI برنامه نویسی SPI آسان نیست، اما هر زمان که پروژه جدیدی را شروع می کنیم، به دنبال کد آنلاین می گردیم (مثلا github.com).
- به عنوان مثال، برای برنامهریزی کنترلکننده CAN MCP2515، ما از نسخه اصلاحشده کتابخانه MCP_CAN برای آردوینو توسط کوری فاولر استفاده میکنیم، یعنی از دانش و تلاش او برای پروژه خود استفاده میکنیم.
- با این وجود، ارزش وقت گذاشتن برای درک برنامه نویسی SPI در سطح پایه را دارد. به عنوان مثال، espBerry دارای سیگنال های SPI است که در اینجا نشان داده شده است:
- این تنظیمات باید در کد برنامه اعمال شود. لطفاً برای کسب اطلاعات بیشتر در مورد برنامه نویسی SPI با ESP32 به منابع زیر مراجعه کنید:
برنامه نویسی پورت سریال (UART).
- در espBerry، IO15 را به عنوان Rx و IO16 را به عنوان Tx اختصاص دادیم که به GPIO16 و GPIO20 در هدر 40 پین متصل هستند.
- ما انتخاب کردهایم که از سیگنالهای استاندارد RX/TX (GPIO3/GPIO1) در ESP32 DevKit استفاده نکنیم، زیرا آنها اغلب برای چاپهای آزمایشی از طریق مانیتور سریال آردوینو IDE استفاده میشوند. این ممکن است در ارتباط بین ESP32 و RPi HAT اختلال ایجاد کند. در عوض، باید IO16 را به عنوان Rx و IO15 را به عنوان Tx در هر نرم افزار ترسیم کنید.
- کد بالا نشان دهنده یک برنامه سابق استampبا استفاده از سریال 1.
- هنگام کار با ESP32 تحت Arduino IDE، متوجه خواهید شد که دستور Serial به خوبی کار می کند اما Serial1 و Serial2 این کار را نمی کنند. ESP32 دارای سه پورت سریال سخت افزاری است که می توان آنها را تقریباً به هر پین نگاشت کرد. برای اینکه Serial1 و Serial2 کار کنند، باید کلاس HardwareSerial را درگیر کنید. به عنوان مرجع، نگاه کنید ESP32، Arduino و 3 پورت سریال سخت افزاری.
- پست ما را هم ببینید پروژه espBerry: ESP32 با تراشه USB-UART CH9102F برای سرعت سریال تا 3 مگابیت بر ثانیه.
درباره شرکت
- حق چاپ © 2023 Copperhill Technologies Corporation – کلیه حقوق محفوظ است
- https://espBerry.com
- https://copperhilltech.com
اسناد / منابع
![]() |
برد توسعه espBerry ESP32 با Raspberry Pi GPIO [pdf] دفترچه راهنمای کاربر برد توسعه ESP32 با Raspberry Pi GPIO، ESP32، برد توسعه با Raspberry Pi GPIO، برد با Raspberry Pi GPIO، Raspberry Pi GPIO |