اطلاعیه

Collapse
No announcement yet.

Interface بین ARM و کامپیوتر

Collapse
X
 
  • فیلتر
  • زمان
  • Show
Clear All
new posts

    Interface بین ARM و کامپیوتر

    سلام
    من تخصص آنچنانی در حوزه الکترونیک ندارم، اما برنامه نویسی C و Cpp رو در محیط لینوکس و ویندوز به طور کامل تسلط دارم و حدودا 15-16 سال در این حوزه کار کرده ام.

    اخیرا علاقه پیدا کردم که روی میکروکنترلرهای ARM هم کار کنم، اما اصلا تجربه ای در این خصوص ندارم. عمده مشکلات من هم در خصوص مسائل سخت افزاری هست تا نرم افزاری. یک مدت راجع به معماری پردازنده ها و مباحث پایه در مدارهای منطقی و این قبیل مسائل مطالعه کردم و مشکل خاصی نبود. الان می خوام به طور عملی کار رو شروع کنم، و مثلا با Hello World دنیای الکترونیک، که روشن خاموش کردن یک LED هست کار رو شروع کنم.

    لطفا در این خصوص دوستان راهنمایی بفرمایند که چه اقلامی سخت افزاری نیاز هست؟

    من یه پروگرامر JLink v9 و یک سری برد بورد و سیم برد بورد و LED و اینجور چیزها سفارش دادم از فروشگاه. حالا می خوام بدونم چیز دیگه ای نیاز هست یا خیر؟ یه مقدار که در خصوص مسائل سخت افزاری مطالعه کردم ظاهرا به هدربورد و بورد آموزشی و اینجور چیزها نیاز هست. آیا واقعا نیاز هست؟ اگر جواب سوال مثبت هست، راجع به این لینک چند تا سوال دارم:

    1. فرق هدربورد با بورد کاتالیست که توی فروشگاه هست چیه؟
    2. یکی از اجناس فروشگاه اسمش هدربورد STM32F103C8T6 Cortex M3 هست. خریدن این هدر بورد به این معنی هست که دیگه نیاز به میکروکنترلر نداریم؟ یعنی اگر من بخوام یه میکروکنترلر بزرگ تر و قوی تر رو روش برنامه بنویسم و امتحان کنم، این هدربورد چه نقشی داره این وسط؟
    3. فرض کنید هدربورد بالا خریداری شد، میشه باهاش میکروکنترلر NXP رو مثلا برنامه ریزی کرد؟

    چون اینطور که من متوجه شدم هدربورد فقط یک امکان اولیه برای برنامه نویسی هست، و نمیشه از فروشگاه میکروکنترلرهای مختلف رو خرید و برنامه روشون نوشت با استفاده از هدر بورد؟ حالا اگه بخوام میکروکنترلرهای ARM رو از فروشگاه بخرم و روشون برنامه بنویسم باید دقیقا چه روالی طی بشه؟

    #2
    پاسخ : Interface بین ARM و کامپیوتر

    نوشته اصلی توسط expl نمایش پست ها
    سلام
    من تخصص آنچنانی در حوزه الکترونیک ندارم، اما برنامه نویسی C و Cpp رو در محیط لینوکس و ویندوز به طور کامل تسلط دارم و حدودا 15-16 سال در این حوزه کار کرده ام.

    اخیرا علاقه پیدا کردم که روی میکروکنترلرهای ARM هم کار کنم، اما اصلا تجربه ای در این خصوص ندارم. عمده مشکلات من هم در خصوص مسائل سخت افزاری هست تا نرم افزاری. یک مدت راجع به معماری پردازنده ها و مباحث پایه در مدارهای منطقی و این قبیل مسائل مطالعه کردم و مشکل خاصی نبود. الان می خوام به طور عملی کار رو شروع کنم، و مثلا با Hello World دنیای الکترونیک، که روشن خاموش کردن یک LED هست کار رو شروع کنم.

    لطفا در این خصوص دوستان راهنمایی بفرمایند که چه اقلامی سخت افزاری نیاز هست؟

    من یه پروگرامر JLink v9 و یک سری برد بورد و سیم برد بورد و LED و اینجور چیزها سفارش دادم از فروشگاه. حالا می خوام بدونم چیز دیگه ای نیاز هست یا خیر؟ یه مقدار که در خصوص مسائل سخت افزاری مطالعه کردم ظاهرا به هدربورد و بورد آموزشی و اینجور چیزها نیاز هست. آیا واقعا نیاز هست؟ اگر جواب سوال مثبت هست، راجع به این لینک چند تا سوال دارم:

    1. فرق هدربورد با بورد کاتالیست که توی فروشگاه هست چیه؟
    2. یکی از اجناس فروشگاه اسمش هدربورد STM32F103C8T6 Cortex M3 هست. خریدن این هدر بورد به این معنی هست که دیگه نیاز به میکروکنترلر نداریم؟ یعنی اگر من بخوام یه میکروکنترلر بزرگ تر و قوی تر رو روش برنامه بنویسم و امتحان کنم، این هدربورد چه نقشی داره این وسط؟
    3. فرض کنید هدربورد بالا خریداری شد، میشه باهاش میکروکنترلر NXP رو مثلا برنامه ریزی کرد؟

    چون اینطور که من متوجه شدم هدربورد فقط یک امکان اولیه برای برنامه نویسی هست، و نمیشه از فروشگاه میکروکنترلرهای مختلف رو خرید و برنامه روشون نوشت با استفاده از هدر بورد؟ حالا اگه بخوام میکروکنترلرهای ARM رو از فروشگاه بخرم و روشون برنامه بنویسم باید دقیقا چه روالی طی بشه؟
    سلام
    اگر پکیج میکروکنترلر DIP بود و میشد روی برد بورد قرارش داد، نیازی هدر بورد و این مسائل نبود. ولی حالا از اونجایی که معمولا میکروکنترلرهای ARM پکیج SMD دارن نمیشه روی برد بورد گذاشتشون. برای آموزش این میکروکنترلرها و استفاده از اونها توی بعضی پروژه ها اون ها رو روی بوردهایی مونتاژ میکنن که قابلیت اتصال سیم و یکسری امکانات دیگه در اختیار کاربر قرار میده که بهش میگن هدر بورد. در واقع بورد کاتالیست هم نوعی هدر بورد هستش.
    برای پروگرام کردن هم بعضی هدر بوردها مثل هدر بوردهایی که خود شرکت ST برای میکروکنترلرهاش ساخته (سری Nucleo و Discovery)، روشون پروگرامر ST-LINK قرار گرفته و نیازی به خرید پروگرامر نیست. اما برای باقی هدر بوردها مثل کاتالیست باید پروگرامر مناسب تهیه کنید.
    مورد بعدی اینه که وقتی بوردی برای تراشه خاصی ساخته میشه، معمولا نمیشه برای تراشه دیگه استفاده کرد. شاید بعضی تراشه های خاص از یک خانواده بتونن جایگزین هم بشن اما خوب شما روش حساب باز نکنید.

    دیدگاه


      #3
      پاسخ : Interface بین ARM و کامپیوتر

      پس با این اوصاف ARM ها رو معمولا باید بهمراه هدربوردها توی پروژه ها استفاده کرد و لحیم کردنشون به تنهایی به بورد مثل AVR و اینها شدنی نیست درسته؟ در نتیجه توی ابزارها و لوازم های کوچک که وجود ابعاد هدربورد منطقی نیست، استفاده از ARM هم منطقی و شدنی نیست. درسته؟

      حالا اگه جواب سوال بالا مثبت باشه، یه سوال فلسفی پیش میاد، اونهم اینه که اگه نمیشه میکروهای ARM رو بدون هدربورد استفاده کرد، اساسا پس چرا به صورت مستقل فروش میرن؟ اگر درست فهمیده باشم، ARM رو روی بردبورد نمیشه استفاده کرد، اما روی بوردهای معمولی میشه لحیم کرد و مشکل خاصی از اون لحاظ نیست و مشکل اصلی فقط استفاده از اونها در قالب بردبورد که مشکل پیش میاد، برای همین سراغ هدربوردها باید رفت، درسته؟
      جدیدترین ویرایش توسط expl; ۱۵:۲۴ ۱۳۹۹/۰۱/۰۴.

      دیدگاه


        #4
        پاسخ : Interface بین ARM و کامپیوتر

        نوشته اصلی توسط expl نمایش پست ها
        پس با این اوصاف ARM ها رو معمولا باید بهمراه هدربوردها توی پروژه ها استفاده کرد و لحیم کردنشون به تنهایی به بورد مثل AVR و اینها شدنی نیست درسته؟ در نتیجه توی ابزارها و لوازم های کوچک که وجود ابعاد هدربورد منطقی نیست، استفاده از ARM هم منطقی و شدنی نیست. درسته؟

        حالا اگه جواب سوال بالا مثبت باشه، یه سوال فلسفی پیش میاد، اونهم اینه که اگه نمیشه میکروهای ARM رو بدون هدربورد استفاده کرد، اساسا پس چرا به صورت مستقل فروش میرن؟ اگر درست فهمیده باشم، ARM رو روی بردبورد نمیشه استفاده کرد، اما روی بوردهای معمولی میشه لحیم کرد و مشکل خاصی از اون لحاظ نیست و مشکل اصلی فقط استفاده از اونها در قالب بردبورد که مشکل پیش میاد، برای همین سراغ هدربوردها باید رفت، درسته؟
        من نگفتم نمیشه مستقلا جایی استفادشون کرد! گفتم برای آموزش و کارای دم دستی از هدر استفاده میکنن که کار راحت تر بشه. وگرنه شما بردی برای خودتون بزنید و میکروکنترلر رو مستقیم روی بورد قرار بدید.

        دیدگاه


          #5
          پاسخ : Interface بین ARM و کامپیوتر

          نوشته اصلی توسط hossein.m98 نمایش پست ها
          من نگفتم نمیشه مستقلا جایی استفادشون کرد! گفتم برای آموزش و کارای دم دستی از هدر استفاده میکنن که کار راحت تر بشه. وگرنه شما بردی برای خودتون بزنید و میکروکنترلر رو مستقیم روی بورد قرار بدید.
          با عرض معذرت از این سوالات ابتدایی، در حوزه سخت افزاری اصلا اطلاعاتی ندارم و تمام اطلاعاتی هم که دارم حدود به چند روز جستجو در وبسایت های مختلف هست.

          شما فرمودید از SMD ها برای کار آموزشی روی بردبورد نمیشه استفاده کرد، و حتما باید هدربورد استفاده بشه. حالا سوال من اینه که برای آموزش و کارای دم دستی میشه به جای استفاده از هدربورد، از تبدیل SMD به DIP استفاده کرد؟ اگر پاسخ مثبت هست چطور میشه فهمید برای هر میکروکنترلر باید چه برد تبدیلی تهیه کرد؟ توی فروشگاه بوردهایی به همین اسم وجود دارن.

          سوال بعدی هم اینکه فرمودید بوردی برای خودمون بزنیم، منظورتون از بورد،
          پیاده سازی مدار روی فیبر و فیبرهای سوراخ دار و اینهاست دیگه درسته؟

          پیشاپیش پوزش بابت سوالات ابتدایی. من از این مشکلات سخت افزاری رد بشم و سر در بیارم، دیگه بقیه اش مشکل خاصی نخواهد بود.
          جدیدترین ویرایش توسط expl; ۱۵:۵۱ ۱۳۹۹/۰۱/۰۴.

          دیدگاه


            #6
            پاسخ : Interface بین ARM و کامپیوتر

            نوشته اصلی توسط expl نمایش پست ها
            با عرض معذرت از این سوالات ابتدایی، در حوزه سخت افزاری اصلا اطلاعاتی ندارم و تمام اطلاعاتی هم که دارم حدود به چند روز جستجو در وبسایت های مختلف هست.

            شما فرمودید از SMD ها برای کار آموزشی روی بردبورد نمیشه استفاده کرد، و حتما باید هدربورد استفاده بشه. حالا سوال من اینه که برای آموزش و کارای دم دستی میشه به جای استفاده از هدربورد، از تبدیل SMD به DIP استفاده کرد؟ اگر پاسخ مثبت هست چطور میشه فهمید برای هر میکروکنترلر باید چه برد تبدیلی تهیه کرد؟ توی فروشگاه بوردهایی به همین اسم وجود دارن.


            سوال بعدی هم اینکه فرمودید بوردی برای خودمون بزنیم، منظورتون از بورد، پیاده سازی مدار روی فیبر و فیبرهای سوراخ دار و اینهاست دیگه درسته؟


            پیشاپیش پوزش بابت سوالات ابتدایی. من از این مشکلات سخت افزاری رد بشم و سر در بیارم، دیگه بقیه اش مشکل خاصی نخواهد بود.
            معذرت لازم نیست بالاخره هر کسی یه روزی مبتدی بوده!
            بله همونطور که گفتید میتونید از همین بوردهای ساده مبدل SMD به DIP هم استفاده کنید. ولی از اونجایی که تازه کار هستید، ترجیح من به استفاده از هدر بورد هستش چون مشکل تامین تغذیه و حفاظت و این طور مسائل کمتره. البته بستگی به هدری که استفاده میکنید داره این ها هم.
            اگر قرار بود با AVR کار کنید، میگفتم حتما از مدل ATmega8 DIP روی برد بورد استفاده کنید که ارزونه تا دستتون راه بیوفته ولی از اونجایی که ARM ها هم مونتاژشون سخت تره و غالبا مدل هایی که استفاده میشن گرون تر هستن، چنین پیشنهادی نمیکنم. در کل باز به سلیقه خودتون بر میگرده که با چی راحت تر هستید.

            در مورد سوال دوم هم بله منظورم مثلا بوردیه که برای یک محصول طراحی و ساخته میشه.
            جدیدترین ویرایش توسط hossein.m98; ۱۶:۰۶ ۱۳۹۹/۰۱/۰۴. دلیل: تکمیل

            دیدگاه


              #7
              پاسخ : Interface بین ARM و کامپیوتر

              نوشته اصلی توسط hossein.m98 نمایش پست ها
              معذرت لازم نیست بالاخره هر کسی یه روزی مبتدی بوده!
              بله همونطور که گفتید میتونید از همین بوردهای ساده مبدل SMD به DIP هم استفاده کنید. ولی از اونجایی که تازه کار هستید، ترجیح من به استفاده از هدر بورد هستش چون مشکل تامین تغذیه و حفاظت و این طور مسائل کمتره. البته بستگی به هدری که استفاده میکنید داره این ها هم.
              اگر قرار بود با AVR کار کنید، میگفتم حتما از مدل ATmega8 DIP روی برد بورد استفاده کنید که ارزونه تا دستتون راه بیوفته ولی از اونجایی که ARM ها هم مونتاژشون سخت تره و غالبا مدل هایی که استفاده میشن گرون تر هستن، چنین پیشنهادی نمیکنم. در کل باز به سلیقه خودتون بر میگرده که با چی راحت تر هستید.
              ممنونم از پاسخ گویی شما. پس من به یک جمع بندی رسیدم که خدمت شما عرض می کنم، درست یا غلط بودنش رو تذکر بدید لطفا:

              برای پیاده سازی یک بورد و مطمئن شدن از کارکردنش، صرف نظر از بحث های شبیه سازی مدار و اینها، بهتر است با استفاده از هدربورد و روی بردبورد پیاده سازی و تست انجام شود. بعد از اینکه مطمئن شدیم می توانیم مستقیما روی بوردهای سوراخ دار و امثالهم همان مدار رو لحیم کنیم (منهای بحث منبع تغذیه و اینها)، درسته؟

              دیدگاه


                #8
                پاسخ : Interface بین ARM و کامپیوتر

                نوشته اصلی توسط expl نمایش پست ها
                ممنونم از پاسخ گویی شما. پس من به یک جمع بندی رسیدم که خدمت شما عرض می کنم، درست یا غلط بودنش رو تذکر بدید لطفا:

                برای پیاده سازی یک بورد و مطمئن شدن از کارکردنش، صرف نظر از بحث های شبیه سازی مدار و اینها، بهتر است با استفاده از هدربورد و روی بردبورد پیاده سازی و تست انجام شود. بعد از اینکه مطمئن شدیم می توانیم مستقیما روی بوردهای سوراخ دار و امثالهم همان مدار رو لحیم کنیم (منهای بحث منبع تغذیه و اینها)، درسته؟
                بله معمولا بیشتر موارد این کاریه که انجام میشه. اما خوب همیشه استثناهایی هم هست که بگذریم کاریش نداریم فعلا
                ضمنا معمولا از بوردهای سوراخ دار آماده برای قطعات SMD استفاده نمیکنن.

                دیدگاه


                  #9
                  پاسخ : Interface بین ARM و کامپیوتر

                  نوشته اصلی توسط hossein.m98 نمایش پست ها
                  بله معمولا بیشتر موارد این کاریه که انجام میشه. اما خوب همیشه استثناهایی هم هست که بگذریم کاریش نداریم فعلا
                  ضمنا معمولا از بوردهای سوراخ دار آماده برای قطعات SMD استفاده نمیکنن.
                  چرا از بوردهای سوراخ دار برای SMD استفاده نمی کنند؟ و اگر استفاده کنند مشکل خاصی پیش میاد؟

                  دیدگاه


                    #10
                    پاسخ : Interface بین ARM و کامپیوتر

                    نوشته اصلی توسط expl نمایش پست ها
                    چرا از بوردهای سوراخ دار برای SMD استفاده نمی کنند؟ و اگر استفاده کنند مشکل خاصی پیش میاد؟
                    اولا این که بوردهای سوراخ دار بیشتر برای ساخت کاردستی و تست بعضی مدارات ساخته میشن، ثانیا ساخته شدن برای قطعاتی که ساختار DIP دارن! SMD شاید اصلا نشه روشون قرار داد

                    دیدگاه


                      #11
                      پاسخ : Interface بین ARM و کامپیوتر

                      نوشته اصلی توسط hossein.m98 نمایش پست ها
                      اولا این که بوردهای سوراخ دار بیشتر برای ساخت کاردستی و تست بعضی مدارات ساخته میشن، ثانیا ساخته شدن برای قطعاتی که ساختار DIP دارن! SMD شاید اصلا نشه روشون قرار داد
                      خوب پس راه حل چیه؟ یعنی باید فیبر خام گرفت و دستی سوراخ کاری انجام داد؟

                      من فکر می کردم با همون تبدیل SMD به DIP مشکل حل میشه.

                      دیدگاه


                        #12
                        پاسخ : Interface بین ARM و کامپیوتر

                        نوشته اصلی توسط expl نمایش پست ها
                        خوب پس راه حل چیه؟ یعنی باید فیبر خام گرفت و دستی سوراخ کاری انجام داد؟

                        من فکر می کردم با همون تبدیل SMD به DIP مشکل حل میشه.
                        نه عزیز من چیکار به تبدیل دارم! میگم مستقیم قطعات SMD رو روی بورد های مثل این مونتاژ نمیکنن.

                        دیدگاه

                        لطفا صبر کنید...
                        X