سلام
جناب مهندس من طبق آموزش جنابعالی stm32cube را نصب کردم البته با ورژن5/6 بعد از تمام تنظیمات وقتی دکمه تولید کد را میزنم کد برای keil نمیسازد و پیغام میدهد
the code is successfully generated under J:/cube1/firstcube
but MDK-ARM v5project generation have a problem
برنامه را آبدیت کردم به ورژن 6 تبدیل شد اما باز mdk را تولید نمیکند البته نمونه دیگر ide را تولید کرد اما برای keil تولید نمیکند لطفا راهنمایی بفرمایید
ایجاد کند به صورت کلی میگم. بعد مشکل شمارو نحوه برطرف کردنش میگم (اکثر این موارد در آموزش گفته شده ولی با توجه به اینکه نرم افزارت بروز میشند مواردی که نیاز باشه در این مواقع گفته میشه ):
1- اولین مشکل می تونه از مسیر ایجاد پروژه و اسم پروژه باشه ( بهتره فقط شامل حروف انگلیسی باشه )
2- می تونه باگ Cube باشه که با تغییر نسخه مشخص میشه . ( اصولا این مورد نیست و قفط در یک ورژن خاص دیدم همچین چیزی گزارش داده بودند ).
و مشکل اصلی که مشکل شما هم هست انشاءالله :
3- ورژن جاوا با ورژنی که باید باشه متفاوت هست . در ورژن های جدید محدودیت های جدید هم برای جاوا اضافه شده.
به طور مثال 64 بیتی بودنش و اینکه حداقل ورژنش چند باشهر و بهترین ورژن چی هست .
که ورژنی هست که براتون آپلود کردم و میشه ورژن 11 که تفاوتی که با بقیه ورژن ها داره اینه که LTS هست .
اروری که برای شما نمایش میده رو من پیشفرض های سیستمم تغییر دادم تا ایجاد بشه که میشه عکس زیر :
و با استفاده از Task Manager مثل عکسی که میذارم می تونید ورزن جاوایی که در حال اجرا هست ببینید و مسیر نصبش هم ببینید ،که برای من الان 14 هست :
و ممکنه نیاز باشه ( که برای من اینجور هست ) ورژن ها مختلفی از جاوا نصب داشته باشید و بسته به نیازتون بخواهید جاوا پیشفرض تغییر بدید که در تصویر زیر می بینید چطور می تونید اینکار انجام بدید :
و با اینکار وقتی در CMD دستور Java -Version وارد کنید مثل تصویر زیر براتون نمایش داده میشه :
خب تا اینجا نکته خاصی نبود اما وقتی شما جاوا ورژن بالاتری از 11 که الان برای Cube نصب کردیم نصب داشته باشید STM32CubeMX به طور پیش فرض با اون اجرا میشه و البته که دلیل هم داره و ما میخوایم این دلیل که مربوط به اجرای فایل JavaW.exe میشه و برای ما مشکل ایجاد می کنه رو هم در ادامه درست کنیم .
برای اینکار باید رجیستری های ویندور تغییر بدید من براتون دو تا فایل با پسوند .bat درست کردم که اینکار براتون راحت تر انجام بده تنها کاری که شما باید انجام بدید اینه که مسیر جاوایی که نیاز دارید داخل فایل ها بنویسید که در تصویر زیر براتون مشخص کردم کجا :
( برای باز کردن فایل ها می تونید راست کلیک کرده روی فایل و edit بزنید من اینکار با استفاده از NotePad++ انجام دادم .
3-1- فایل اول به اسم
MakeCubeMx_JDK_As_Default_JDK
برای تغییر جاوا پیش فرض به جاوا 11 که لینک دانلودش آخر همین مطلب گذاشتم ( که با این جاوا Cube به درستی برای Keil هم تولید پروزه خواهد کرد ) :
و در آخر برای تغییر رجیستری ویندوز روی فایل .bat که در آن تغییر ایجاد کردید راست کلیک کرده و Run As Administrator را بزنید و یعد از باز شدن صفحه مشکی کلمه Y را فشار داده و Enter بزنید .( فایل اول برای حل مشکل Cube و فایل دوم برای برگرداندن به حالت قبل )
بعد از انجام اینکار می توانید STM32CubeMx را باز کرده و بدون مشکل مانند تصویر زیر پروزه را برای Keil هم ایجاد کنید . :
اگر فقط نیاز به یک جاوا دارید کافی است تمام جاواهایی که روی سیستم هست پاک کنید سیستم را یک بار ریستارت کنید و فایل نصبی که در آخر متن بالا براتون قرار دادم که ورژن 11 جاوا هست دانلود و نصب کنید .تمام .