NOTICE توجه: این یک موضوع قدیمی است که آخرین پست ارسالی آن مربوط به 2418 روز قبل است . لطفا فقط پاسخ ها ، سوالات و درخواست های 100 درصد مرتبط را به آن ارسال کنید و برای درخواست ها و سوالات جدید موضوع جدیدی را ایجاد کنید
نمایش نتایج: از 1 به 10 از 10

موضوع: پروژه ساده با برد STM32F7 Discovery و برد میکرو STM32F103

  1. #1
    کاربر علاقه مند
    تاریخ عضویت
    Mar 2014
    نوشته ها
    27
    تشکر
    0
    تشکر شده 17 بار در 8 پست

    Gadid پروژه ساده با برد STM32F7 Discovery و برد میکرو STM32F103

    سلام دوستان. در این قسمت براتون یک پروژه ساده با بردهای STM32F7 Discovery و برد میکرو STM32F103 قرار میدم.
    در این پروژه مقدار آنالوگ پتانسیومتر توسط برد Discovery خونده میشه. مقدار خونده شده توسط ویجکت PROGBAR بر روی LCD نمایش داده میشه و توسط پروتکل UART به برد میکرو STM32F103 ارسال میشه.
    برد STM32F103 مقدار دریافتی رو بررسی می کنه. اگر از 20 کمتر بود LED اول روشن و LED دوم خاموش میشه و اگر مقدار بیشتر از 50 بود LED اول خاموش و LED دوم روشن میشه.
    در این پروژه از STM32CubeMX و توابع API کتابخونه ای HAL استفاده شده.
    امیدوارم خوب باشه.

    فایل پروژه:
    Project

  2. کاربران : 2 تشکر کرده اند از شما mohsen.sharif برای ارسال این پست سودمند:


  3. # ADS
    Circuit advertisement
    تاریخ عضویت
    Always
    نوشته ها
    Many
     

  4. #2
    مدیر انجمن mzarkoob آواتار ها
    تاریخ عضویت
    Jun 2011
    نام
    مهدی زرکوب
    نوشته ها
    2,902
    تشکر
    1,202
    تشکر شده 2,317 بار در 1,273 پست

    پیش فرض

    سلام
    البته از نظر من پروژه ساده پروژه ای است که به ساده ترین صورت بدون اضافه کردن کتابخانه واسط با رجیستر ها کار کوچکی را انجام داده است.
    نقل قول نوشته اصلی توسط mohsen.sharif نمایش پست ها
    در این پروژه از stm32cubemx و توابع api کتابخونه ای hal استفاده شده.
    این می شود پروژه ای که به سادگی از توابع hal برای راه اندازی از واحدهای adc و gpio استفاده شده است و کاری انجام داده است.

  5. #3
    کاربر علاقه مند
    تاریخ عضویت
    Mar 2014
    نوشته ها
    27
    تشکر
    0
    تشکر شده 17 بار در 8 پست

    پیش فرض

    نقل قول نوشته اصلی توسط mzarkoob نمایش پست ها
    سلام
    البته از نظر من پروژه ساده پروژه ای است که به ساده ترین صورت بدون اضافه کردن کتابخانه واسط با رجیستر ها کار کوچکی را انجام داده است.
    این می شود پروژه ای که به سادگی از توابع hal برای راه اندازی از واحدهای adc و gpio استفاده شده است و کاری انجام داده است.
    سلام.
    البته پیاده سازی با HAL به همین راحتی و سادگی هم نیست. باید طرف آشنایی داشته باشه.
    فقط HAL در برنامه بکار نرفته که حتی بگیم ساده، emWIN هم بکار رفته.
    منظور از ساده بودن پروژه، پیچیده نبودن پروژه و کاربردی نبودن آن هست. فقط جهت آشنایی با emWIN، MX CUBE و ایجاد پروژه با برد دیسکاوری نوشته شده.
    مطمئن باشید کار با رجیسترها و درگیر کردن خود با آنها سخت تر از HAL هست. اگر همین پروژه رو می خواستید با رجیستر بنویسید چه حالی می شدید؟
    پس کار با رجیسترها ساده نیست و پیچیدگی رو بالاتر می بره. دلیل وجود HAL همینه که درگیر لایه های زیری نشیم و سطح بالاتر به برنامه نگاه کنیم.
    پس واژه پروژه ساده اشتباه نیست.

  6. #4
    مدیر انجمن mzarkoob آواتار ها
    تاریخ عضویت
    Jun 2011
    نام
    مهدی زرکوب
    نوشته ها
    2,902
    تشکر
    1,202
    تشکر شده 2,317 بار در 1,273 پست

    پیش فرض

    هر چند این موارد متناسب با عنوان تاپیک نیست ولی صرفا جهت اطلاع در استفاده از توابع آماده به موارد نیز زیر توجه داشته باشید تا با دید بهتری از آنها استفاده کنید:
    ---------------------------------------------------------------------
    استفاده از توابع آماده مسئله ای است که تمام افراد تازه وارد به حیطه برنامه نویسی میکروکنترلرهای ARM با آن مواجه و ممکن است استفاده از آن برایشان جذاب باشد. در صورتی که آشنایی با این مقوله ندارید :
    کتابخانه cmsis چیست؟ | آموزش میکروکنترلرهای ARM
    در میکروکنترلرهای STM32 نیز کتابخانه ها و توابع HAL بدین منظور استفاده می شود که با نرم افزار STM32CubeMX نیز قابل ایجاد است.
    و اما به نکاتی در این زمینه توجه داشته باشید:
    - این کتابخانه ها به نظر سهولت در تنظیمات رجیسترها برای کسانی که نمی خواهند یا نمی توانند تنظیمات را رجیستری انجام دهند، ایجاد شده است.
    - در صورتی که همیشه قصد دارید از توابع آماده برای کار استفاده کنید این موضوع را مد نظر داشته باشید که یک کاربر سطح پایین میکرو هستید. در صورتی که مشکلی در تنظیمات و ... پیش بیاید قادر به پیدا کردن ایراد نیستید. زیرا نمی دانید داخل این توابع چه کاری انجام شده و باید بشود و آیا درست انجام شده یا نه. توانایی رفع ایراد در صورت بروز مسئله مهمی است که نمی توان آن را نادیده گرفت. اینکه افرادی می گویند من تا الان استفاده کرده ام و دچارمشکل نشدم معیار نیست. اگر شما ایراد پیدا کردید و گیر کردید چه می کنید!؟ فیدبک هایی که از دیگران بوده مواردیکه با آن مواجه شده ایم نشان دهنده این است که ایرادتی وجود دارد.
    - در صورتی که پریفرالهایی با رجیستر قبلا پیکربندی اولیه شده است و با توابعی می توان با آن عملی را انجام داد چه ضرورتی دارد حتما از توابع آماده CMSIS و یا HAL برای پیکربندی استفاده شود!؟
    - اینکه نرم افزاری هست که خود ایجاد پروژه می کند جالب است ولی مگر چند بار برای یک میکرو نیاز به ایجاد پروژه است؟ (فقط یک بار) و مگر در انجام یک کار که چند ماه ممکن است طول بکشد چند بار می خواهید پریفرال ها را کانفیگ کنید و تغییر دهید؟ شاید یک بار بیشتر لازم نباشد بعد مهم اجرای الگوریم پیاده سازی کار است.
    - در جایی که سرعت اجرا مهم است، استفاده از تابع در تابع باعث کاهش سرعت می شود. بنابراین بایستی مستقیما از رجیسترها برای مقدار دهی و مقدار خواندن استفاده شود.
    - در صورتی که حجم فلش حافظه میکرویی محدود باشد (STM8) طبیعتا استفاده از کتابخانه های آماده ما را در حجم برنامه محدود می کند.
    - اگر مدل میکرویی لازم باشد استفاده کنید که توابع آماده ایی برای آن نباشد، در صورتی که صرفا یادگرفته باشید با توابع آماده کار کنید نمی توانید راه اندازی اولیه ای از پریفرالها و تغییر در آن داشته باشید.
    Telegram: Contact @armeducation
    ---------------------------------------------------------------------
    در کار با توابع آماده به این نکته توجه داشته باشید که باید بتوانید خودتان یک پروژه با این کتابخانه ها ایجاد کنید. این موضوع آنجا اهمیت پیدا می کند که پروژه هایی دارید که هر کدام کاری انجام می دهد ولی هر کدام را به هم اد می کنید با خطاهای متعدد یا عدم کارکرد مواجه می شوید. نه متوجه می شوید خطا چیست و نه راه حلی برای حل آن دارید. ساعت ها و شاید روزها زمان هم برای حل آن صرف می شود و در صورت حل نشدن، محصولی جز اعصاب خوردی تولید نکرده اید!
    به طور کلی بهتر است مسیر آموزش به درستی طی شود. وقت کافی برای یادگیری اختصاص دهید تا در میانه راه دچار مشکل نشوید و در صورت بروز مشکل راه حلی برای برون رفت داشته باشید.
    Telegram: Contact @armeducation
    ---------------------------------------------------------------------
    آیا کتابخانه های مورد استفاده اجازه را می دهد از چند پریفرال همزمان استفاده شود ؟ تا بحال با این مسئله مواجه شده اید؟
    به عنوان نمونه برای راه اندازی اولیه کاری با استفاده از توابع RL کیل، قسمت SD کارت و USB را راه اندازی کرده اید. حال می خواهید هر دو با هم کار کند. آیا چنین امکانی با استفاده از توابع RL کیل داده شده است!؟
    می خواهید USB و CAN همزمان در STM32 کار کند. آیا چنین امکانی در این میکرو داده شده است!؟
    Telegram: Contact @armeducation
    ---------------------------------------------------------------------

  7. کاربران : 2 تشکر کرده اند از شما mzarkoob برای ارسال این پست سودمند:


  8. #5
    کاربر علاقه مند
    تاریخ عضویت
    Mar 2014
    نوشته ها
    27
    تشکر
    0
    تشکر شده 17 بار در 8 پست

    پیش فرض

    نقل قول نوشته اصلی توسط mzarkoob نمایش پست ها
    هر چند این موارد متناسب با عنوان تاپیک نیست ولی صرفا جهت اطلاع در استفاده از توابع آماده به موارد نیز زیر توجه داشته باشید تا با دید بهتری از آنها استفاده کنید:
    ---------------------------------------------------------------------
    استفاده از توابع آماده مسئله ای است که تمام افراد تازه وارد به حیطه برنامه نویسی میکروکنترلرهای ARM با آن مواجه و ممکن است استفاده از آن برایشان جذاب باشد. در صورتی که آشنایی با این مقوله ندارید :
    کتابخانه cmsis چیست؟ | آموزش میکروکنترلرهای ARM
    در میکروکنترلرهای STM32 نیز کتابخانه ها و توابع HAL بدین منظور استفاده می شود که با نرم افزار STM32CubeMX نیز قابل ایجاد است.
    و اما به نکاتی در این زمینه توجه داشته باشید:
    - این کتابخانه ها به نظر سهولت در تنظیمات رجیسترها برای کسانی که نمی خواهند یا نمی توانند تنظیمات را رجیستری انجام دهند، ایجاد شده است.
    - در صورتی که همیشه قصد دارید از توابع آماده برای کار استفاده کنید این موضوع را مد نظر داشته باشید که یک کاربر سطح پایین میکرو هستید. در صورتی که مشکلی در تنظیمات و ... پیش بیاید قادر به پیدا کردن ایراد نیستید. زیرا نمی دانید داخل این توابع چه کاری انجام شده و باید بشود و آیا درست انجام شده یا نه. توانایی رفع ایراد در صورت بروز مسئله مهمی است که نمی توان آن را نادیده گرفت. اینکه افرادی می گویند من تا الان استفاده کرده ام و دچارمشکل نشدم معیار نیست. اگر شما ایراد پیدا کردید و گیر کردید چه می کنید!؟ فیدبک هایی که از دیگران بوده مواردیکه با آن مواجه شده ایم نشان دهنده این است که ایرادتی وجود دارد.
    - در صورتی که پریفرالهایی با رجیستر قبلا پیکربندی اولیه شده است و با توابعی می توان با آن عملی را انجام داد چه ضرورتی دارد حتما از توابع آماده CMSIS و یا HAL برای پیکربندی استفاده شود!؟
    - اینکه نرم افزاری هست که خود ایجاد پروژه می کند جالب است ولی مگر چند بار برای یک میکرو نیاز به ایجاد پروژه است؟ (فقط یک بار) و مگر در انجام یک کار که چند ماه ممکن است طول بکشد چند بار می خواهید پریفرال ها را کانفیگ کنید و تغییر دهید؟ شاید یک بار بیشتر لازم نباشد بعد مهم اجرای الگوریم پیاده سازی کار است.
    - در جایی که سرعت اجرا مهم است، استفاده از تابع در تابع باعث کاهش سرعت می شود. بنابراین بایستی مستقیما از رجیسترها برای مقدار دهی و مقدار خواندن استفاده شود.
    - در صورتی که حجم فلش حافظه میکرویی محدود باشد (STM8) طبیعتا استفاده از کتابخانه های آماده ما را در حجم برنامه محدود می کند.
    - اگر مدل میکرویی لازم باشد استفاده کنید که توابع آماده ایی برای آن نباشد، در صورتی که صرفا یادگرفته باشید با توابع آماده کار کنید نمی توانید راه اندازی اولیه ای از پریفرالها و تغییر در آن داشته باشید.
    Telegram: Contact @armeducation
    ---------------------------------------------------------------------
    در کار با توابع آماده به این نکته توجه داشته باشید که باید بتوانید خودتان یک پروژه با این کتابخانه ها ایجاد کنید. این موضوع آنجا اهمیت پیدا می کند که پروژه هایی دارید که هر کدام کاری انجام می دهد ولی هر کدام را به هم اد می کنید با خطاهای متعدد یا عدم کارکرد مواجه می شوید. نه متوجه می شوید خطا چیست و نه راه حلی برای حل آن دارید. ساعت ها و شاید روزها زمان هم برای حل آن صرف می شود و در صورت حل نشدن، محصولی جز اعصاب خوردی تولید نکرده اید!
    به طور کلی بهتر است مسیر آموزش به درستی طی شود. وقت کافی برای یادگیری اختصاص دهید تا در میانه راه دچار مشکل نشوید و در صورت بروز مشکل راه حلی برای برون رفت داشته باشید.
    Telegram: Contact @armeducation
    ---------------------------------------------------------------------
    آیا کتابخانه های مورد استفاده اجازه را می دهد از چند پریفرال همزمان استفاده شود ؟ تا بحال با این مسئله مواجه شده اید؟
    به عنوان نمونه برای راه اندازی اولیه کاری با استفاده از توابع RL کیل، قسمت SD کارت و USB را راه اندازی کرده اید. حال می خواهید هر دو با هم کار کند. آیا چنین امکانی با استفاده از توابع RL کیل داده شده است!؟
    می خواهید USB و CAN همزمان در STM32 کار کند. آیا چنین امکانی در این میکرو داده شده است!؟
    Telegram: Contact @armeducation
    ---------------------------------------------------------------------
    مواردی که ذکر کردید درست. خودم در میکرو بهش برخوردم و در کل آشنایی دارم. اشکال اصلی آن همپوشانی پیکربندی تنظیمات و قسمتی از کدها هستش.
    اما موضوعی که در مورد این تاپیک وجود داره مثال با عملکرد ساده ای هست که با استفاده از CUBE MX و توابع HAL نوشته شده. و اصلا در مورد اینکه استفاده از آن توابع معایبی در پی نداره، بحثی نشده.
    صرفا مثالی برای کار با Discovery و ... هستش.
    در ضمن کار با رجیسترها، اولین راه آموزش و فهم کارکرد هر میکرویی هستش. اگه کسی تازه کار باشه و اصلا نخواد حتی با رجیسترها آشنایی پیدا کنه، مطمئنا در پروژه ای به مشکل می خوره. اما دلیل نمیشه بیایم و کل پروژه رو با رجیستر برنامه نویسی کنیم. بله بعضی جاها لازمه با رجیستر، و بعضی جاها HAL کفایت می کنه. اینکه کلا HAL رو ببریم زیر سوال و بگیم این مشکلات رو داره، فکر کنم داریم عقاید خودمون رو میگیم.
    پس هر کدوم متناسب با کارکرد و محدودیت شون در جای خود بکار میرن، این جمله درست تری هستش.

  9. #6
    کاربر علاقه مند
    تاریخ عضویت
    Mar 2014
    نوشته ها
    27
    تشکر
    0
    تشکر شده 17 بار در 8 پست

    پیش فرض

    یک موضوع دیگری که وجود داره بابت استفاده دو واحد از پریفرال میکرو بطور همزمان، عدم تداخل پایه های تعریف شده در میکرو هستش که توسط رجیستر نویسی و عدم دقت احتمال همپوشانی دو تنظیمات وجود داره.
    حال بایت این موضوع رو در مورد سری میکرو بررسی کرد. ممکنه این مشکل در برخی سری ها نباشه.(مثلا STM32F7).
    در کل مشکل از Multi Function بودن پایه ها و قابلیت تنظیم توسط کاربر و عدم دقت کاربر به وجود میاد. مثلا در فلان سری میکرویی احتمال اینکه یک پایه در تنظیمات بین Can و USB مشترک باشه وجود داره. پس در این حالات رجیستر نویسی هم کمکی نمیکنه. ولی اگر در مواردی در بین کدها و برای استفاده از هر واحد همون قسمت کد تنظیمات رو به حالت Can یا USB ببریم. به همین دلیل وقتی یک واحدی رو در میکرو در برنامه CUBE MX فعال می کنیم و متناسب با سری میکرو، برخی واحد ها قرمز رنگ(عدم استفاده) می شوند. دلیل همپوشانی تنظیمات دو پایه برای دو واحد مجزاس. پس تنها راه اینه که از راه رجیستر و تغییرات لحظه ای اون تنظیمان مورد نظر رو در جای مناسب پیکربندی کنیم. پس این دلیل مشکل توابع HAL نیست، محدودیت پایه میکرو هستش(اینم یکی از دلیل های رایج این مشکل).

  10. #7
    مدیر انجمن mzarkoob آواتار ها
    تاریخ عضویت
    Jun 2011
    نام
    مهدی زرکوب
    نوشته ها
    2,902
    تشکر
    1,202
    تشکر شده 2,317 بار در 1,273 پست

    پیش فرض

    نقل قول نوشته اصلی توسط mohsen.sharif نمایش پست ها
    اگه کسی تازه کار باشه و اصلا نخواد حتی با رجیسترها آشنایی پیدا کنه، مطمئنا در پروژه ای به مشکل می خوره. اما دلیل نمیشه بیایم و کل پروژه رو با رجیستر برنامه نویسی کنیم.
    تجربه چندین ساله آموزش نشان داده که بیشتر کارآموزان به دلیل عدم آشنایی کافی با زبان برنامه نویسی سی، بایستی از ساده ترین ساختار بدون توابع و بدون نیاز به اد کردن کتابخانه اضافه، شروع کنند . زیرا تا به حال کتابخانه ای ایجاد نکرده اند و به پروژه اد نکرده اند و هدر آن را هم اینکلاد نکرده اند. شاید آماده استفاده کرده اند. ولی برای شروع با یک پروژه آماده که کلی کتابخانه اد شده مواجه می شوند با توابع تو در تو که ممکن است کمی سردر گم شوند. حتی با استراکچر آشنایی ندارند و وقتی بخواهند ورودی توابع را اعمال کنند سوال است چرا اینگونه باید ورودی بدهیم. یعنی ذهن به جای اعمال تنظیمات و استفاده در کار به سمت این است که چرا این گونه برنامه نوشتیم!؟ این دلیل عیب توابع Hal و ... نیست. ضعف برنامه نویسی است. به این دلیل تاکید می شود که پیش نیاز کار با میکروکنترلرهای ARM ، آشنایی با زبان C می باشد.
    نقل قول نوشته اصلی توسط mohsen.sharif نمایش پست ها
    اینکه کلا HAL رو ببریم زیر سوال و بگیم این مشکلات رو داره، فکر کنم داریم عقاید خودمون رو میگیم.
    چه کسی HAL را کلا برده زیر سوال!؟ به چه دلیلی!؟ امیدوارم صحبتی که شده این برداشت نشود که من کلا مخالفم و کلا استفاده از توابع بردم زیر سوال! بلکه مواردی که مطرح شده تجربیات خود و مشاهدات دیگران بوده برای افراد دیگر که به درستی از هر چیزی در جای خود استفاده کنند. که همان ابتدا هم ذکر شد :
    نقل قول نوشته اصلی توسط mzarkoob نمایش پست ها
    ولی صرفا جهت اطلاع در استفاده از توابع آماده به موارد نیز زیر توجه داشته باشید تا با دید بهتری از آنها استفاده کنید
    در مورد استفاده همزمان از چند پریفرال موضوع بیشتر مربوط به محدودیت های توابعی مثل RL کیل است:
    --------------------------------------------------------------------------------
    همان طور که ذکر شد از توابع RL کیل و همچنین توابع ChaN برای کار با SD کارت (همچنین USB Flash) می توان استفاده کرد.
    مواردی مانند SD – USB – Ethernet و .. مباحث پیشرفته ای هستند که اجرای عملی آن نیازمند دانش پایه از نحوه اجرای پروتکل های مربوطه می باشد. همچنین در یک میکروکنترلر رجیسترهای بسیار زیادی برای این پریفرال ها وجود دارد.
    در اینجا محاسن و معایب یک پروژه که از توابع RL کیل استفاده شده بر اساس تجربه ذکر می شود :
    - همینکه در مباحث پیشرفته که دارای پیچیدگی های زیادی است، توابعی باشد که بدون درگیر شدن با جزییات بتوان کار مورد نظر را انجام داد، بسیار خوب است. در صورتی که بخواهیم خودمان توابعی را بنویسیم که به عنوان نمونه به صورت فایلی کاری را در SD کارت انجام دهد و ... نیازمند صرف زمان زیادی خواهیم بود.
    - در صورتی که سرعت تبادل مهم باشد، ممکن است این توابع نتواند نیاز ما را تامین کند.
    - در صورتی که چندین کار لازم باشد انجام شود ممکن است نتوان در یک پروژه با هم آنها را فعال کرد. مثلا هم زمانی استفاده از USB و SD کارت، تبدیل شدن میکرو به رم ریدر برای SD کارت و هم زمان خواندن و نوشتن روی SD ،و ...
    Telegram: Contact @armeducation
    -------------------------------------------------------------------------

  11. #8
    کاربر علاقه مند
    تاریخ عضویت
    Mar 2014
    نوشته ها
    27
    تشکر
    0
    تشکر شده 17 بار در 8 پست

    پیش فرض

    نقل قول نوشته اصلی توسط mzarkoob نمایش پست ها
    تجربه چندین ساله آموزش نشان داده که بیشتر کارآموزان به دلیل عدم آشنایی کافی با زبان برنامه نویسی سی، بایستی از ساده ترین ساختار بدون توابع و بدون نیاز به اد کردن کتابخانه اضافه، شروع کنند . زیرا تا به حال کتابخانه ای ایجاد نکرده اند و به پروژه اد نکرده اند و هدر آن را هم اینکلاد نکرده اند. شاید آماده استفاده کرده اند. ولی برای شروع با یک پروژه آماده که کلی کتابخانه اد شده مواجه می شوند با توابع تو در تو که ممکن است کمی سردر گم شوند. حتی با استراکچر آشنایی ندارند و وقتی بخواهند ورودی توابع را اعمال کنند سوال است چرا اینگونه باید ورودی بدهیم. یعنی ذهن به جای اعمال تنظیمات و استفاده در کار به سمت این است که چرا این گونه برنامه نوشتیم!؟ این دلیل عیب توابع hal و ... نیست. ضعف برنامه نویسی است. به این دلیل تاکید می شود که پیش نیاز کار با میکروکنترلرهای arm ، آشنایی با زبان c می باشد.
    چه کسی hal را کلا برده زیر سوال!؟ به چه دلیلی!؟ امیدوارم صحبتی که شده این برداشت نشود که من کلا مخالفم و کلا استفاده از توابع بردم زیر سوال! بلکه مواردی که مطرح شده تجربیات خود و مشاهدات دیگران بوده برای افراد دیگر که به درستی از هر چیزی در جای خود استفاده کنند. که همان ابتدا هم ذکر شد :
    در مورد استفاده همزمان از چند پریفرال موضوع بیشتر مربوط به محدودیت های توابعی مثل rl کیل است:
    --------------------------------------------------------------------------------
    همان طور که ذکر شد از توابع rl کیل و همچنین توابع chan برای کار با sd کارت (همچنین usb flash) می توان استفاده کرد.
    مواردی مانند sd – usb – ethernet و .. مباحث پیشرفته ای هستند که اجرای عملی آن نیازمند دانش پایه از نحوه اجرای پروتکل های مربوطه می باشد. همچنین در یک میکروکنترلر رجیسترهای بسیار زیادی برای این پریفرال ها وجود دارد.
    در اینجا محاسن و معایب یک پروژه که از توابع rl کیل استفاده شده بر اساس تجربه ذکر می شود :
    - همینکه در مباحث پیشرفته که دارای پیچیدگی های زیادی است، توابعی باشد که بدون درگیر شدن با جزییات بتوان کار مورد نظر را انجام داد، بسیار خوب است. در صورتی که بخواهیم خودمان توابعی را بنویسیم که به عنوان نمونه به صورت فایلی کاری را در sd کارت انجام دهد و ... نیازمند صرف زمان زیادی خواهیم بود.
    - در صورتی که سرعت تبادل مهم باشد، ممکن است این توابع نتواند نیاز ما را تامین کند.
    - در صورتی که چندین کار لازم باشد انجام شود ممکن است نتوان در یک پروژه با هم آنها را فعال کرد. مثلا هم زمانی استفاده از usb و sd کارت، تبدیل شدن میکرو به رم ریدر برای sd کارت و هم زمان خواندن و نوشتن روی sd ،و ...
    telegram: Contact @armeducation
    -------------------------------------------------------------------------
    در مورد گفته اولتون، واقعا اگه کسی زبان c بلد نیست که نباید اول arm شروع کنه. و این حرف که نیازی به اثبات نداره. و حتی این رو گفتید که کسایی که می خوان تازه شروع کنن میرن سمت hal چون آسون تره ولی الان حرفتون رو عوض کردید و میگید که برای تازه کارا کار با توابع کمی پیچیده هست.
    در مورد گفته دومتون، دقیقا hal رو زیر سوال بردید.
    در مورد گفته سوم تون هم توضیح دادم مشکل از توایع نیست، محدودیت خود یک سری از میکروها هست. برخی گفته های شما در مورد برخی سری ها صدق نمی کنه. پس مشکل از توابع نیست، محدودیت میکرو هستش.

  12. #9

  13. #10
    کاربر علاقه مند
    تاریخ عضویت
    Mar 2014
    نوشته ها
    27
    تشکر
    0
    تشکر شده 17 بار در 8 پست

    پیش فرض

    نقل قول نوشته اصلی توسط mzarkoob نمایش پست ها
    گفته می شود ​کهپیش نیاز کار با میکروکنترلرهای arm ، آشنایی با زبان c می باشد. ولی باور نمی کنند! در مراحل آموزش که کم کم پیش میروند این موضوع را به عینه میبیند ....
    دقیقا گفته تان صحیح است و حقیقت اش زجر آور.
    خودم بارها به برخی دوستانم گفتم و دوستانم لبخند ملیحی زدند(انگار بیل گیتس هستند).
    حداقل می خواید از avr بپرید arm، با avr به زبان c کار کنید(نه با بیسیک) تا قبلش یه حداقل پیش نیازهایی رو داشته باشید.
    طرف با زبان بیسیک می خواد بیاد arm کار کنه.

موضوعات مشابه

  1. پاسخ: 0
    آخرين نوشته: 16-05-2016, 03:14
  2. راه اندازی LCD 4.3 با Discovery stm32f407vgt6
    توسط wantedboy در انجمن stm32
    پاسخ: 2
    آخرين نوشته: 16-07-2015, 13:20
  3. stm32f429-discovery
    توسط aliakba در انجمن stm32
    پاسخ: 2
    آخرين نوشته: 02-05-2015, 20:09
  4. برد discovery
    توسط abolfazlk873 در انجمن stm32
    پاسخ: 3
    آخرين نوشته: 01-01-2014, 00:29
  5. discovery and tft lcd
    توسط hunybal در انجمن stm32
    پاسخ: 7
    آخرين نوشته: 24-12-2013, 23:30

مجوز های ارسال و ویرایش

  • شما نمیتوانید موضوع جدیدی ارسال کنید
  • شما امکان ارسال پاسخ را ندارید
  • شما نمیتوانید فایل پیوست کنید.
  • شما نمیتوانید پست های خود را ویرایش کنید
  •