مشکل در نرم افزار keil

سلام
نرم افزار خطا های مختلفی میده برای مثال به دستور for(int i=0;i<10;i++) ایراد میگیره که متغییر باید در ابتدای تابع main تعریف بشه و قبل از هر عملیاتی

یا if و for و while و… رو اجازه نمیده خودم بنویسم و اگه از templates استفاده نکنم اون خط هارو اجرا نمیکنه


اگر با کیوب پروژه رو استارت کنم این خطوط ابتدا و انتها میاد
ولی اما اگه به صورت رجیستری بخوام بدون واسطه و از خود keil اغاز کنم این خط ها نماید
(تیک cmsis core و startup device میزنم )

برد بلو پیل با میکرو stm32f103c8t6 تهیه کردم
طبق رفرنس کلاک پیش فرض روی HSI و 8مگ هست…
اما کلاک پیش فرض روی 72مگ است ( موقع مقدار دهی BRR برای uart متوجه شدم)

لطفا راهنمایی کنید
ممنون :pray:

سلام،
فکر میکنم مشکل از استاندارد کامپایلر باشه که اجازه نمیده از تعریف متغیر در زمان نیاز استفاده کنید. برید به قسمت Options for Target (با کلیک راست روی پروژه در پنجره سمت چپ میتونید این گزینه رو ببینید)، بعد به تب C/C++ برید و در قسمت Misc Controls یک بار بنویسید:

--c99

و ذخیره کنید یک بار clean و build کنید پروژه رو. اگر کار نکرد یک بار دیگه به همین مسیر برید و به جای c99-- بنویسید:

-std=c99

و دوباره ذخیره، clean و build کنید. اگر مشکل حل نشد یک عکس از همون پنجره‌ی Options for Target و سربرگ C/C++ بفرستید همینجا.

2 پسندیده

سلام
ممنون از راهنمایی و وقتی که گذاشتید :pray:
متاسفانه رفع نشد

اگر تیک گزینه‌ی C99 Mode رو بزنید چی؟

1 پسندیده

خیلی ممنون از راهنمایی تون مشکل رفع شد

1 پسندیده