تحتوي مجموعة الاكتشاف STM32MP157A-DK1 الخاصة بـ STM32MP157 SoC على مركزي Bosch M_CAN IP (واحد M_CAN وواحد MTT_CAN) يدعمان CAN FD.
على عكس مجموعة الاكتشاف STM32MP157C-DK2، لا يوفر STM32MP157A-DK1 موصلًا (بما في ذلك جهاز الإرسال والاستقبال CAN وموصل SUB-D9) للوصول إلى وحدات التحكم M_CAN CAN. راجع للشغل. يوفر STM32MP157C-DK2 إمكانية الوصول فقط إلى أحد مركزي CAN IP المتوفرين.
للوصول إلى وحدتي التحكم CAN على STM32MP157A-DK1 نحتاج إلى ...
من المحتمل أن يبدو الإعداد النهائي كما يلي:
تم تثبيت جهازي إرسال واستقبال CAN FD على كابل IDE قديم
في الواقع، يعد موقع STM wiki جيدًا جدًا وحديثًا، لذا يمكن اتباعه لإعداد نظامك لبناء نواة Linux الخاصة بك: تثبيت نواة Linux
النقاط الرئيسية:
قبل تجميع النواة باستخدام المترجم المتقاطع من SDK ، يلزم نسخ التصحيحات الثلاثة التالية إلى التصحيحات الثلاثين الموجودة في دليل linux-stm32mp-4.19-r0
:
يمكن العثور على هذه التصحيحات الثلاثة في دليل التصحيحات.
بعد نسخ التصحيحات الثلاثة إلى دليل linux-stm32mp-4.19-r0
ما عليك سوى اتباع الخطوات الموجودة في README.HOW_TO.txt والتي يمكن العثور عليها أيضًا في هذا الدليل لبناء النواة الجديدة وتثبيتها أخيرًا على الهدف.
ينص موقع STM wiki على ما يلي: الملف المساعد README.HOW_TO.txt هو المرجع لبناء Linux kernel - وهم على حق.
يتكون الجهاز من جهازي إرسال واستقبال CAN FD (يدعمان أيضًا Classic CAN 2.0) وبعض الكابلات:
لقد قمت بلحام ثنائي الفينيل متعدد الكلور وجهاً لوجه في الخلف للتعامل مع ثنائي الفينيل متعدد الكلور واحد فقط وأخيراً قمت بتثبيت ثنائي الفينيل متعدد الكلور بشريط لاصق على الوجهين على كابل IDE بعد لحام المسامير.
دبابيس للاتصال FD_CAN1 :
وظيفة تي آر إكس | دبوس تي آر إكس | دبوس CN2 | وظيفة CN2 |
---|---|---|---|
TXD | 1 | 03 | FDCAN1_TX |
VSS | 2 | 06 | أرض |
VDD | 3 | 02 | +5 فولت |
آر إكس دي | 4 | 05 | FDCAN1_RX |
فيو | 5 | 01 | +3V3 |
يمكن_L | 6 | - | (CAN_L إلى SUB-D9 دبوس 2) |
يمكن_H | 7 | - | (CAN_H إلى SUB-D9 دبوس 7) |
ستبي | 8 | 09 | أرض |
دبابيس للاتصال FD_CAN2 :
وظيفة تي آر إكس | دبوس تي آر إكس | دبوس CN2 | وظيفة CN2 |
---|---|---|---|
TXD | 1 | 36 | FDCAN2_TX |
VSS | 2 | 20 | أرض |
VDD | 3 | 04 | +5 فولت |
آر إكس دي | 4 | 10 | FDCAN2_RX |
فيو | 5 | 17 | +3V3 |
يمكن_L | 6 | - | (CAN_L إلى SUB-D9 دبوس 2) |
يمكن_H | 7 | - | (CAN_H إلى SUB-D9 دبوس 7) |
ستبي | 8 | 14 | أرض |
لقد قمت بعمل رسم تخطيطي قبيح قبل لحام مركبات ثنائي الفينيل متعدد الكلور وجهاً لوجه والذي يصور أيضًا تغييرًا لأنني لم أحصل على DTS بشكل صحيح في المرة الأولى. يمكن استخدام دبابيس محددة فقط لتوجيه اتصالات CAN IP. راجع التفاصيل في "مجموعات الاكتشاف مع وحدات MPU STM32MP157 - دليل المستخدم" (DevKit-en.DM00591354.pdf، الصفحة 31 و32).
وظيفة | دبوس بغا | دبوس CN2 |
---|---|---|
FDCAN1_RX (أيضًا I2C5_SCL) | PA11 | 05 |
FDCAN1_TX (أيضًا I2C5_SDA) | PA12 | 03 |
FDCAN2_RX (أيضًا USART3_RX) | PB12 | 10 |
FDCAN2_TX (أيضًا USART3_CTS) | ص13 | 36 |
تم بالفعل ضبط كل من I2C5 وUSART3 على "معطل" في ملف STM32MP157A-DK1 DTS من قبل. لذلك لن يكون لدينا أي تدخل في هذه الدبابيس.
شكرًا جزيلاً لـ Alexandre Torgue من STM على مقتطف شجرة جهاز M_CAN! لقد تعلمت الكثير من هذا الاختراق الصغير لاستخدام نوى M_CAN IP على STM32MP157A-DK1.
يرجى إعلامي إذا وجدت أي عدم تطابق بين الوصف أعلاه والصورة أدناه. وينبغي أن أقول الشيء نفسه. وقد تم تلخيص هذا الوصف على حد علمي. إذا لم تكن متأكدًا، فيرجى التحقق مرة أخرى من وثائق STM. إذا لم تتمكن من لحام الأشياء فاسأل شخصًا آخر. يمكنك استخدام هذا الوصف كما هو على مسؤوليتك الخاصة!
أوليفر هارتكوب 2020-01-28