آموزش ARM Cortex M میکروکنترلر DMA Programming Demystified

ARM Cortex M Microcontroller DMA Programming Demystified

نکته: آخرین آپدیت رو دریافت میکنید حتی اگر این محتوا بروز نباشد.
نمونه ویدیوها:
توضیحات دوره: دسترسی مستقیم به حافظه رمزگشایی شده با تجهیزات جانبی STM32 (ADC، SRAM، UART، M2M، M2P، P2M) و تمرین های کد جاسازی شده C لطفاً ویدیوهای پیش نمایش رایگان را تماشا کنید، امروز حتی بدون ثبت نام در این دوره چیزی یاد خواهید گرفت. اصول دسترسی مستقیم به حافظه در میکروکنترلر معماری میکروکنترلر و رابط های باس ماتریس گذرگاه قشر ARM MCU مبتنی بر M دسترسی همزمان به داده از پیکربندی های کنترلی ARM و DMA DMA مانند اندازه انفجاری، FIFO، تراز داخلی کنترلر DMA و رابط های گذرگاه کانال های کنترل کننده DMA، جریان ها، اولویت حافظه به حافظه انتقال داده با استفاده از DMA و تمرینات محیطی برای حافظه و حافظه به محیطی تمرینات DMA و برنامه نویسی تنظیمات DMA محیطی کنترل کننده DMA وقفه و وقفه در مدیریت اشکال زدایی پیش نیازها: دانش اولیه C و میکروکنترلر را می توان به مزیت اضافه کرد اما اجباری نیست ذهن پذیرای ایده ها یا استدلال های جدید

هدف این دوره رفع ابهام از داخلی کنترلر DMA میکروکنترلر و برنامه نویسی آن با وسایل جانبی مختلف است. مناسب برای دانشجویان مبتدی تا متوسط ​​در زمینه سیستم های جاسازی شده و برنامه نویسی. لطفاً توضیحات زیر را برای درک پیشنهاد دوره مطالعه کنید.

چیزهای کلیدی که یاد می گیرید،

1) ماتریس گذرگاه چند AHB و رابط های اتوبوس ARM Cortex M

2) ارتباط MCU Master و Slave از طریق ماتریس باس

3) داخلی‌های DMA: نقشه‌برداری کانال/جریان‌ها/fifo/پورت‌های اصلی/Arbiter/و غیره

4) حالت‌های انتقال مختلف DMA: M2P، P2M، M2M

5) DMA با تجهیزات جانبی مانند ADC، GPIO، UART_RX/TX و بسیاری دیگر از لوازم جانبی در این دوره به روز می شود.

6) برنامه نویسی DMA از ابتدا. به شما کمک می کند تا مشکلات DMA را در سایر پلتفرم های میکروکنترلر یا پردازنده عیب یابی کنید. وقتی راه سختی را یاد می گیرید، می توانید مشکلات را سریعتر حدس بزنید و اشکال زدایی کنید.

7) و بسیاری از ویدیوهای دیگر درباره حالت دایره ای/انتقال پشت سر هم/RTOS و غیره به زودی اضافه خواهند شد.


سخت افزار مورد استفاده:

1) برد STM32F446RE Nucleo64

شما همچنین می توانید از سایر تابلوهای STM32 مانند تابلوی کشف، تابلوی ارزیابی یا هر تابلوی دیگری استفاده کنید.


نرم افزار مورد استفاده:

1) KEIL MDK V5 (نسخه رایگان، برای ویندوز)

2) میز کار سیستم Openstm32 ( windows/linux/mac) (رایگان)

3) نرم افزار CubeMx از ST (رایگان)


روند نصب در دوره پوشش داده شده است

توضیحات:

این دوره در مورد درک کنترلر دسترسی مستقیم به حافظه میکروکنترلر و نحوه استفاده از آن در برنامه های تعبیه شده است.


این دوره از میکروکنترلر STM32 مبتنی بر ARM Cortex M برای تمام مباحث تئوری و تمرین‌های کد استفاده می‌کند. این دوره جزئیات عمومی DMA را مورد بحث قرار می‌دهد که می‌توانید از آن برای سایر میکروکنترلرها استفاده کنید، اما اگر میکروکنترلر 32 بیتی ST نیست، کد را تغییر داده‌اید تا روی هدفتان اجرا شود.


این دوره به شما کمک می کند تا با مرور سطوح مختلف بحث، اعتماد به نفس خود را در مدیریت کنترلر DMA MCU و اتصال نقاط خود افزایش دهید.

من واقعاً سعی کردم موضوع را با توضیحات و تمرینات تمیز/عمومی ساده کنم.

ما در مورد اینکه چرا DMA مورد نیاز است و اینکه ARM چگونه کار انتقال داده را با تمرینات بارگذاری می کند، مفید است بحث خواهیم کرد.

ما انواع مختلف انتقال DMA مانند M2M، P2M، و M2P (M: حافظه P: محیطی) و پیکربندی های مختلف DMA را یاد خواهیم گرفت. لطفاً از طریق "چه چیزی یاد خواهم گرفت؟" بخش بالا.

برای دانش‌آموزان مبتدی/متوسط، این دوره در واقع مزیت بزرگی خواهد داشت و به استفاده موفقیت‌آمیز از DMA در برنامه‌های کاربردی جاسازی شده کمک می‌کند.


ترتیب یادگیری دوره های FastBit Embedded Brain Academy،

اگر در زمینه سیستم‌های جاسازی شده مبتدی هستید، می‌توانید دوره‌های ما را به ترتیب ذکر شده در زیر بگذرانید.
این فقط یک توصیه از سوی مربی برای مبتدیان است.

1) برنامه نویسی جاسازی شده با میکروکنترلر C: مبتدیان مطلق (Embedded C)

2) برنامه نویسی سیستم های جاسازی شده در پردازنده ARM Cortex-M3/M4 (مخصوص پردازنده ARM Cortex M4)

3) تسلط بر میکروکنترلر با توسعه درایور جاسازی شده (MCU1)

4) تسلط بر میکروکنترلر: TIMERS، PWM، CAN، RTC، LOW POWER(MCU2)

5) تسلط بر میکروکنترلر: STM32-LTDC، LCD-TFT، LVGL (MCU3)

6) طراحی سیستم جاسازی شده با استفاده از ماشین‌های حالت UML (ماشین دولتی)

7) تسلط بر RTOS: FreeRTOS و STM32Fx عملی با اشکال زدایی (RTOS)

8) میکروکنترلر ARM Cortex M DMA Programming Demystified (DMA)

9) توسعه بوت لودر سفارشی میکروکنترلر STM32Fx (Bootloader)

10) لینوکس جاسازی شده گام به گام با استفاده از Beaglebone Black (Linux)

11) برنامه نویسی درایور دستگاه لینوکس با استفاده از Beaglebone Black (LDD1)



سرفصل ها و درس ها

شروع DMA و معماری چند AHB DMA Getting Started and Multi AHB Architecture

شروع DMA و معماری چند AHB DMA Getting Started and Multi AHB Architecture

  • در مورد مربی About the instructor

  • بررسی اجمالی دوره Course Overview

  • سوالات متداول FAQ

  • کد منبع Source Code

  • یادداشت مهم Important Note

  • DMA مقدمه: Master – Slave Communication DMA Introduction: Master – Slave Communication

  • درک نمودار بلوک MCU Understanding MCU Block Diagram

  • آشنایی با ماتریس باس چند AHB Understanding Multi AHB Bus Matrix

  • انتقال همزمان داده با استفاده از ARM و DMA Concurrent Data Transfer using ARM and DMA

  • انتقال همزمان داده با استفاده از ARM و DMA-Demonstration Concurrent Data Transfer using ARM and DMA-Demonstration

  • انتقال همزمان داده با استفاده از ARM و DMA-Demonstration contd Concurrent Data Transfer using ARM and DMA-Demonstration contd

  • تست درایو Test Drive

تخته توسعه مورد استفاده در دوره های ما Development board used in our courses

تخته توسعه مورد استفاده در دوره های ما Development board used in our courses

  • یادداشت برای دانش آموزان Note for the students

  • درباره هیئت توسعه MCU About MCU Development board

  • STM32F4 Discovery and Nucleo: جزئیات برد STM32F4 Discovery and Nucleo : Board Details

  • نصب درایور ST-Link ST-Link Driver Installation

  • ارتقاء سیستم عامل ST Link ST Link Firmware Upgrade

راه اندازی KEIL-MDK-5 برای MCU های مبتنی بر ARM Cortex M KEIL-MDK-5 Setup For ARM Cortex M based MCUs

راه اندازی KEIL-MDK-5 برای MCU های مبتنی بر ARM Cortex M KEIL-MDK-5 Setup For ARM Cortex M based MCUs

  • یادداشت برای دانش آموزان Note for the students

  • نصب و راه اندازی KEIL-MDK-5 KEIL-MDK-5 Installation

  • ادامه نصب KEIL-MDK-5. KEIL-MDK-5 Installation Contd.

  • نصب پک KEIL-MDK-5 KEIL-MDK-5 Pack Installation

  • مکان یابی فایل های نصب بسته Locating Pack Installation files

  • ایجاد یک پروژه KEIL Creating a KEIL Project

  • تمرین: برنامه تعویض LED با استفاده از APIهای Board BSP Exercise: LED Toggling App using Board BSP APIs

  • تمرین: برنامه تعویض LED با استفاده از Board BSP APIs-Nucleo Exercise: LED Toggling App using Board BSP APIs-Nucleo

  • تمرین: اضافه کردن پشتیبانی از دکمه با استفاده از APIهای برد BSP (Nucleo) Exercise : Adding button support using board BSP APIs(Nucleo)

نصب Open STM32 System Workbench Installing Open STM32 System Workbench

نصب Open STM32 System Workbench Installing Open STM32 System Workbench

  • در حال بارگیری OpenSTM32 System-Workbench Downloading OpenSTM32 System-Workbench

  • نصب OpenSTM32 System-Workbench Installing OpenSTM32 System-Workbench

نصب STM32Cube Mx و تولید کد STM32Cube Mx Installation and Code Generation

نصب STM32Cube Mx و تولید کد STM32Cube Mx Installation and Code Generation

  • یادداشت برای دانش آموزان Note for the students

  • نصب STM32CubeMX STM32CubeMX Installation

  • ایجاد پروژه ها با استفاده از STM32CubeMX Part-1 Creating Projects using STM32CubeMX Part-1

  • ایجاد پروژه ها با استفاده از STM32CubeMX-Part 2 Creating Projects using STM32CubeMX-Part 2

  • ایجاد پروژه ها با استفاده از STM32CubeMX-Part 3 Creating Projects using STM32CubeMX-Part 3

  • ایجاد پروژه ها با استفاده از STM32CubeMX-Part 4 Creating Projects using STM32CubeMX-Part 4

تمرینات DMA: GPIO Polling و Interrupt DMA Exercises: GPIO Polling and Interrupt

تمرینات DMA: GPIO Polling و Interrupt DMA Exercises: GPIO Polling and Interrupt

  • برنامه نویسی DMA: مراحل عمومی که باید دنبال کنید DMA Programming : Generic Steps to follow

  • تعویض LED با استفاده از DMA (حالت نظرسنجی) - قسمت 1 Toggling of LED using DMA(Polling mode)-Part-1

  • تغییر حالت LED با استفاده از DMA (حالت نظرسنجی) - قسمت 2 Toggling of LED using DMA(Polling mode)-Part-2

  • تعویض LED با استفاده از DMA (حالت نظرسنجی) - قسمت 3 Toggling of LED using DMA(Polling mode) - Part-3

  • تغییر حالت LED با استفاده از DMA (حالت نظرسنجی) - قسمت 4 Toggling of LED using DMA(Polling mode)-Part-4

  • تغییر حالت LED با استفاده از DMA (حالت وقفه) - قسمت 1 Toggling of LED using DMA (Interrupt Mode)- Part 1

  • تغییر حالت LED با استفاده از DMA (حالت وقفه) - قسمت 2 Toggling of LED using DMA (Interrupt Mode)- Part 2

  • تست درایو Test Drive

تمرینات DMA: UART به SRAM DMA Exercises: UART to SRAM

تمرینات DMA: UART به SRAM DMA Exercises: UART to SRAM

  • انتقال داده UART به SRAM با استفاده از DMA (حالت وقفه): تصویر بزرگ UART to SRAM Data Transfer using DMA (Interrupt Mode) : Big Picture

  • انتقال داده UART به SRAM با استفاده از DMA (حالت وقفه): پیاده سازی UART to SRAM Data Transfer using DMA (Interrupt Mode) : Implementation

  • انتقال داده UART به SRAM با استفاده از DMA (حالت وقفه). UART to SRAM Data Transfer using DMA (Interrupt Mode) Contd

نمودار بلوک عملکردی DMA (داخل کنترلر DMA چیست؟) DMA Functional Block Diagram ( What's inside the DMA controller ? )

نمودار بلوک عملکردی DMA (داخل کنترلر DMA چیست؟) DMA Functional Block Diagram ( What's inside the DMA controller ? )

  • پورت های اصلی و برده DMA Master and Slave Ports of DMA

  • جریان های DMA DMA Streams

  • نقشه برداری کانال DMA DMA Channel Mapping

  • مطالعه موردی نقشه برداری کانال DMA : P2M DMA Channel Mapping Case Study1 : P2M

  • مطالعه موردی نقشه برداری کانال DMA2: M2M، M2P DMA Channel Mapping Case Study2: M2M, M2P

تمرینات DMA: ADC به SRAM DMA Exercises : ADC to SRAM

تمرینات DMA: ADC به SRAM DMA Exercises : ADC to SRAM

  • تمرین DMA: ADC به SRAM Big Picture DMA Exercise : ADC to SRAM Big Picture

  • تنظیمات پیکربندی ADC و DMA ADC and DMA Configuration Settings

  • ADC و DMA: درک کد-1 ADC and DMA : Understanding Code-1

  • ADC و DMA: درک کد-2 ADC and DMA : Understanding Code-2

داور DMA و اولویت جریان DMA Arbiter and Stream Priority

داور DMA و اولویت جریان DMA Arbiter and Stream Priority

  • داور DMA و اولویت جریان DMA Arbiter and Stream Priority

حالت های انتقال DMA و حالت FIFO DMA Transfer Modes and FIFO mode

حالت های انتقال DMA و حالت FIFO DMA Transfer Modes and FIFO mode

  • انتقال داده P2M P2M Data Transfer

  • انتقال داده M2P M2P Data Transfer

  • تمرین DMA: SRAM به UART2_TX قسمت 1 DMA Exercise : SRAM to UART2_TX Part-1

  • تمرین DMA: SRAM به UART2_TX قسمت 2 DMA Exercise : SRAM to UART2_TX Part-2

برنامه نویسی DMA از ابتدا (برنامه نویسی سطح ثبت) DMA Programming from scratch ( Register level programming)

برنامه نویسی DMA از ابتدا (برنامه نویسی سطح ثبت) DMA Programming from scratch ( Register level programming)

  • معرفی Introduction

  • انتقال داده M2P: ایجاد پروژه M2P Data Transfer : Project creation

  • دکمه شروع مراحل دریافت وقفه Button Init steps to Receive an interrupt

  • کدنویسی برای Button init Part-1 Coding for Button init Part-1

  • کدنویسی برای Button init Part-2 Coding for Button init Part-2

  • کدنویسی برای Button init Part-3 Coding for Button init Part-3

  • اجرای کنترل کننده وقفه دکمه Implementing Button interrupt handler

  • بحث در مورد مراحل پیکربندی دستگاه جانبی UART Discussing steps to configure the UART Peripheral

  • تنظیمات پیکربندی UART PINMUX UART PINMUX configuration settings

  • کدی برای نشان دادن عملکرد UART TX RX در پین های gpio code to bring out UART TX RX functionality on gpio pins

  • راه اندازی Baudrate و پیکربندی پارامترهای UART Setting up Baudrate and Configuring UART parameters

  • تست ارتباط UART Testing UART communication

  • طوفان فکری مراحل اولیه سازی DMA Brainstorming DMA Initialization Steps

  • شناسایی جریان DMA Identifying the DMA stream

  • پیکربندی جهت جریان DMA و عرض داده Configuring DMA Stream direction and data width

  • پیکربندی انتخاب کانال Configuring Channel Selection

  • تست با درخواست UART TX DMA Testing with UART TX DMA request

  • بحث قطع جریان DMA (IRQ) قسمت 1 DMA stream interrupt(IRQ) discussion Part1

  • بحث قطع جریان DMA (IRQ) قسمت 2 DMA stream interrupt(IRQ) discussion Part2

  • کنترل کننده جریان IRQ کدگذاری DMA: قسمت 1 Coding DMA stream IRQ handler : Part1

  • کنترل کننده جریان IRQ کدگذاری DMA: قسمت 2 Coding DMA stream IRQ handler : Part2

  • یادداشت برای دانش آموزان Note for the students

سخنرانی جایزه BONUS LECTURE

سخنرانی جایزه BONUS LECTURE

  • سخنرانی جایزه BONUS LECTURE

نمایش نظرات

Udemy (یودمی)

یودمی یکی از بزرگ‌ترین پلتفرم‌های آموزشی آنلاین است که به میلیون‌ها کاربر در سراسر جهان امکان دسترسی به دوره‌های متنوع و کاربردی را فراهم می‌کند. این پلتفرم امکان آموزش در زمینه‌های مختلف از فناوری اطلاعات و برنامه‌نویسی گرفته تا زبان‌های خارجی، مدیریت، و هنر را به کاربران ارائه می‌دهد. با استفاده از یودمی، کاربران می‌توانند به صورت انعطاف‌پذیر و بهینه، مهارت‌های جدیدی را یاد بگیرند و خود را برای بازار کار آماده کنند.

یکی از ویژگی‌های برجسته یودمی، کیفیت بالای دوره‌ها و حضور استادان مجرب و با تجربه در هر حوزه است. این امر به کاربران اعتماد می‌دهد که در حال دریافت آموزش از منابع قابل اعتماد و معتبر هستند و می‌توانند به بهترین شکل ممکن از آموزش‌ها بهره ببرند. به طور خلاصه، یودمی به عنوان یکی از معتبرترین و موثرترین پلتفرم‌های آموزشی آنلاین، به افراد امکان می‌دهد تا به راحتی و با کیفیت، مهارت‌های مورد نیاز خود را ارتقا دهند و به دنبال رشد و پیشرفت شغلی خود باشند.

آموزش ARM Cortex M میکروکنترلر DMA Programming Demystified
جزییات دوره
9.5 hours
80
Udemy (یودمی) Udemy (یودمی)
(آخرین آپدیت)
9,259
4.7 از 5
ندارد
دارد
دارد
جهت دریافت آخرین اخبار و آپدیت ها در کانال تلگرام عضو شوید.

Google Chrome Browser

Internet Download Manager

Pot Player

Winrar

FastBit Embedded Brain Academy FastBit Embedded Brain Academy

روی Firmware و Embedded Engineering کار می کند

Kiran Nayak Kiran Nayak

نرم افزار تعبیه شده