اطلاعیه

Collapse
No announcement yet.

اسکن lcd

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

    اسکن lcd

    با سلام
    من یه کیپد به میکرو وصل کردم هر عددی میزنم رو ال سی دی نشون میده حالا میخام اون عددی ک وارد میکنم یه عملیاتی روش انجام بشه(مثلا اول بودنشو نشون بده یا زوج وفرد بودنشو) چطور میتونم یا با چه کدهای میتونم عدد رو ال سی دی رو انتخاب و اون عملیات انجام بدم
    راستش من با c نوشتم به بسکام تسلط زیادی ندارم
    تشکر
    من با دانش و آکاهی ام تمام جهالت ها رو به زانو در خواهم اورد.

    #2
    پاسخ : اسکن lcd

    چراااا کسی کمک نمیکنه؟؟؟ :angry: :cry2: :cry2: :cry2:
    من با دانش و آکاهی ام تمام جهالت ها رو به زانو در خواهم اورد.

    دیدگاه


      #3
      پاسخ : اسکن lcd

      خب شما باید بیاید تو یک متغیر عددتون رو بنویسید و از LCD صرفا برای نمایش استفاده کنید ...

      head<=
      ...تشکر خدا...
      [img width=97 height=100]http://mahdi3d.persiangig.com/image/5280543_t.jpg[/img]

      دیدگاه


        #4
        پاسخ : اسکن lcd

        آخه کدهای من به صورت:

        y = key();

        if(y == 0) {lcd_putchar('0' delay_ms(50);}
        if(y == 1) {lcd_putchar('1' delay_ms(50);}
        if(y == 2) {lcd_putchar('2' delay_ms(50);}
        if(y == 3) {lcd_putchar('3' delay_ms(50);}
        if(y == 4) {lcd_putchar('4' delay_ms(50);}
        if(y == 5) {lcd_putchar('5' delay_ms(50);}
        if(y == 6) {lcd_putchar('6' delay_ms(50);}
        if(y == 7) {lcd_putchar('7' delay_ms(50);}
        if(y == 8) {lcd_putchar('8' delay_ms(50);}
        if(y == 9) {lcd_putchar('9' delay_ms(50);}

        خب تو این چ جور میتونم یه متغییر تعریف کنم؟؟ :cry2:
        من با دانش و آکاهی ام تمام جهالت ها رو به زانو در خواهم اورد.

        دیدگاه


          #5
          پاسخ : اسکن lcd

          نوشته اصلی توسط milad brave
          آخه کدهای من به صورت:

          y = key();

          if(y == 0) {lcd_putchar('0' delay_ms(50);}
          if(y == 1) {lcd_putchar('1' delay_ms(50);}
          if(y == 2) {lcd_putchar('2' delay_ms(50);}
          if(y == 3) {lcd_putchar('3' delay_ms(50);}
          if(y == 4) {lcd_putchar('4' delay_ms(50);}
          if(y == 5) {lcd_putchar('5' delay_ms(50);}
          if(y == 6) {lcd_putchar('6' delay_ms(50);}
          if(y == 7) {lcd_putchar('7' delay_ms(50);}
          if(y == 8) {lcd_putchar('8' delay_ms(50);}
          if(y == 9) {lcd_putchar('9' delay_ms(50);}

          خب تو این چ جور میتونم یه متغییر تعریف کنم؟؟ :cry2:
          خب عزیز جان شما باید وقتی چیزی رو چاپ میکنید بیاید هردفعه تو یک متغیر هم بریزید
          مثلا دفعه اول 1 گرفتید متغیر میشه 1
          دفعه دوم 4 گرفتید متغیر ضربدر 10 میشه و با 4 جمع میشه و میشه 41
          دفعه سوم 3 میگیره و با ضربدر 10 شدن و جمع شدن میشه 413
          حالا هر کاری باهاش دوست دارید بکنید مثلا زوج و فرد و ....

          head<=
          ...تشکر خدا...
          [img width=97 height=100]http://mahdi3d.persiangig.com/image/5280543_t.jpg[/img]

          دیدگاه


            #6
            پاسخ : اسکن lcd

            نوشته اصلی توسط milad brave
            آخه کدهای من به صورت:

            y = key();

            if(y == 0) {lcd_putchar('0' delay_ms(50);}
            if(y == 1) {lcd_putchar('1' delay_ms(50);}
            if(y == 2) {lcd_putchar('2' delay_ms(50);}
            if(y == 3) {lcd_putchar('3' delay_ms(50);}
            if(y == 4) {lcd_putchar('4' delay_ms(50);}
            if(y == 5) {lcd_putchar('5' delay_ms(50);}
            if(y == 6) {lcd_putchar('6' delay_ms(50);}
            if(y == 7) {lcd_putchar('7' delay_ms(50);}
            if(y == 8) {lcd_putchar('8' delay_ms(50);}
            if(y == 9) {lcd_putchar('9' delay_ms(50);}

            خب تو این چ جور میتونم یه متغییر تعریف کنم؟؟ :cry2:
            شما واسه کارهای شرطی مثل کدتون در بالا از دستور Switch Case استفاده کنید. اینطور هم کد خواناتره و هم روانتر. اینجا توضیحات هست:
            http://www.cprogramming.com/tutorial/lesson5.html
            http://www.programiz.com/c-programmi...case-statement
            واسه کارتون هم می تونید قبل یا بعد از قرار دادن مقدار رو نمایشگر، مقدار جاری رو توی یه متغییر گلوبال ذخیره کنید. m4hd1r براتون توضیح داد.

            دیدگاه


              #7
              پاسخ : اسکن lcd

              مرسی از شما بزرگوارا ولی خیلی موفق نشدم! :cry2:
              کدهامو یکم تغییر دادم باز نمیتونم (مثلا میخوام فرضا میخوام عدد 425 وارد کنم بریزم تو یه متغییر نمیشه)
              لطفا کمک کنید این خیلی ضروریه من بتونم انجام بدم
              y = key();

              if(y == 0)
              {
              sprintf(str,"%u",y);
              lcd_puts(str);
              delay_ms(50);
              }
              if(y == 1)
              {
              sprintf(str,"%u",y);
              lcd_puts(str);
              delay_ms(50);
              }
              if(y == 2)
              {
              sprintf(str,"%u",y);
              lcd_puts(str);
              delay_ms(50);
              }
              if(y == 3)
              {
              sprintf(str,"%u",y);
              lcd_puts(str);
              delay_ms(50);
              }

              if(y == 4)
              {
              sprintf(str,"%u",y);
              lcd_puts(str);
              delay_ms(50);
              }
              if(y == 5)
              {
              sprintf(str,"%u",y);
              lcd_puts(str);
              delay_ms(50);
              }
              if(y == 6)
              {
              sprintf(str,"%u",y);
              lcd_puts(str);
              delay_ms(50);
              }
              if(y == 7)
              {sprintf(str,"%u",y);
              lcd_puts(str);
              delay_ms(50);
              }
              if(y == 8)
              {sprintf(str,"%u",y);
              lcd_puts(str);
              delay_ms(50);
              }
              if(y == 9)
              {
              sprintf(str,"%u",y);
              lcd_puts(str);
              delay_ms(50);
              }
              if(y == 14)
              {
              lcd_putsf("="
              delay_ms(200);
              }
              if(y == 15)
              {
              lcd_clear();
              }


              if (y==14)
              {
              delay_ms(20) ;
              lcd_read();
              delay_ms(50);
              }

              :angry: :angry:
              من با دانش و آکاهی ام تمام جهالت ها رو به زانو در خواهم اورد.

              دیدگاه


                #8
                پاسخ : اسکن lcd

                2 تا نکته
                1- کد هاتون رو تو تگ کد بزارید قابل خوندن تر میشه
                2 - فکر میکنم جوابتون باشه
                کد:
                int x=0,i = 0, result;
                for(i = 0; i < 3 ; i++)
                {
                y = key();
                lcd_putchar (y + 48); 	// y + 48 == 'y' look at ASCII table 
                x += x*10 + y;			
                }
                result = doSomethingOn(x); //your function for checking if it's odd, even or ...

                head<=
                ...تشکر خدا...
                [img width=97 height=100]http://mahdi3d.persiangig.com/image/5280543_t.jpg[/img]

                دیدگاه


                  #9
                  پاسخ : اسکن lcd

                  نه اینم جواب نداد!!!
                  نشد :angry:
                  من با دانش و آکاهی ام تمام جهالت ها رو به زانو در خواهم اورد.

                  دیدگاه

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