اطلاعیه

Collapse
No announcement yet.

کدام روش بهتر است ؟ دستورات خود میکرو یا CMSIS

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

    کدام روش بهتر است ؟ دستورات خود میکرو یا CMSIS

    دوستان عزیز حرفه ای ، میشه منو راهنمایی کنین ؟ من گیج شدم . که از کدوم روش استفاده کنم ؟ با استفاده از توابع CMSIS ? یا خود دستورات و نوشتن توابع خودم ؟ بعضی حاها با CMSIS تدریس میکنن .

    #2
    پاسخ : کدام روش بهتر است ؟ دستورات خود میکرو یا CMSIS

    نوشته اصلی توسط Mehdi.mhmvd نمایش پست ها
    دوستان عزیز حرفه ای ، میشه منو راهنمایی کنین ؟ من گیج شدم . که از کدوم روش استفاده کنم ؟ با استفاده از توابع CMSIS ? یا خود دستورات و نوشتن توابع خودم ؟ بعضی حاها با CMSIS تدریس میکنن .
    سلام،
    1- اون "حرفه ای" که شما نوشتی، دیگه کسی رغبت نمیکنه کامنت بذاره!!!
    2- دستورات خود میکرو (ARM)، اسمبلی هستند و هیچ دلاور را یارای پیکار با آنان نباشد! احتمالا منظورتون کارکردن با رجیسترها بوده!
    ...
    این موضوع خیلی بحث گسترده ای هست! و به خیلی چیزها مرتبط میشه!
    از جمله هدف شما از به کارگیری میکرو!
    حجم کارتون با میکرو و تنوع پروژه هاتون!
    برای ورود به این حوزه چقدر زمان میتونید بذارید!
    البته به تاریج جغرافیا هم ربط داره!!!
    ...
    ...
    تغییرات توی هر کدوم از این بخشها، واقعا میتونه یه گزینه رو به دیگری ارجحیت بده!!
    ...
    فقط من چند تا موضوع رو به طور قاطع عرض میکنم:
    1- کسی که نتونه ARM رو با رجیسترهاش برنامه نویسی کنه، نمیتونه ادعا کنه، که در این زمینه حرفه ایه!
    2- کسی که با رجیسترها کد مینویسه قطعا دستش برای استفاده حداکثری از سخت افزار بازتره!
    3- کسی که با CMSIS کد مینویسه علاوه بر همه وابستگی ها، به موضوع گسترده کتابخانه ها هم، وابسته است!
    ...
    البته باید عرض کنم که کسی هم نمیتونه فکر کنه که یک ماهه و دو ماهه، میتونه به کمک رجیسترها برای میکروهای مختلف کد موثر بزنه!
    باید با رجیسترها زندگی کرده باشی!!
    ◙◙◙◙◙ میخوام به دوستان یه کتاب معرفی کنم! وقت کردید، بخونید - اسمش هست قرآن، سال نشر 10، نویسنده: خدا . ◙◙◙◙◙

    دیدگاه


      #3
      پاسخ : کدام روش بهتر است ؟ دستورات خود میکرو یا CMSIS

      نوشته اصلی توسط Mehdi.mhmvd نمایش پست ها
      دوستان عزیز حرفه ای ، میشه منو راهنمایی کنین ؟ من گیج شدم . که از کدوم روش استفاده کنم ؟ با استفاده از توابع CMSIS ? یا خود دستورات و نوشتن توابع خودم ؟ بعضی حاها با CMSIS تدریس میکنن .
      این نظر من هست شاید مخالف داشته باشه!
      اول سعی کنید با کدهای استاندارد مثلا CMSIS پردازنده را یاد بگیرید. این کار کمک می کند در روز اول تمام نکات میکرو را نیاز نباشد بدانید.
      CMSIS یک ویژگی خوبی که دارد، استاندارد MISRA را پاس میکند. خیلی از کدهایی که نوشته می شوند هیچ استانداردی را پاس نمی کنند!
      CMSIS یک بخش برای پردازش داره که تحت عنوان CMSIS DSP هست به خصوص رو STMF4 ,و STMF7 کار میکنید فرق سرعت را متوجه می شوید.
      CMSIS را برنامه نویس حرفه ای نوشته است و این کمک می کند به ساختار کدنویسی استاندارد تسلط پیدا کنید.
      CMSIS جابه جایی کد را برای چند پلتفورم اسان می کند
      در پردازنده ها ساختارهایی ایجاد میشوند که مدیریت آن با اسمبلی یا کد دستی واقعا سخت هست مانند cache که در میکرو های جدید قرار داده می شود و کدهای استاندارد در راه اندازی و استفاده از این بخش ها بسیار کمک می کنند
      هر چند برای برنامه نویس حرفه ای نیاز هست که تسلط به رجیستر و اجرای کد اسمبلی بر روی C را بداند.
      در کل هر وقت خواستید کسی را تست کنید یکی از برنامه های پردازش را بگویید پیدا کند و به سرعتی معادل CMSIS DSP برسد آن موقع طرف یک فرد حرفه ای می باشد، هر چند رقابت با چنین کدهایی کار هر کسی نیست

      دیدگاه


        #4
        پاسخ : کدام روش بهتر است ؟ دستورات خود میکرو یا CMSIS

        مهندس سلام،
        مطالبتون راجع به CMSIS درسته و دقیقه!
        من هم استفاده کردم!
        آما آما ...
        نوشته اصلی توسط Faateh نمایش پست ها
        ... در کل هر وقت خواستید کسی را تست کنید یکی از برنامه های پردازش را بگویید پیدا کند و به سرعتی معادل CMSIS DSP برسد آن موقع طرف یک فرد حرفه ای می باشد، هر چند رقابت با چنین کدهایی کار هر کسی نیست
        این قسمتش ربطی نداره!!!
        درسته که مبحث DSP یه حوزه کاملا گسترده است و توی همه بخشها میتونه کاربرد داشته باشه، ولی در واقع مجموعه ای از روشهای استاندارد شده ای است، برای حل مسائل مربوط به سیگنالها که سعی کرده جامع هم باشه!!
        ...
        مثلا شخصی رو فرض کنید که بدون استفاده از پلتفرم خاصی، و فقط با مقدار دهی رجیسترها، یه اینورتر سه فاز حرفه ای رو، از صفر تا صد (نرم افزار و سخت افزار) میسازه و عملیاتی میکنه! و ممکنه یه خط هم از DSP و FFT و DFT و فیلترهای دیجیتال ندونه!!
        و از طرفی کسی هم که با توابع آماده CMSIS داره DSP کار میکنه نمیشه گفت که حتما DSP بلده، و مفاهیم این حوزه رو درک میکنه!
        یعنی اینکه، نه کسی که DSP بلد نیست لزوما غیر حرفه ایه، و نه کسی که با توابع آماده CMSIS داره DSP کار میکنه، لزوماً DSP کاره!!
        ...
        و البته راجع به نوع کدنویسی هم، چیپهای که به طور خاص با مقاصد DSP طراحی میشن و سخت افزارهای خاص این گونه کاربردها رو دارند، عموما موقع استفاده، نه با توابع سطح بالا و نه با C، بلکه به زبون اسمبلیشون کدنویسی میشن تا حداکثر کارایی رو داشته باشند!
        ◙◙◙◙◙ میخوام به دوستان یه کتاب معرفی کنم! وقت کردید، بخونید - اسمش هست قرآن، سال نشر 10، نویسنده: خدا . ◙◙◙◙◙

        دیدگاه


          #5
          پاسخ : کدام روش بهتر است ؟ دستورات خود میکرو یا CMSIS

          نوشته اصلی توسط ubub نمایش پست ها
          مهندس سلام،
          مطالبتون راجع به CMSIS درسته و دقیقه!
          من هم استفاده کردم!
          آما آما ...

          این قسمتش ربطی نداره!!!
          درسته که مبحث DSP یه حوزه کاملا گسترده است و توی همه بخشها میتونه کاربرد داشته باشه، ولی در واقع مجموعه ای از روشهای استاندارد شده ای است، برای حل مسائل مربوط به سیگنالها که سعی کرده جامع هم باشه!!
          ...
          مثلا شخصی رو فرض کنید که بدون استفاده از پلتفرم خاصی، و فقط با مقدار دهی رجیسترها، یه اینورتر سه فاز حرفه ای رو، از صفر تا صد (نرم افزار و سخت افزار) میسازه و عملیاتی میکنه! و ممکنه یه خط هم از DSP و FFT و DFT و فیلترهای دیجیتال ندونه!!
          و از طرفی کسی هم که با توابع آماده CMSIS داره DSP کار میکنه نمیشه گفت که حتما DSP بلده، و مفاهیم این حوزه رو درک میکنه!
          یعنی اینکه، نه کسی که DSP بلد نیست لزوما غیر حرفه ایه، و نه کسی که با توابع آماده CMSIS داره DSP کار میکنه، لزوماً DSP کاره!!
          ...
          و البته راجع به نوع کدنویسی هم، چیپهای که به طور خاص با مقاصد DSP طراحی میشن و سخت افزارهای خاص این گونه کاربردها رو دارند، عموما موقع استفاده، نه با توابع سطح بالا و نه با C، بلکه به زبون اسمبلیشون کدنویسی میشن تا حداکثر کارایی رو داشته باشند!
          منظور من از DSP دانستن پردازش نیست،
          آنچه در پردازش مهم می شود دانستن نکاتی هست که کمک میکند نا سرعت اجرای الگوریتم بالا رود و کاملا به برنامه نویس ربط دارد. پردازنده CORTEX M4 M7 قابلیت DSP دارند ( برخی از ویژگی ها در سخت افزار قرار داده شده) حالا به عنوان برنامه نویس به شما گفته میشود هزار عدد را با هم جمع کن و درمتغیر x بریزید. هزار روش برای انجام این کار وجود دارد، برای مثال می شود این کد را به صورت پایپلاین نوشت (که این کار و اجرای موازی بخشی از کدها کار هر کسی نیست و نوشتن با اسمبلی و رجیستر آسان نیست) . و نیاز دارد شما به تمام قابلیت ها مسلط باشید.
          برای کد زنی به هیچ عنوان دانستن الگوریتم لازم نیست، شما در بخش میکرو کنترلر فقط پیاده کننده هستید، یک الگوریتم یا روشی که پیاده شده است را حال برروی میکرو پیاده می کنید، اما معمولا بخش سخت و زمانبر کار واحد پردازش می شود. اینکه با یک سرعت پردازش به بیشترین بهره وری برسید این مهم است.

          به نظر من DSP در ایران تبدیل به یک بحث پیچیده شده، در حالی که روش سرعت دهی به الگوریتم در میکرو ساده ای مثل cortex m4 به وجود آمده، چون هر کاری که میخواهد انجام شود در نهایت نیاز است تا یک مینیمم الگوریتم درآن اجراشود.

          دیدگاه


            #6
            پاسخ : کدام روش بهتر است ؟ دستورات خود میکرو یا CMSIS

            نوشته اصلی توسط ubub نمایش پست ها
            باید با رجیسترها زندگی کرده باشی!!
            سلام خوشحال شدم پیامتون را دیدم
            میشه لیست تمام رجیستر های میکرو lpc1768 را قرار بدید . memory map دیتاشیت خیلی کلی گفته .... ممنون میشم

            دیدگاه


              #7
              پاسخ : کدام روش بهتر است ؟ دستورات خود میکرو یا CMSIS

              نوشته اصلی توسط antipa نمایش پست ها
              سلام خوشحال شدم پیامتون را دیدم
              میشه لیست تمام رجیستر های میکرو lpc1768 را قرار بدید . memory map دیتاشیت خیلی کلی گفته .... ممنون میشم
              سلام،
              جناب، دقیق ترین جوابی که میتونم بدم اینه که:
              جان خودم "بلد نیستم"!!
              من فقط با STM32 کار میکنم! اون هم تازه فقط یک ساله شروع کردم!!
              ...
              منظور من از "باید با رجیسترها زندگی کرده باشی!" کلی بود، و گرنه که من کل رجیسترهای تاریخ و جغرافیا رو نمیشناسم!!
              ...
              مثلا میدونی کیا واقعاً با رجیسترها زندگی کردن؟!
              اونهایی که پروژههای کنترل و اتوماسیون عملیاتی رو با تراشه های TTL و CMOS از خدا بیخبر، رام نشدنیِ بی ادب کار میکردند!!! و توی هر طرحی یک تا یک و نیم کیلوگرم، IC به کار میبردند!!!!!!!!
              ...
              (آخریش رو که مثل بنز کار میکرد، خوابوندم توی آبنمک، میخوام بذارمش توی موزه!!!)
              ◙◙◙◙◙ میخوام به دوستان یه کتاب معرفی کنم! وقت کردید، بخونید - اسمش هست قرآن، سال نشر 10، نویسنده: خدا . ◙◙◙◙◙

              دیدگاه


                #8
                پاسخ : کدام روش بهتر است ؟ دستورات خود میکرو یا CMSIS

                نوشته اصلی توسط antipa نمایش پست ها
                سلام خوشحال شدم پیامتون را دیدم
                میشه لیست تمام رجیستر های میکرو lpc1768 را قرار بدید . memory map دیتاشیت خیلی کلی گفته .... ممنون میشم
                این چیزی که شما دنبالش هستی بهش میگن user manual
                برای هر میکرو که بخوای توی گوگل سرچ کنی برات میاره.

                این برای lpc1768


                برای این که برنامه نویسیتون براساس رجیستری باشه اول از همه باید انگلیسیتون خوب باشه. بعد از اون باید روش سرچ رو یادبگیرید. بعد از اون هم برای یادگیری باید هزینه کرد. هم مالی هم معنوی

                در مورد متد های برنامه نویسی الان دیگه اسمبلی به صورتی که قبلا بوده نیست. هم قدرت کامپایلر ها بالا رفته هم سرعت cpu ها.
                روشهایی مثل توابع cmsis و hal که الان پرطرفدار هستن به خاطر این که هم گفتار نزدیک هستن که شناختن دستورات رو آسون میکنه و برای تغییر بستر اجرای برنامه(میکروکنترلر) لازم نیز زیاد کد رو تغییر بدید. در مورد سرعت اجرا هم به خاطر سرعت بالای پردازنده خیلی تاثیر گذار در سرعت برنامه نیستن. البته اگه کاربر اصولی برنامش رو بنویسه

                در مورد رجیستری نمیدونم چحوری براتون توضیح بدم. من خودم رجیستری برنامه مینویسم.شروعش از جایی استارت خورد که ناخودآگاه در این مسیر قرار گرفتم.
                برای این روش منابع کمی توی اینترنت هست و بیشتر باید وقتتون رو روی منابعی که خود شرکت سازنده مثل user manual و پلیکشن نوت ها بذارید.

                برای آموزش cmsis و hal راحترین راه برای آموزش هست. هم برای استاد هم برای کارآموز.
                ولی به نظر برای خودآموزی رجیستری راحتتر باشه. چون خودم هم از طریق خودآموزی مطالب رو یاد گرفتم

                دیدگاه


                  #9
                  پاسخ : کدام روش بهتر است ؟ دستورات خود میکرو یا CMSIS

                  نوشته اصلی توسط اشکان غفارزاده نمایش پست ها
                  این چیزی که شما دنبالش هستی بهش میگن user manual
                  این برای lpc1768

                  دستتون درد نکنه این همون چیزی بود که دنبالش بودم من فکر می کردم lpc 1768 هم مثل همه ی قطعات الکترونیکی فقط دیتا شیت داره ... نگو یه چیز اضافه تر هم داشته .
                  4 ساعت سرچ کردم چیزی پیدا نکردم - حتی dvd های چهار محصولی که از eca خریده بودم هم نگاه کردم ولی این توش نبود ...
                  بنظرم برای شروع هر نوع میکرو کنترلری باید اول همه ی دستورات اسمبلیش را یاد بگیریم مر حله ی دوم تمام رجیستر هایش را حفظ باشیم . بدون این دوتا نریم دنبال یادگیری میکرو کنترلر سنگین تریم . البته میشه این دوتا را بیخیال شویم اما اون موقع مهندس الکترونیک نیستم . بلکه فقط یک کد نویس ساده ی کامپیوتریم .
                  این چیزه هست که تو ایران اصلا بهش توجه نمیشه .... به نظرم اگه بخوایم کسی را گیج کنیم و راحت 5 سال عقبش بیندازیم بهش بگیم برو با c برای میکرو کنترلر برنامه بنویس
                  قانون اینکه فقط استاد ها حق نوشتن با زبان های سطح بالا را دارند

                  دیدگاه


                    #10
                    پاسخ : کدام روش بهتر است ؟ دستورات خود میکرو یا CMSIS

                    نوشته اصلی توسط antipa نمایش پست ها
                    دستتون درد نکنه این همون چیزی بود که دنبالش بودم من فکر می کردم lpc 1768 هم مثل همه ی قطعات الکترونیکی فقط دیتا شیت داره ... نگو یه چیز اضافه تر هم داشته .
                    4 ساعت سرچ کردم چیزی پیدا نکردم - حتی dvd های چهار محصولی که از eca خریده بودم هم نگاه کردم ولی این توش نبود ...
                    بنظرم برای شروع هر نوع میکرو کنترلری باید اول همه ی دستورات اسمبلیش را یاد بگیریم مر حله ی دوم تمام رجیستر هایش را حفظ باشیم . بدون این دوتا نریم دنبال یادگیری میکرو کنترلر سنگین تریم . البته میشه این دوتا را بیخیال شویم اما اون موقع مهندس الکترونیک نیستم . بلکه فقط یک کد نویس ساده ی کامپیوتریم .
                    این چیزه هست که تو ایران اصلا بهش توجه نمیشه .... به نظرم اگه بخوایم کسی را گیج کنیم و راحت 5 سال عقبش بیندازیم بهش بگیم برو با c برای میکرو کنترلر برنامه بنویس
                    قانون اینکه فقط استاد ها حق نوشتن با زبان های سطح بالا را دارند
                    اسمبلی رو کلا فراموش کنید. دوره ای اسمبلی دیه برای مهندسین جدید گذشته... کسی هم بلدش نباشه عیبی براش نداره بلد هم باشه چیزی بهش اضافه نمیشه. من خودم 8051 استفاده میکردم یه زمانی که دو روز مینشستیم به برنامه براش مینوشتیم پدرمون در میود!!!
                    زبان C رو اول بهش مسلط بشید بعد میکرو رو شروع کنید.
                    سرعت پردازنده و امکانال کامپایلر ها اونقدر به صورت وحشتناکی بالا رفته که دست شما رو با زبون C خیلی باز میذاره و به راحتی میتونید با میکروکنترلر کار کنید

                    در کنار میکرو ناخودآگاه نکات طراحی مدار رو هم یاد میگیرید. فقط سعی کنید که یهو به سمت یک موضوع خاص هجوم نبرید. یواش یواش جلو برید تا بتونید مطالب رو خوب درک کنید

                    در مورد یوزرمنوال هم توی گوگل جلوی اسم هر میکرو کلمه "user manual" رو بنویسی فایلش رو براتون میاره. یه اسم دی که بهش Reference manual هم میگن

                    دیدگاه


                      #11
                      پاسخ : کدام روش بهتر است ؟ دستورات خود میکرو یا CMSIS

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

                      در کنار میکرو ناخودآگاه نکات طراحی مدار رو هم یاد میگیرید. فقط سعی کنید که یهو به سمت یک موضوع خاص هجوم نبرید. یواش یواش جلو برید تا بتونید مطالب رو خوب درک کنید

                      در مورد یوزرمنوال هم توی گوگل جلوی اسم هر میکرو کلمه "user manual" رو بنویسی فایلش رو براتون میاره. یه اسم دی که بهش Reference manual هم میگن
                      یه جایی کار اموز بودم . طرف 60 سال داشت و یک مهندس واقعی مخابرات بود . بهم گفت دیگه مندس مخابراتی به وجود نمییاد . گفتم چرا ؟ گفت چون همه چیز آی سی شده
                      به نظرم با c به روح میکرو وصل نمی شی !!!! و نمیدونی اون تو چه خبره !!! و این درست نیست
                      من نگفتم با اسمبلی بنویسم - گفتم فقط یاد بگیرمشون و یه تعریف ساده ازشون داشته باشیم کلا دو نوع معماری داریم یکی معماری که تو cpu کامپیوتر استفاده می شه و تو انحصاره
                      و یکی هم همین اسباب بازی هایی که ما باهاشون کار می کنیم . کل دستوراتی که بخوایم یاد بگیرم شاید 200 نشه
                      ولی با این کار دیگه مستقل از نوع میکرو و کار خانه ی سازندش می شم . این به این معناست شما با هر میکرو یی که ساخته شده و قراره ساخته بشه می تونی کار کنی - قدرت انتخاب واقعی داریم این یعنی می فهمیم کدام میکرو واقعا قوی هست - کدام میکرو در چه نقطه ضعف دارد . ...
                      ولی اگه اول با c کار کنی یه روز میرسی به جایی که دیگه کدات اون جواب خاص را بهت نمیده و بعد مجبور میشی دوباره برگردی به اسمبلی
                      فرق این دو مسیر تو این هست که تو مسیر اول برنامه نوسی با c = شما در آینده ی نچندان دور می تونی پروژه جمع کنی و به پول برسی و بعد از چند سال دیگه نمی تونی اسمبلی را یاد بگیری جون مغزت بسته شده - (حوصلشو نداری یا وقتشو نداری - یا ....)
                      مسیر دوم یادگیر با اسمبلی = اصلا نمی تونی پروژه جمع کنی تا چند سال دیگه - ولی بعدش می تونی هر کاری بکنی
                      البته با وضع کنونی چه بخوایم چه نخواییم باید با c شروع کنیم . و اسمبلی رو ببوسیم بزاریم کنار

                      دیدگاه


                        #12
                        پاسخ : کدام روش بهتر است ؟ دستورات خود میکرو یا CMSIS

                        نوشته اصلی توسط antipa نمایش پست ها
                        یه جایی کار اموز بودم . طرف 60 سال داشت و یک مهندس واقعی مخابرات بود . بهم گفت دیگه مندس مخابراتی به وجود نمییاد . گفتم چرا ؟ گفت چون همه چیز آی سی شده
                        به نظرم با c به روح میکرو وصل نمی شی !!!! و نمیدونی اون تو چه خبره !!! و این درست نیست
                        من نگفتم با اسمبلی بنویسم - گفتم فقط یاد بگیرمشون و یه تعریف ساده ازشون داشته باشیم کلا دو نوع معماری داریم یکی معماری که تو cpu کامپیوتر استفاده می شه و تو انحصاره
                        و یکی هم همین اسباب بازی هایی که ما باهاشون کار می کنیم . کل دستوراتی که بخوایم یاد بگیرم شاید 200 نشه
                        ولی با این کار دیگه مستقل از نوع میکرو و کار خانه ی سازندش می شم . این به این معناست شما با هر میکرو یی که ساخته شده و قراره ساخته بشه می تونی کار کنی - قدرت انتخاب واقعی داریم این یعنی می فهمیم کدام میکرو واقعا قوی هست - کدام میکرو در چه نقطه ضعف دارد . ...
                        ولی اگه اول با c کار کنی یه روز میرسی به جایی که دیگه کدات اون جواب خاص را بهت نمیده و بعد مجبور میشی دوباره برگردی به اسمبلی
                        فرق این دو مسیر تو این هست که تو مسیر اول برنامه نوسی با c = شما در آینده ی نچندان دور می تونی پروژه جمع کنی و به پول برسی و بعد از چند سال دیگه نمی تونی اسمبلی را یاد بگیری جون مغزت بسته شده - (حوصلشو نداری یا وقتشو نداری - یا ....)
                        مسیر دوم یادگیر با اسمبلی = اصلا نمی تونی پروژه جمع کنی تا چند سال دیگه - ولی بعدش می تونی هر کاری بکنی
                        البته با وضع کنونی چه بخوایم چه نخواییم باید با c شروع کنیم . و اسمبلی رو ببوسیم بزاریم کنار
                        سلام
                        مهندس داری یا خراب برداشت میکنی یا اشتباه بهت توضیح دادن. من با حرف های آقای غفارزاده کاملا موافقم.
                        با آرزوی موفقیت برای شما

                        دیدگاه


                          #13
                          پاسخ : کدام روش بهتر است ؟ دستورات خود میکرو یا CMSIS

                          نوشته اصلی توسط antipa نمایش پست ها
                          ...به نظرم با c به روح میکرو وصل نمی شی !!!! و نمیدونی اون تو چه خبره !!! و این درست نیست ....
                          مهندس اینها که میگی فقط یه باغ سبزیه که شما "اینورش" قرار داری! و اونهایی که ازش رد شدن و "اونورش" قرار دارند، دارند بهت میگن C !
                          من خودم از اونهایی هستم که نه از اسمبلی! بلکه از تراشه های منطقی شروع کردم، یعنی جایی که برای جمع دو تا عدد 4 بیتی باید یه IC ء khرکی بذار روی برد! تازه بعدش موقعی 8051 رو شروع کردم، قانع نشدم و همزمانش کتاب معماری کامپیوتر رو تا پردازش لوله ای خونم!!!
                          الان بهت میگم C !
                          نوشته اصلی توسط antipa نمایش پست ها
                          ... ولی با این کار دیگه مستقل از نوع میکرو و کار خانه ی سازندش می شم . این به این معناست شما با هر میکرو یی که ساخته شده و قراره ساخته بشه می تونی کار کنی ....
                          اینجا داری دقیقا در مورد زبان C صحبت میکنی!
                          شما در برنامه نویسی هر چه از زبان ماشین دورتر بشی و به زبانهای سطح بالا نزدیکتر بشی، برنامه ات پرتیبل تر هست!
                          حالا اگه کسی بخواد نه سیخ بسوزه نه کباب خام بمونه!
                          بهترین راهش زبان C بعلاوه آشنایی با رجیسترهاست!
                          در این صورته که شما واقعا دیگه نوع میکرو برات فرق نداره، چون دستورات C که ثابته و کامپایلر زحمت تبدیل به کد ماشینش رو میکشه!
                          و رجیسترها هم که از ب بسم الله تا آخر توی منوالهای شرکت سازنده میکرو هست!!
                          من با همین روش برای STM32 بدون آشنایی قبلی، ظرف 15 روز 5 تا کتابخونه پرکاربرد خودم رو نوشتم!
                          ....
                          سر آخر یه جمله بگم که همه موارد فوق و یکی دو جین حرف دیگه توشه!!
                          ...
                          تقریبا بدبخت ترین مردم، ما جهان سومی ها هستیم، بقیه جاها هر کدوم یه آجر میسازنند و میذارنش کنار هم، باهاش پله میسازن و با هم میرن بالا!
                          ما هر کدوم یه فرغون آجر گرفتیم دستمون، هی با خودمون اینور و اونور میبریم و هی مواظبیم هیچکی ازش بر نداره!
                          اونجاهایی که پیشرفت کردند، یه کد یه بار نوشته میشه، و در اختیار بقیه قرار میگیره! و اونی که نوشته اش، زندگیش از همون کد تأمین میشه و بقیه ازش استفاده میکنن و چیزهای پیشرفته تر باهاش میسازنن و در اختیار بقیه قرار میگیره و زندگیشون هم تامین میشه و الی ویندوز و اندروید!!!
                          ولی ما یه کتابخانه فزرتی مینویسیم و تا توی لحد سکرت میمونه، البته حق هم داریم آخه موقعی چندصد میلیون دلار نرم افزار رو توی 10 تا DVD میخریم 30 تومن، دیگه کی میاد واسه کتابخونه من پول بده!!
                          ◙◙◙◙◙ میخوام به دوستان یه کتاب معرفی کنم! وقت کردید، بخونید - اسمش هست قرآن، سال نشر 10، نویسنده: خدا . ◙◙◙◙◙

                          دیدگاه


                            #14
                            پاسخ : کدام روش بهتر است ؟ دستورات خود میکرو یا CMSIS

                            نوشته اصلی توسط antipa نمایش پست ها
                            یه جایی کار اموز بودم . طرف 60 سال داشت و یک مهندس واقعی مخابرات بود . بهم گفت دیگه مندس مخابراتی به وجود نمییاد . گفتم چرا ؟ گفت چون همه چیز آی سی شده
                            به نظرم با c به روح میکرو وصل نمی شی !!!! و نمیدونی اون تو چه خبره !!! و این درست نیست
                            من نگفتم با اسمبلی بنویسم - گفتم فقط یاد بگیرمشون و یه تعریف ساده ازشون داشته باشیم کلا دو نوع معماری داریم یکی معماری که تو cpu کامپیوتر استفاده می شه و تو انحصاره
                            و یکی هم همین اسباب بازی هایی که ما باهاشون کار می کنیم . کل دستوراتی که بخوایم یاد بگیرم شاید 200 نشه
                            ولی با این کار دیگه مستقل از نوع میکرو و کار خانه ی سازندش می شم . این به این معناست شما با هر میکرو یی که ساخته شده و قراره ساخته بشه می تونی کار کنی - قدرت انتخاب واقعی داریم این یعنی می فهمیم کدام میکرو واقعا قوی هست - کدام میکرو در چه نقطه ضعف دارد . ...
                            ولی اگه اول با c کار کنی یه روز میرسی به جایی که دیگه کدات اون جواب خاص را بهت نمیده و بعد مجبور میشی دوباره برگردی به اسمبلی
                            فرق این دو مسیر تو این هست که تو مسیر اول برنامه نوسی با c = شما در آینده ی نچندان دور می تونی پروژه جمع کنی و به پول برسی و بعد از چند سال دیگه نمی تونی اسمبلی را یاد بگیری جون مغزت بسته شده - (حوصلشو نداری یا وقتشو نداری - یا ....)
                            مسیر دوم یادگیر با اسمبلی = اصلا نمی تونی پروژه جمع کنی تا چند سال دیگه - ولی بعدش می تونی هر کاری بکنی
                            البته با وضع کنونی چه بخوایم چه نخواییم باید با c شروع کنیم . و اسمبلی رو ببوسیم بزاریم کنار
                            شما خیلی میخوای کامل یک میکرو رو از پایه یادبگیری، ( از اینکه ماژول چطور نوشته شده، چطور به باس پردازنده وصل شده، چطور فراخوانی میشه) باید با سافت پروسسر ها کار کنید، برای حالت های خاص از این روش استفاده میشود. اونجا شما خودت رجیستر رو می سازی، و خودت اطلاعات را برای ماژول می فرستی، ماژولهایی که ممکنه اصلا استاندارد نباشن.

                            کلا مطلب واسه دانستن زیاد هست، تا موقعی که مشتری نداشتید؛ یا اینکه فکر میکنید مشتری برای کاری پیدا نمیشه اصلا دنبال این چیزها نروید.

                            دیدگاه


                              #15
                              پاسخ : کدام روش بهتر است ؟ دستورات خود میکرو یا CMSIS

                              یه روزی تو دانشگاه به یکی از بچه های کامپیوتر گفتم بیا بگو چطور یک متن را تو هارد با زبان سی شارپ ذخیره کنم . ..اونم اومد شروع کرد به توضیح دادن ... یک متغیر استرینگ با طول 1000 تعریف می کنیم ... .برابر صفرش می کنیم یه بافر کاراکتر با طول 2000 تعریف می کنیم ...داشت همینجور متغییر تعریف می کرد من داد زدم داری چکار می کنی ؟!! می دونی متغیری با طول 1000 برابر صفر قرار دادن یعنی چی ؟ گفت اره یعنی یک متغییری که همه ی اعظاش صفر هست . بهش توضیح دادم واسه این که این متغییر ساخته بشه پدر cpu در میاد میدونی چه برقی مصرف میشه ... میدونی چه فشاری روی رم میاد .... 1000 بایت هر کدومش هشتا بیت داره هر بیتی به یک خازن وصله این که مقدار صفر شه با یداون همه خازن پایه هاشون به زمین اتصال کوتا شه میدونی چه جرقه یی می زنه ؟!!! چه حرارتی ایجاد میکنه .اونم گفت می خوای یادت بدم یا پاشم برم .
                              بعد گفت این کتاب خانه ها را پیوند میزنی و این تابع را می نویسی و اونوقت متن تو هارد ذخیره میشه .... گفتم همین !! گفت اره . بهش گفتم پس سکتور و قطاع و سیلندر هارد چطور تنظیم می شه . جدول فایل سیستم و نام گذاری و .... چی . گفت نمیدونم چی میگی و رفت . بعد از رفتنش اولین کاری که کردم طول اون متغییر را 50 کردم : )

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

                              دیدگاه

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