برنامه‌ریزی برد دیسکاوری stm32f4 با UART

discovery-stm32f429

دستگاه‌های STM32F4 دارای قابلیت‌های بسیار جالب و خوبی هستند. آن‌ها را میتوان تنها با یک تبدیل یو اس بی به UART برنامه‌ریزی کرد. هر دستگاه دارای یک بوتلودر داخلی است که از برنامه نویسی UART پشتیبانی میکند. این یک روش خیلی خوب برای برد های دیسکاوری نیست زیرا این برد ها یک روش بهتر و سریعتر برای اینکار دارند و آن هم st-link است. اما اگر شما روی برد شخصی خودتان کار کنید این راه حل خوب به نظر میرسد در غیر این صورت همان روش اول بهتر است.

در این آموزش ما به شما یاد خواهیم داد که چگونه یک دستگاه را با تبدیل یو اس بی به UART برنامه‌ریزی کنیم. ما از تبدیل FTDI دست ساز خودمان در اینجا استفاده میکنیم

این روش روی همهی برد های STM32F4 (دیسکاوری – نوکلئو ) کارخواهد کرد همچنین اگر یک برد دست ساز شخصی هم داشته باشید میتوانید از این روش بهره ببرید.

قدم به قدم

۱٫ تبدیل usb به UART را به کامپیوتر متصل کنید.

   ۱٫ درایور هارا در صورت لزوم نصب و آماده به کار کنید سپس به device manager رفته و شماره COM را چک کنید (مثلاً COM3 )

۲٫ در مورد ما هنگامی که مبدل FTDI را متصل کردیم نتایج زیر مشاهده شد

2

۲٫فایل Flash Loader Demonstrator را از سایت رسمی ST دانلود کنید.

۳٫ لودر (loader) را نصب کنید.

   ۳٫ تنظیمات خاصی در این مرحله مورد نیاز نیست. مراحل نصب کاملاً واضح و قابل فهم است و جای نگرانی نیست.

۴٫لودر را باز کنید و باید چیزی شبیه به تصویر زیر را داشته باشید

3

۵٫ قبل از اینکه ما با برنامه لودر ادامه کار را انجام دهیم باید سخت‌افزار خود را برای UART Bootloader آماده کنیم. برد را در دستانتان بگیرید و مراخل زیر را انجام دهید:

   ۱٫پین boot0 را پیدا کنید و آن را روی HIGH تنظیم کنید.در برد های دیسکاوری پین VDD نزدیک پین boot0 است. سپس اگر شما جامپر دارید فقط کافی آن را سرجایش بگذارید.

   ۲٫ پین PB2 یا همان BOOT1 را پیدا کنید و آن را روی LOW تنظیم کنید. در برد های دیسکاوری پین GND نزدیک PB2 است . سپس اگر جامپر دارید آن را در جای مخصوص قرار دهید.

   ۳٫ اگر شما جامپر ندارید میتوانید شما میتوانید دو جامپری که در GND برد دیسکاوری قرار داده شده‌اند را استفاده کنید. آن‌ها در زیر st-link قرار داده شده اند.

۶٫ ما نیاز به متصل کردن مبدل usb به UART خود با دستگاه STM32F4 داریم.

   ۶٫۱٫ STM32F4 از ترکیب های مختلف UART پشتیبانی میکند

      ۱٫ TX:PA9 ; RX:PA10

      ۲٫TX:PB10 ; RXPB11

      ۳٫ TX:PC10 ; RX:PC11

      ۴٫ من این پین هارا تست کرده‌ام ولی ممکن است پین های دیگری نیز این کار را انجام دهند

      ۵٫ اگر شما به دیسکاوری STM32F4 کار میکنید پین های PA9 و PA10 برای شما کار نمیکنند زیرا آن‌ها خازن هایی برای USB ای که به این پین متصل شده هستند. از ترکیب های دیگر استفاده کنید.

      ۶٫ tx مربوط به STM32F4 را به وسیله RX مبدل متصل کنید و RX را نیز به TX تبدیل کننده وصل کنید.

۷٫ به مرحله فلش کردن لودر که در بالا گفتیم میرسیم

۸٫ تنظیمات را همانطورری که هستن رها کنید و فقط Port name را به پورت خودتان تغییر دهید. از ما COM3 بود. سپس next را بزنید

۹٫ اگر خوش شانس باشید میتوانید به مرحله ۱۱ بروید.

۱۰٫ اگر شانس با شما یار نباشد با هشدار زیر مواجه خواهید شد

4

   ۱.اگر این ارور را دریافت کردید ابتدا مطمئن شوید که پین هارا به درستی متصل کرده‌اید و همینطور مطمئن شوید که پین های BOOT نیز به درستی وصل شده باشند

   ۲.برد را از منبع تغذیه خود (احتمالاً یو اس بی در دیسکاوری) جدا کنید و سپس آن را دوباره وصل کنید و در برنامه دوباره تست کنید. برد باید کار کند و شما باید به مرحله بعد راه پیدا کنید

۱۱٫ هنگامی که مراحل پیدا کردن برد تمام شد یک پنجره همانند زیر دریافت خواهید کرد. Next را فشار دهید.

5

۱۲٫ اگر پنجره جدید باز شد در آنجا باید هدف خود را مشخص کنید (target)

   ۱.شما باید یک مقدار به دستگاهتان نسبت دهید. اگر ۱ مگابایت فضای فلش دارید گزینه STM32F4_1024k را انتخاب کنید.

   ۲.برای دیسکاوری STM32F4 گزینه گفته شده را انتخاب کنید

   ۳. دیسکاوری STM32F429 پشتیبانی نمیشود زیرا این پردازشگر با ۲ مگابایت حافظه فلش آماده شده است که این سایز توسط ST loader tool شناسایی و پشتیبانی نمیشود.

۴. گزینه next را فشار دهید

6

  ۱۳٫ پنجره جدیدی باز خواهد شد.در آنجا باید فایلی با پسوند hex یا bin یا s19 را انتخاب کنید.

   ۱.فایل مورد نظر خود را از قسمت download to device انتخاب کنید.

   ۲. بقیه تنظیمات را رها کنید.

   ۳. گزینه next را بزنیدو سپس برنامه به صورت خودکار شروع به دانلود اطلاعات در STM32F4 میکند.

7

۱۴٫ اطلاعات صحیح به وسیله یک پنجره به شما نشان داده خواهند شد.

8

۱۵٫کمه close را فشار دهید

۱۶٫ برنامه شروع به نوشته شدن روی دستگاه میکند اما اگر شما دستگاه را ریست کنید کار نمیکند.

۱۷٫ جامپر هارا جدا کرده و دستگاه را ریست کنید سپس برنامه از روی حافظه فلش بوت شده و برای UART صبر نمیکند

   ۱٫حال Boot0 را روی LOW تنظیم کنید.

    ۲. قسمت PB2 نیز اهمتیت ندارد که روی چه چیز تنظیم شده باشد

۱۸٫ امیدوارم بهتون خوش گذشته باشد 🙂

این برد را از فروشگاه دانشجوکیت میتوانید تهیه کنید.

3 دیدگاه ها

  1. ندا می‌گه:

    سلام

    من برد دیسکاوری رو خرید با کابل مینی usb به لپتاپم وصل کردم اما برد روشن نشد. ایا تنظیمات خاصی قبل از اتصال به لپتاپ روی برد باید انجام داد؟
    متشکرم

پاسخ دهید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *