سوالات مخصوص ادیتور EmBitz در خصوص AVR

  • نویسنده موضوع Alma
  • تاریخ شروع

Alma

مدیر
پرسنل مدیریت
لطفا فقط سوالات مخصوص AVR رو در این پیج مطرح کنید
 

karabakh_leaks

همکار جدید
سلام
در آموزش هاي موجود در كانال تلگرام. اقدام به نامگذاري رجيسترهاي پورت b كرده ايد.
اگر از پايه هاي يك پورت براي مقاصد مختلف استفاده شود به نظرم اين روش سمبليك كردن رجيسترها به خوانايي كد كمكي نمي كند.
آيا بهتر نيست با نام خود رجيسترها كار كنيم و تنها شماره پايه ها را بنا بر استفاده خود ديفاين كنيم؟
upload_2018-11-10_12-24-53.png
 

پیوست‌ها

  • upload_2018-11-10_12-18-6.png
    upload_2018-11-10_12-18-6.png
    122.1 کیلوبایت · بازدیدها: 3

Alma

مدیر
پرسنل مدیریت
سلام
در آموزش هاي موجود در كانال تلگرام. اقدام به نامگذاري رجيسترهاي پورت b كرده ايد.
اگر از پايه هاي يك پورت براي مقاصد مختلف استفاده شود به نظرم اين روش سمبليك كردن رجيسترها به خوانايي كد كمكي نمي كند.
آيا بهتر نيست با نام خود رجيسترها كار كنيم و تنها شماره پايه ها را بنا بر استفاده خود ديفاين كنيم؟
مشاهده فایل‌پیوست 863
با سلام
خوب فکر میکنم اسم مخصوص داشتن خیلی خواناتر از استفاده از اسم خود پین باشه در صورت استفاده از مقاصد مختلف هم میتونید برای هر پین اسمهای مختلفی تعریف کنید
این نکته رو هم در نظر داشته باشید که وقتی مدت زیادی از نوشتن برنامه گذشته باشه و کد رو فراموش کرده باشید یا باید برای هر خط کامنت مناسب نوشته باشید یا با توجه به انتخاب مناسب دیفاین ها و متغیر ها میتونید به سرعت با کد هماهنگ بشید

البته این مورد هم بستگی به برنامه نویس داره و سلایق شخصی ایشون
نکته دیگه اینکه این پیج فقط برای مطرح کرذن سوالات در خصوص ادیتور ایجاد شده پس بهتره این سوالات رو در پیج دیگه ای مطرح میکردید
 

karabakh_leaks

همکار جدید
سلام
حتما ازین به بعد سوالات مربوط به زبان c رو جای دیگه مطرح میکنم.
سوال :
آیا با ادیتور embitz میشه میکرو رو پروگرام کرد؟ منوی این کار کجاست؟
 

Alma

مدیر
پرسنل مدیریت
سلام
حتما ازین به بعد سوالات مربوط به زبان c رو جای دیگه مطرح میکنم.
سوال :
آیا با ادیتور embitz میشه میکرو رو پروگرام کرد؟ منوی این کار کجاست؟

بله میشه
به دو روش

اول با استفاده از قابلیت دیباگ که در این صورت میکرو ابتدا پروگرام میشه و بعد به صورت اتوماتیک میکرو به حالت دیباگ میره
البته قبلش باید تنظیمات لازم جهت شناسایی پروگرامر انجام شده باشه
upload_2018-12-6_13-33-15.png

اما روش دوم استفاده از کد های خط فرمان پروگرامر و استفاده از قابلیت tools در این ادیتور هست
برای این کار باید از طریق منوی Tools به صورت دستی پروگرامر رو به ادیتور شناسایی کرده و دستورات پروگرام رو در قسمت مربوطه وارد کنید
برای مثال برای پروگرامر ST-Link باید تنظیمات به این صورت انجام بشه

upload_2018-12-6_13-38-22.png

کد:
ST-LINK
C:\Program Files (x86)\STMicroelectronics\STM32 ST-LINK Utility\ST-LINK Utility\ST-LINK_CLI.exe
-c SWD -p "${TARGET_OUTPUT_DIR}${TARGET_OUTPUT_BASENAME}.hex" 0x08000000 -Q -V -Rst -Run Exit
${PROJECT_DIR}
upload_2018-12-6_13-40-28.png

بعد از انجام تنظیمات فوق به منوی Tools یک منوی دیگه اضافه خواهد شد

upload_2018-12-6_13-42-24.png


برای راحتی کار میتونید برای این قابلیت شورت کی هم تعریف کنید
برای این کار از منوی settings منوی editor رو انتخاب کنید و با توجه به تصویر زیر منوی مورد نظر رو انتخاب و شورت کی مناسب رو تنظیم کنید

upload_2018-12-6_13-45-20.png
 

mohammad_azizi

همکار
من یه کتابخانه به فایل اضافه کردم و ارور داد که باید زبان c شما c98 است که باید به c11 ارتقا بدی چطور این کار رو انجام بدم
 

mohammad_azizi

همکار
قبل از این که کسی بگه خودم بگم
رفتم دنبالش پیدا کردم
upload_2019-1-23_21-25-4.png

build options

رو بزنید

upload_2019-1-23_21-26-38.png

اونجا که آبی نوشتم اینه std=c11-
به امید دیدار
 

پیوست‌ها

  • upload_2019-1-23_21-27-4.png
    upload_2019-1-23_21-27-4.png
    247.9 کیلوبایت · بازدیدها: 2
  • Like
واکنش‌ها[ی پسندها]: Alma

Alma

مدیر
پرسنل مدیریت
قبل از این که کسی بگه خودم بگم
رفتم دنبالش پیدا کردم
مشاهده فایل‌پیوست 899

build options

رو بزنید

مشاهده فایل‌پیوست 900

اونجا که آبی نوشتم اینه std=c11-
به امید دیدار


با تشکر عالی بود !!!!
بله ورژن C11 قابلیت های بیشتری داره
برای مثال میتونید داخل حلقه های فور هم متغیر تعریف کنید و ...
کد:
for(uint16_t i=0; i<10; i++)
حتما این قابلیت رو در ورژن های اینده فایل فیکس اضافه میکنم
 

mohammad_azizi

همکار
اگه بخواهیم در این کامپایلر کتابخانه ها را ببینیم چه راهی وجود دارد
الان من برای کاری نیاز به i2c دارم که در اینترنت در ادیتور های GCC دستور #include <compat/twi.h> را تعریف کرده اند پیدا کرده ام اما من نتوانسته ام کار بگیرم و ارور میداد
برای کارهای بعدی دیگه مشکل بر نخوریم
 
آخرین ویرایش:

Alma

مدیر
پرسنل مدیریت
اگه بخواهیم در این کامپایلر کتابخانه ها را ببینیم چه راهی وجود دارد
الان من برای کاری نیاز به i2c دارم که در اینترنت در ادیتور های GCC دستور #include <compat/twi.h> را تعریف کرده اند پیدا کرده ام اما من نتوانسته ام کار بگیرم و ارور میداد
برای کارهای بعدی دیگه مشکل بر نخوریم

ما چطور کد زبان سی رو تو متن ها بزاریم هر کاری میکنم نمیشه

هر جفت سوالات شما مبهم هست من اصلا متوجه منظورتون نشدم میشه بیشتر و دقیقتر توضیح بدید
نمونه کد بدید یا کل پروژه رو اپلود کنید دقیقا بفرمایید مشکل چیه ؟؟؟
برای استفاده از هر کتابخونه ای نیاز هست که دقیقا روش استفاده اونو بدونید
در ضمن i2c هم خیلی پروتوکل سخت و نامفهومی نیست که بخواید براش دنبال کتابخونه بگردید خودتون هم میتونید به راحتی براش کد بنویسید و کتابخونه بسازید
 

mohammad_azizi

همکار
هر جفت سوالات شما مبهم هست من اصلا متوجه منظورتون نشدم میشه بیشتر و دقیقتر توضیح بدید
نمونه کد بدید یا کل پروژه رو اپلود کنید دقیقا بفرمایید مشکل چیه ؟؟؟
برای استفاده از هر کتابخونه ای نیاز هست که دقیقا روش استفاده اونو بدونید
در ضمن i2c هم خیلی پروتوکل سخت و نامفهومی نیست که بخواید براش دنبال کتابخونه بگردید خودتون هم میتونید به راحتی براش کد بنویسید و کتابخونه بسازید

من می خواستم تو انجمن یعنی همین صفحه که دارم متن می نویسم کد زبان سی رو بزارم نتونستم چطور این کار رو انجام بدم
 

Alma

مدیر
پرسنل مدیریت
با استفاده از ابزار درج... میتونیدکد رو وارد متن کنی

upload_2019-1-29_12-49-39.png

در ضمن حتما بعد از اضافه کردن کد اونو با استفاده از ابزار هم ترازی چپ چین کن

upload_2019-1-29_12-51-58.png
 

mohammad_azizi

همکار
فایلی که با اون بشه برنامه رو باز کرد چطوری میشه پیدا کرد یا من موقع ذخیره سازی باید یه تیک رو میزدم که نزدم مثلا فایل آلتیوم رو بزنم نرم افزار آلتیوم اون برنامه رو باز میکنه و اتمل استودیم هم همین طور
 

Alma

مدیر
پرسنل مدیریت
فایلی که با اون بشه برنامه رو باز کرد چطوری میشه پیدا کرد یا من موقع ذخیره سازی باید یه تیک رو میزدم که نزدم مثلا فایل آلتیوم رو بزنم نرم افزار آلتیوم اون برنامه رو باز میکنه و اتمل استودیم هم همین طور

این سوالات شما اصلا ربطی به این پیج نداره
سوالات رو در جای مناسب بپرسید

روی فایل راست کلیک کن و گزینه open with رو بزن و برنامه ای که مییخوایی رو انتخاب کن
در ضمن اگر توی ایست نیست گزینه اخر رو انتخاب کن و توی پنجره باز شده برنامه مورد نظر رو پیدا کن
میتونی توی این پنجره اون تیک انتهای پنجره رو بزنی تا همیشه با این برنامه باز بشه
 

Alma

مدیر
پرسنل مدیریت
این ارور منظورش چیه در حالی که من فایل هدر رو اینکلود کرده بودم

مشاهده فایل‌پیوست 952

مشاهده فایل‌پیوست 953
خوب خطا که مشخصه و توضیح کامل داره
نوشته فایل فلان که شما توی پروژه اد کردی وجود نداره
این مشکل وقتی پیش میاد که شما پروشه لایبری کامپایلر رو درست انتخاب نکرده باشی
احتمالا میکرو AVR هست و باید این کارو دستی انجام بدید قبلا در پست های اموزش اضافه کردن کامپایلر AVR کاملا توضیح داده شده
 

mohammad_azizi

همکار
خوب خطا که مشخصه و توضیح کامل داره
نوشته فایل فلان که شما توی پروژه اد کردی وجود نداره
این مشکل وقتی پیش میاد که شما پروشه لایبری کامپایلر رو درست انتخاب نکرده باشی
احتمالا میکرو AVR هست و باید این کارو دستی انجام بدید قبلا در پست های اموزش اضافه کردن کامپایلر AVR کاملا توضیح داده شده

Capture_2019_02_11_19_43_59_22.jpg

بعد از این که مطلب رو نوشتم برنامه رو بستم دوباره باز کردم همه چی درست شد چرا نمی دونم
 
بالا پایین