جدول المحتويات:

الطراز المذهل STM32 L4: 12 خطوة
الطراز المذهل STM32 L4: 12 خطوة

فيديو: الطراز المذهل STM32 L4: 12 خطوة

فيديو: الطراز المذهل STM32 L4: 12 خطوة
فيديو: مذهل !! أفكار مدهشة في الأثاث الذكي وتصميمات مبدعة لتوفير مساحة .. ستجعل منزلك يبدو من العام 2200 2024, شهر نوفمبر
Anonim
Image
Image
اكتشاف STM32F746G
اكتشاف STM32F746G

أريد أن أبدأ هذه المقالة التي توضح أن هذا الحرف L (من L4) يعني منخفض (أو بشكل أساسي ، Ultra Low Power). وبالتالي ، فإنه يستهلك القليل من الطاقة ويظهر لماذا هذا الطراز STM32 مذهل! تنفق ميكرو أمبير ولديها نظام بداخلها يمكنه تحديد تكلفة كل جزء من أجزاء الشريحة. وهذا يسمح بإدارة فعالة للغاية للطاقة وبأداء عالٍ.

لقد تحدثت بالفعل عن هذا المتحكم الدقيق في الفيديو ، "أسهل طريقة لبرمجة متحكم!" في الفيديو ، أوضحت كيفية برمجة STM32 L4 باستخدام MBED. ولكن أثناء البحث عن المزيد حول هذا الموضوع ، اكتشفت شيئًا لم تكشف عنه الشركة المصنعة STMicroelectronics. قامت بتطبيق Core Arduino في الشريحة ، مما يتيح البرمجة من خلال Arduino IDE.

في هذه الصورة ، لدينا نسختان من L4. STM32L432KC مطابق لـ Arduino Nano و STM32L476RG ، اللذان لهما IOs مكافئة لـ Arduino Uno. لذلك ، أثناء العمل مع نسختين من وحدة التحكم الدقيقة القوية هذه ، سأوضح لك كيفية تثبيت Arduino Core في عائلة STM32. سأشرح أيضًا الخصائص الرئيسية لمجموعات STM32.

الخطوة 1: اللوحات مع Core Arduino

لقد وضعت هنا قائمة حول التنوع. ومع ذلك ، سنعمل مع STM32L432KC و STM32L476RG.

STM32F0

  • نوكليو F030R8
  • نوكليو F091RC
  • 32F0308 ديسكفري

STM32F1

  • BluePill F103C8 (دعم أساسي ، بدون USB)
  • MapleMini F103CB (دعم أساسي ، بدون USB)
  • نوكليو F103RB
  • STM32VLDISCOVERY

STM32F2

نوكليو F207ZG

STM32F3

  • نوكليو F302R8
  • نوكليو F303K8
  • نوكليو F303RE

STM32F4

  • نوكليو F401RE
  • Nucleo F411RE
  • نوكليو F429ZI
  • نوكليو F446RE
  • STM32F407G-DISC1

STM32F7

STM32F746G- الاكتشاف

STM32L0

  • نوكليو L031K6
  • نوكليو L053R8
  • B-L072Z-LRWAN1

STM32L1

نوكليو L152RE

STM32L4

  • نوكليو L432KC
  • نوكليو L476RG
  • NUCLEO-L496ZG-P
  • NUCLEO-L496ZG-P
  • B-L475E-IOT01A

الخطوة الثانية: اكتشاف STM32F746G

فقط للتوضيح ، أعرض تفاصيل اكتشاف STM32F746G ، والذي أعتبره وحشًا. لقد طلبت بالفعل هذه الشريحة ، وآمل أن أتحدث عنها قريبًا.

مميزات:

متحكم STM32F746NGH6 يضم 1 ميغا بايت من ذاكرة فلاش و 340 كيلو بايت من ذاكرة الوصول العشوائي في حزمة BGA216

  • يدعم ST-LINK / V2-1 على متن الطائرة إمكانيات إعادة تعداد USB
  • تمكين Mbed (mbed.org)
  • وظائف USB: منفذ COM افتراضي ، وتخزين كبير السعة ، ومنفذ تصحيح الأخطاء
  • 4.3 بوصة 480x272 لون LCD-TFT مع شاشة تعمل باللمس بالسعة
  • موصل الكاميرا
  • برنامج ترميز الصوت SAI
  • مدخل خط الصوت ومقبس خرج الخط
  • مخرجات مكبر صوت ستيريو
  • اثنان من الميكروفونات ST MEMS
  • موصل إدخال SPDIF RCA
  • اثنين من الأزرار الانضغاطية (المستخدم وإعادة التعيين)
  • 128-Mbit Quad-SPI ذاكرة فلاش
  • ذاكرة SDRAM سعة 128 ميجابت (يمكن الوصول إلى 64 ميجابت)
  • موصل لبطاقة microSD
  • موصل اللوحة الأم RF-EEPROM
  • USB OTG HS مع موصلات Micro-AB
  • USB OTG FS مع موصلات Micro-AB
  • موصل إيثرنت متوافق مع IEEE-802.3-2002
  • خمسة خيارات لإمداد الطاقة:

- ST LINK / V2-1

- موصل USB FS

- موصل USB HS

- VIN من موصل Arduino

- خارجي 5 فولت من الموصل

خرج إمداد الطاقة للتطبيقات الخارجية:

- 3.3 فولت أو 5 فولت

موصلات Arduino Uno V3

الخطوة 3: Arduino Due X STM NUCLEO-L476RG

اردوينو ديو X STM NUCLEO-L476RG
اردوينو ديو X STM NUCLEO-L476RG

فيما يلي مقارنة مع Arduino Due ، وهو ARM Cortex-M3. لقد استخدمت هذا النموذج في مقاطع الفيديو: Nema 23 Stepper Motor مع برنامج تشغيل TB6600 مع Arduino Due ، و SpeedTest: Arduinos - ESP32 / 8266s - STM32 ، مع STM NUCLEO-L476RG ، وهو ARM Cortex-M4 Ultra Low Power ، وهو في الصورة على الجانب الأيمن.

اردوينو ديو:

متحكم: AT91SAM3X8E

جهد التشغيل: 3.3 فولت

جهد الإدخال (موصى به): 7-12 فولت

جهد الإدخال (الحدود): 6-16 فولت

منافذ الإدخال / الإخراج الرقمية: 54 (منها 12 توفر خرج PWM)

دبابيس الإدخال التناظرية: 12

دبابيس الإخراج التناظرية: 2 (DAC)

إجمالي تيار خرج التيار المباشر على جميع خطوط الإدخال / الإخراج: 130 مللي أمبير

تيار مستمر ل 3.3 فولت دبوس: 800 مللي أمبير

تيار مستمر لدبوس 5 فولت: 800 مللي أمبير

ذاكرة فلاش: 512 كيلوبايت كلها متاحة لتطبيقات المستخدم

SRAM: 96 كيلوبايت (بنكان: 64 كيلوبايت و 32 كيلوبايت)

سرعة الساعة: 84 ميجا هرتز

الطول: 101.52 ملم

العرض: 53.3 مم

الوزن: 36 جرام

STM NUCLEO-L476RG:

STM32L476RGT6 في حزمة LQFP64

وحدة المعالجة المركزية ARM®32-bit Cortex®-M4

مسرع متكيف في الوقت الحقيقي

(ART Accelerator ™) يسمح بتنفيذ حالة عدم الانتظار من ذاكرة فلاش

80 ميجا هرتز كحد أقصى تردد وحدة المعالجة المركزية

VDD من 1.71 فولت إلى 3.6 فولت

1 ميجا بايت فلاش

128 كيلو بايت SRAM

SPI (3)

اي 2 سي (3)

يوسارت (3)

يورت (2)

لوبارت (1)

GPIO (51) مع إمكانية المقاطعة الخارجية

استشعار سعوي مع 12 قناة

12 بت ADC (3) مع 16 قناة

12 بت DAC مع قناتين

FPU أو وحدة النقطة العائمة

* أسلط الضوء هنا على FPU المنفصل لـ STM NUCLEO-L476RG ، مما يعني أن الشريحة تقوم بالحسابات المثلثية بسرعة مذهلة. هذا على عكس Arduino Due ، الذي يحتاج إلى معالج جيني للقيام بذلك.

الخطوة 4: Dhrystone

دريستون
دريستون
دريستون
دريستون

Dhrystone هو برنامج معياري كمبيوتر اصطناعي تم تطويره في عام 1984 بواسطة Reinhold P. Weicker ، والذي يُقصد به أن يكون ممثلًا لبرمجة النظام (عددًا صحيحًا). أصبح Dhrystone ممثلًا لأداء المعالج الكلي (CPU). اسم "Dhrystone" هو تورية على خوارزمية معيارية مختلفة تسمى Whetstone. هذا إجراء مأخوذ من بعض العمليات العامة.

هذا البرنامج موجود هنا لتجميع شيء داخل هذه المتحكمات الدقيقة في Arduino. وكانت نتيجة الاختبارين اللذين أجريهما ، أحدهما باستخدام Dhrystone والآخر من فيديو SpeedTest ، على النحو التالي:

اردوينو: 37.00 دولار أمريكي

Dhrystone Benchmark ، الإصدار 2.1 (اللغة: C)

يبدأ التنفيذ ، 300000 يمر عبر Dhrystone

ينتهي التنفيذ

ميكروثانية لتشغيل واحد عبر Dhrystone: 10.70

Dhrystones في الثانية: 93 ، 431.43

تصنيف VAX MIPS = 53.18 DMIPS

تشغيل اختبار فرناندوك

الوقت الإجمالي: 2 ، 458 مللي ثانية

  • ليس لديها FPU
  • برنامج Dhrystone على Arduino

www.saanlima.com/download/dhry21a.zip

STM NUCLEO-L476RG: 23.00 دولارًا أمريكيًا

Dhrystone Benchmark ، الإصدار 2.1 (اللغة: C)

يبدأ التنفيذ ، 300000 يمر عبر Dhrystone

ينتهي التنفيذ

نانو ثانية لتشغيل واحد عبر Dhrystone: 9.63

Dhrystones في الثانية: 103 ، 794.59

تصنيف VAX MIPS = 59.07 DMIPS

تشغيل اختبار فرناندوك

الوقت الإجمالي: 869 مللي ثانية 2.8x أسرع

  • PI يصل إلى 40 ميجابت / ثانية ، USART 10 ميجابت / ثانية
  • 2x DMA (14 قناة)
  • حتى 80 ميجا هرتز / 100 DMIPS مع مسرع ART

الخطوة 5: STM32L432KC X Arduino Nano

STM32L432KC X اردوينو نانو
STM32L432KC X اردوينو نانو

اللوحة اليسرى هي STM32L432KC ، حيث وضعت STMicroelectronics دبوس Arduino Nano المتطابق في الصورة على اليمين.

الخطوة 6: STM32L432KC

STM32L432KC
STM32L432KC

نظام Arm® Cortex®-M4 منخفض الطاقة للغاية 32 بت

MCU + FPU ، 100DMIPS ، حتى 256 كيلو بايت فلاش ، 64 كيلو بايت SRAM ، USB FS ، تناظري ، صوت

ما يصل إلى 26 IOs أسرع وأكثر تسامحًا حتى 5V

  • RTC مع تقويم HW وأجهزة الإنذار والمعايرة
  • ما يصل إلى 3 قنوات كشف سعوية
  • 11x مؤقتات: 1x16 بت تحكم متقدم في المحرك

1x 32 بت و 2x 16 بت للأغراض العامة ، 2x 16 بت أساسي ، 2x موقت منخفض الطاقة 16 بت (متوفر في وضع التوقف) ، 2x مراقب ، مؤقت SysTick

ذاكرة:

- ما يصل إلى 256 كيلو بايت فلاش ، حماية قراءة رمز الملكية

- 64 كيلو بايت SRAM بما في ذلك 16 كيلو بايت مع فحص تماثل الأجهزة

- واجهة ذاكرة رباعية SPI

ملحقات تناظرية غنية (توريد مستقل)

- 1x 12 بت ADC 5 مللي ثانية ، حتى 16 بت مع زيادة عينات الأجهزة ، 200 ميكرو أمبير / مللي ثانية

- قناتان من إخراج DAC 12 بت ، استهلاك منخفض للطاقة

- مكبر تشغيلي 1x مع PGA مدمج

- 2x مقارنة بالواجهات منخفضة الطاقة للغاية

- 1x UPS (واجهة صوت تسلسلية)

- 2x I2C FM + (1 ميجابت / ثانية) ، SMBus / PMBus

- 3x USARTs (ISO 7816 ، LIN ، IrDA ، مودم)

- 1x LPUART (توقف 2 إيقاظ)

- 2x SPI (و 1x SPI Quad)

- يمكن (2.0B نشط)

- سيد بروتوكول سلك واحد SWPMI I / F

- IRTIM (واجهة الأشعة تحت الحمراء)

  • 14 قناة تحكم DMA
  • عشوائي عدد المولدات

الخطوة 7: قم بتثبيت Core Arduino لبطاقات STM32L4

قم بتثبيت Core Arduino لبطاقات STM32L4
قم بتثبيت Core Arduino لبطاقات STM32L4
  1. قم بتثبيت برنامج ST-Link الذي يسجل
  2. عنوان Json
  3. المجالس: مدير البطاقة
  4. المكتبات: مدير المكتبة

الخطوة 8: تثبيت ST-Link - البرنامج الذي يسجل

قم بتثبيت ST-Link - البرنامج الذي يسجل
قم بتثبيت ST-Link - البرنامج الذي يسجل

قم بتنزيل الملف على https://www.st.com/en/development-tools/stsw-link0…. ما عليك سوى تسجيل الجهاز وتنزيله وتثبيته.

الخطوة 9: مخاطبة Json

العنوان Json
العنوان Json

في العقارات ، قم بتضمين العنوان التالي:

github.com/stm32duino/BoardManagerFiles/ra…

الخطوة 10: المجالس: مدير مجلس الإدارة

المجالس: مدير مجلس الإدارة
المجالس: مدير مجلس الإدارة

في Arduino Board Manager ، قم بتثبيت STM32 Core ، والتي تبلغ حوالي 40 ميجابايت.

الخطوة 11: المكتبات: مدير المكتبة

المكتبات: مدير المكتبة
المكتبات: مدير المكتبة

أخيرًا ، قم بتثبيت المكتبات.

أنا شخصياً أحببت مجموعة STM32duino.com ، التي تحتوي على عدة أمثلة ، قمت بتثبيت بعضها. لقد قمت أيضًا بتنزيل FreeRTOS ، والذي أعجبني كثيرًا. لقد وجدته سريعًا وموثوقًا به. لقد قمت أيضًا بتثبيت (لكن لم أختبر) LRWAN. سأخبرك قريبًا ما إذا كان ذلك جيدًا أم لا.

الخطوة 12: تنزيل ملف PDF

بي دي إف

موصى به: