اطلاعیه

Collapse
No announcement yet.

مشکل در پبرنامه راه اندازی نمایشسگر

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

    #16
    پاسخ : مشکل در پبرنامه راه اندازی نمایشگر کارکتری و کی پد در اتمل استودیو با مگا ٣٢ در ذخیره عدد وارد شده

    ممنونم بابت وقتی میگذارید مرسی.
    اما این دستورات CASE و SWITCH رو کجای این کد که فرستادین بذارم؟
    چطور استفادش کنم اونو برای هدفم؟ من متوجه نشدم متاسفانه چکارش کنم اونو.


    [QUOTE=hossein.m98;702492]خوب این کد رو من کمی اصلاح کردم و فکر میکنم درست کار کنه. کمی تو کد شلوغ کاری شده بود و چندتایی متغیر اضافه بود که اصلاح کردم.
    جدیدترین ویرایش توسط aashkanpasha; ۲۱:۴۸ ۱۳۹۸/۰۵/۱۳.

    دیدگاه


      #17
      پاسخ : مشکل در پبرنامه راه اندازی نمایشگر کارکتری و کی پد در اتمل استودیو با مگا ٣٢ در ذخیره عدد وارد شده

      نوشته اصلی توسط aashkanpasha نمایش پست ها
      ممنونم بابت وقتی میگذارید مرسی.
      اما این دستورات CASE و SWITCH رو کجای این کد که فرستادین بذارم؟
      چطور استفادش کنم اونو برای هدفم؟ من متوجه نشدم متاسفانه چکارش کنم اونو.
      منظورتون از case و switch چیه؟ اینجا همچین چیزی نداریم

      دیدگاه


        #18
        پاسخ : مشکل در پبرنامه راه اندازی نمایشگر کارکتری و کی پد در اتمل استودیو با مگا ٣٢ در ذخیره عدد وارد شده

        bdvdcvcdvdcvcvcvcv
        جدیدترین ویرایش توسط aashkanpasha; ۲۱:۵۲ ۱۳۹۸/۰۵/۱۳.

        دیدگاه


          #19
          پاسخ : مشکل در پبرنامه راه اندازی نمایشگر کارکتری و کی پد در اتمل استودیو با مگا ٣٢ در ذخیره عدد وارد شده

          نوشته اصلی توسط aashkanpasha نمایش پست ها
          بالا یکی از دوستان از CASEو SWITCH استفاده کردن و برام یه کد فرستادن- فکر کردم شما فرستادین. برای اینه که اگه عدد زده شد و بعد کلید های * یا # زده شد چکار کنم.
          من میخام ترتیب عکس زیر انجام بشه:









          unsigne char pressed_key ;

          unsigne char state = 0;


          while (1)
          {
          pressed_key = scankeypad();
          if (pressed_key == '*')
          {
          state = 3;
          }


          switch (state)
          {
          case 0 :
          number = pressed_key;
          state++;
          break;

          case 1 :
          number = (number*10)+ pressed_key;
          state++;
          break;

          case 2 :
          number = (number*10) + pressed_key;
          state++;
          break;

          case 3 :
          state = 0 ;
          /// send number to lcd
          break;




          }
          }


















          ببینید شما توی هر پیام دارید ابعاد جدیدتری به پروژه اضافه میکنید. بهتره یبار کلیت پروژه رو مرور کنیم و بعد تصمیم بگیریم.
          ظاهرا شما میخوایید یک سیستم نوبت دهی برای جایی مثل نانوایی درست کنید که شامل یه پنل کنترل برای فروشنده، یک نمایشگر نوبت و احتمالا یک پنل نوبت دهی میشه.
          خوب پنل کنترل که شامل صفحه کلید و lcd برای فروشنده هستش. نمایشگر نوبت هم احتمالا یک سون سگمنت یا چیزی شبیه به اون هستش؛ شاید مثلا یه بلندگوی اعلام نوبت هم بخوایید داشته باشید. اما در مورد پنل نوبت دهی هیچ توضیحی نداید که کارکردش چطوره.
          سوالی که این وسط پیش میاد اینه که فقط یک میکروکنترلر همه این بخش ها رو کنترل میکنه یا چندتا میکروکنترلر هستن که با هم در تعامل اند؟
          جدیدترین ویرایش توسط hossein.m98; ۱۵:۵۲ ۱۳۹۸/۰۵/۱۳.

          دیدگاه


            #20
            پاسخ : مشکل در پبرنامه راه اندازی نمایشگر کارکتری و کی پد در اتمل استودیو با مگا ٣٢ در ذخیره عدد وارد شده

            باتشکر از شما و توجه تون.
            بله یک صفحه کلید و یک ال سی دی کارکتری باهم با یک آی سی به هم متصل هستند.
            اما سون سگمنت بعدا بصورت ارتباط سیمی یا بی سیم به پروژه اضافه خواهد شد.
            هدف من اینه که بتونم وانچه که میخام برای برنامم بنویسم فعلا بصورت نرم افزاری با یک کیپد و یک ال سی دی و یک سون سگمنت که فعلا با یه آی سی تو ارتباط هستند رو بنویسم تا کلیات برنامم دستم باشه بعدا کارو تکمیل تر خواهم کرد. فعلا میخام ببینم نرم افزاری اینا میتونم باهم با برنامه مچ کنم یا نه- بحث برنامه با منه بحث سخت افزار دوست دیگمون.
            کلیات کارکرد ال سی دی و کیپد رو هم توضیح دادم ولی مجددا بهتر توضیح میدم:
            یک آی سی داریم و یک کیپد و یک ال سی دی. ....میخاییم وقتی روشن شد این مدارمون.........روی ال سی دی یک پیغام خوش امدید اول بیاد(که حله)....... بعد پیغام ورود کلید یا عدد را بده (که حله)...... کاربر یکی از کلید ها رو بزنه و عدد رو بده عدد میتونه هرعدددی بین 0-999 باشه(که حله)....... با زدن اعداد روی کیپد اعداد روی ال سی نمایش داده میشه........ هر چندتا عدد وارد کرد اگر سپس # را زد میخواهم عدد روی ال سی دی چشمک بزنه یه دونه .و بعدش فرستاده شه به سون سگمنت...........اگر بعدش کلید A رو زد یک عدد به عدد قبلی که زده بود اضافه شه و رو ال سی دی چشمک زده شه عدد و فرستاده شه به سون سگمنت.......اگه کلید B رو زد یه عدد از عدد قبلی کم شه و ال سی دی و سون سگمنت نمایش بده........... سپس هر عدد دیگه ای زد باز همین اتفاق بیوفته و روی ال سی نمایش بشه........... نذاره کاربر عدد بیشتر از 3 رقم بزنه فقط بین 0-999........... اگه عدد رو زد یهو فهمید اشتباه زده با کلید * بتونه پاکش کنه.........
            کلیات اینه.

            یکی از دوستان که گفتن از SWITCH و CASE باید استفاده کنم و شما هم که لطف کردین کد خودمو اصلاح کردین و لی من نفهمیدم چور به این اهدافم برسم .


            نوشته اصلی توسط hossein.m98 نمایش پست ها
            ببینید شما توی هر پیام دارید ابعاد جدیدتری به پروژه اضافه میکنید. بهتره یبار کلیت پروژه رو مرور کنیم و بعد تصمیم بگیریم.
            ظاهرا شما میخوایید یک سیستم نوبت دهی برای جایی مثل نانوایی درست کنید که شامل یه پنل کنترل برای فروشنده، یک نمایشگر نوبت و احتمالا یک پنل نوبت دهی میشه.
            خوب پنل کنترل که شامل صفحه کلید و lcd برای فروشنده هستش. نمایشگر نوبت هم احتمالا یک سون سگمنت یا چیزی شبیه به اون هستش؛ شاید مثلا یه بلندگوی اعلام نوبت هم بخوایید داشته باشید. اما در مورد پنل نوبت دهی هیچ توضیحی نداید که کارکردش چطوره.
            سوالی که این وسط پیش میاد اینه که فقط یک میکروکنترلر همه این بخش ها رو کنترل میکنه یا چندتا میکروکنترلر هستن که با هم در تعامل اند؟
            جدیدترین ویرایش توسط aashkanpasha; ۱۸:۱۴ ۱۳۹۸/۰۵/۱۳.

            دیدگاه


              #21
              پاسخ : مشکل در پبرنامه راه اندازی نمایشگر کارکتری و کی پد در اتمل استودیو با مگا ٣٢ در ذخیره عدد وارد شده

              سلام
              ممنونم کلا مشکلم حل شد تشکر میکنم از راهنمایی هاتون مرسی.
              ب هر 256 تا یه بار 0 میشه. چرا؟
              جدیدترین ویرایش توسط aashkanpasha; ۲۱:۵۱ ۱۳۹۸/۰۵/۱۳.

              دیدگاه


                #22
                پاسخ : مشکل در پبرنامه راه اندازی نمایشگر کارکتری و کی پد در اتمل استودیو با مگا ٣٢ در ذخیره عدد وارد شده

                نوشته اصلی توسط aashkanpasha نمایش پست ها
                سلام
                ممنونم کلا مشکلم حل شد تشکر میکنم از راهنمایی هاتون مرسی.
                با سویچ switch و اصلاح دستوراتم حل شد مشکلاتم.
                فقط یه مورد مونده: تا عدد 255 درست کار میکنه از 256 به بعد دوباره از 0 شروع میکنه میره جلو . هر 256 تا یه بار 0 میشه. چرا؟
                چون متغیرتون از نوع unsigned char هستش که 8 بیتیه. با 8 بیت از 0 تا 255 میشه مقدار دهی کرد. نوع متغیر رو به unsigned int تغییر بدید تا درست بشه

                دیدگاه


                  #23
                  پاسخ : مشکل در پبرنامه راه اندازی نمایشگر کارکتری و کی پد در اتمل استودیو با مگا ٣٢ در ذخیره عدد وارد شده

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

                  دیدگاه

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