سلام
اگر تا الان با نرمافزار Arduino IDE کار کرده اید می توانید به سادگی میکروکنترلر های ARM را برنامه نویسی کنید.
نرم افزار:
اولین قدمی که باید بردارید نصب لایبراری STM32 بر روی Arduino IDE می باشد.
ابتدا روی گزینه Preferences کلیک کنید.

سپس بر روی گزینه زیر کلیک کنید.

در صفحه باز شده لینک زیر را کلیک کنید.

https://github.com/stm32duino/BoardManagerFiles/raw/main/package_stmicroelectronics_index.json
سپس تمامی موارد را تایید کنید.
به صفحه اول آردوینو برگردید و بر روی گزینه زیر کلیک کنید.

در صفحه باز شده STM را سرچ کنید و بر روی گزینه Install کلیک کنید.

صبر کنید تا فایل ها دانلود و نصب شود.
پس از نصب شدن در لیست برد های شما STM32 اضافه می شود و می توانید بر اساس مدل میکروکنترلر خود انتخاب کنید تا پروگرام انجام شود.

برای اطلاعات بیشتر می توانید به ریپو زیر مراجعه کنید.
https://github.com/stm32duino/Arduino_Core_STM32
سخت افزار
برای استفاده از انواع میکرو کنترلر های STM پیشنهاد میکنم از ST-Link برای پروگرام کردن استفاده نمایید.
البته می توانید از USB-TTL نیز استفاده کنید اما دردسر های زیادی دارد و پروسه انجام این کار زیاد می باشد.
ST-Link انواع مختلفی دارد یک نمونه را در این لینک قرار داده ام ، تفاوتی بین مدل ها ندارد.
معروف ترین نوع STM32 نیز STM32F103C8T6 می باشد که به صورت ماژولی با اسم BluePill نیز شناخته می شود.
این میکروکنترلر به دلیل داشتن آموزش های زیاد و ریسورس های بالا بسیار مورد توجه است و به دلیل قیمت مناسبی که دارد از محبوبیت خاصی برخوردار است. برای افرادی که میخواهد با ARM شروع کنند این مدل را پیشنهاد میکنم
لینک STM32f103C8T6 ، البته توجه داشته باشید مدل های متفاوتی از این محصول وجود دارد اما میکروکنترلر اصلی تمامی این موارد یکی می باشد و کارایی که دارند یکی می باشد.
راه اندازی میکرو کنترلر
پس از انجام تمامی موارد بالا ابتدا با نصب درایور ST-Link و نصب برنامه STM32CubeProgrammer بر روی سیستم خود آماده استفاده از این میکروکنترلر هستید.
لینک دانلود درایور ST-Link (برای دانلود نیاز دارید در سایت ST.com ثبت نام کنید)
لینک دانلود STM32CubeProgrammer (برای دانلود نیاز دارید در سایت ST.com ثبت نام کنید)
با انتخاب تنظیمات زیر و زدن دکمه آپلود می توانید برد را پروگرام کنید.
برای نمونه کافی است نمونه کد Blink را باز کنید و در ابتدای کد دستور زیر را وارد کنید.
#define LED_BUILTIN PC13
این دستور تعریف میکند که LED بر روی پایه PC13 قرار دارد.
نکته
گاهی امکان دارد ST-Link میکروکنترلر شما را شناسایی نکند این به دلیل قدیمی بودن فریور ST-Link می باشد و برای آپدیت کردن فریمور کافی است برنام STM32CubeProgrammer را باز کنید و بر روی گزینه Firamware Upgrade کلیک کنید و در صفحه باز شده حالا ST-Link را وصل کنید و بر روی گزینه Open In Update Mode بزنید و در بخش پایین ورژن پروگرامر شما و ورژنی که میخواهد آپدیت شود را نمایش داده می شود.

نرمافزار فریمور آپدیت را می توانید از این لینک نیز دانلود کنید.
امیدوارم سؤال شما را پاسخ داده باشم