اطلاعیه

Collapse
No announcement yet.

درخواست راهنمایی و کمک در خصوص اجرای همزمان

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

    درخواست راهنمایی و کمک در خصوص اجرای همزمان

    سلام دوستان :nice: :nice: :nice:
    می خواستم درخواست کنم از دوسانی که اطلاعات کامل در خصوص برنامه نویسی C و کامپایلر Mikroc برای میکروکنترلرهای خانواده PIC دارند ، بنده را در خصوص اجرای همزمان چند برنامه یاری دهند . :nerd: :nerd: :nerd:
    به طور مثال عرض می کنم ، میکرو از نوع PIC18F452 با کریستال خارجی
    یک قسمت از برنامه به صورت دائم ADC را چک کند و در متغیر مربوط بریزد
    یک قسمت تمام پین های پورت B را دائم چک کند (منظور فشرده شدن کلید است به صورت ورودی یک ) و متناظر با هر کلید یک پین از پورت دیگر را یک کند
    یک قسمت یک اطلاعات را از طریق I2C , SPI , Usart ارسال و دریافت کند و در متغیر مربوطه قرار دهد
    یک قسمت هم اطلاعات لازم را بر روی LCD کارکتری نمایش دهد
    یک قسمت هم کارهای معمول دیگر را انجام دهد ( do , loop اصلی )
    :read: :read: :read: :read:
    برنامه به صورت یکپارچه و به قولی Clean Code باشد که همه دوستان متوجه شوند .
    پیشاپیش از سایت وانجمن ECA و دوستانی که به سوالات پاسخ می دهند ممنونم :agree: :agree: :agree:

    #2
    پاسخ : درخواست راهنمایی و کمک در خصوص اجرای همزمان

    سلام.
    پیشنهاد میکنم از کامپایلر CCS استفاده کنین که میشه باهاش سیستم عامل روی میکروهای سری 18F اجرا کرد.
    دوستان و متخصصین حاضر در انجمن عموما فرصت نمیکنن بشینن برای کسی دیگه کدنویسی کنن، شما خودتون دست به کار بشین، جایی به مشکل برخوردین، از مطالب موجود در تاپیک ها استفاده کنین، اگر هم مطالب موجود جوابگوی نیاز شما نبودن، سوال رو مطرح بفرمایید تا دوستان براش راه حل ارائه بدن.
    موفق باشید.

    دیدگاه


      #3
      پاسخ : درخواست راهنمایی و کمک در خصوص اجرای همزمان

      ممنونم جناب مستقیمی ، بنده به تازگی کار با میکروکنترلر های PIC را شورع کردم و اطلاعات مختصری در این باره دارم .به هر حال ممنونم از راهنماییتون :biggrin: :biggrin: :biggrin:

      دیدگاه


        #4
        پاسخ : درخواست راهنمایی و کمک در خصوص اجرای همزمان

        با سلام به همه دوستان.
        بنده هم تازه کار با میکروکنترلرها رو شروع کردم.
        لطفا بفرمائید اصلا امکان انجام چند تا کار با هم و همزمان برای میکرو وجود داره، یعنی اینکه مثلا هم یک عدد در هر ثانیه یه واحد افزایش یابد و در Lcd نمایش داده شود، و هم اینکه مثلا دمای یه سنسور DS18B20 قرائت و نمایش داده شود . البته به صورت موازی و بدون اینکه افزایش عدد از 1 ثانیه به 2 ثانیه تبدیل بشه؟
        ممنون میشم توضیح بدین. البته من فعلا از PICBasic Pro استفاده میکنم.

        دیدگاه


          #5
          پاسخ : درخواست راهنمایی و کمک در خصوص اجرای همزمان

          دوست گرامی
          در همه پردازنده های تک هسته ای پردازش موازی با روش تقسیم زمانی صورت میگیرد ... به این معنی که عملیات مورد نظر به Task مستقل تقسیم گردیده و CPU هر چند میلی ثانیه یکی از Task ها را اجرا میکند ... قابل توجه میباشد که در سوویچ بین تسکها ( همانند سابروتین ) کلیه آدرسهای شروع و خاتمه و حتی مقادیر متغییر باید ذخیره گردد
          پاره ای از رویکردهای دفاعی

          دیدگاه


            #6
            پاسخ : درخواست راهنمایی و کمک در خصوص اجرای همزمان

            و به پاسخ بالا بایستی این موضوع اضافه بشه تمام کارها با وقفه پیاده سازی بشه،
            برای پیاده سازی ساده هم تمام کارها رو لیست کنید، توجه کنید که این کارها هیچکدوم شامل انتظار نباید باشند مثلا شما میخوای یه led رو یک ثانیه روشن کنید، الان روشن میکنید ، یه task تعریف میکنید که یک ثانیه بعد ال ای دی خاموش بشه.
            طبیعیه که زمان میکرو رو همواره در یک متغیر دارین.
            در لوپ اصلی برنامه به ترتیب تسک ها بررسی میشن هر کدوم موقع اجراش رسیده بود اجرا میشه.
            آشنایی با مفهوم صف در برنامه نویسی هم ضروریه

            دیدگاه

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