اطلاعیه

Collapse
No announcement yet.

مشکل تاخیر زمانی در کلید های push button

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

    مشکل تاخیر زمانی در کلید های push button

    سلام
    این کلید اولی که آپ زدم با تاخیر زیادی عمل میکنه من تایمشو تو کد ویژن زدم 100 میلی ثانیه ولی به زمان نیست


    #2
    پاسخ : مشکل تاخیر زمانی در کلید های push button

    نوشته اصلی توسط radarz نمایش پست ها
    سلام
    این کلید اولی که آپ زدم با تاخیر زیادی عمل میکنه من تایمشو تو کد ویژن زدم 100 میلی ثانیه ولی به زمان نیست

    سلام
    والا اگر به مدار باشه که مدار مشکلی نداره، پس حتما مشکل کده! کدی هم نیست که بشه نظر داد. اگر کد رو اینجا بذارید شاید بشه کمکی کرد.

    دیدگاه


      #3
      پاسخ : مشکل تاخیر زمانی در کلید های push button

      نوشته اصلی توسط hossein.m98 نمایش پست ها
      سلام
      والا اگر به مدار باشه که مدار مشکلی نداره، پس حتما مشکل کده! کدی هم نیست که بشه نظر داد. اگر کد رو اینجا بذارید شاید بشه کمکی کرد.
      #include <mega32.h>

      #include <delay.h>

      unsigned char number = 0 ; // Decimal to Binary 0 = 000 , 1 = 0001 , 2 = 0010 , 3 = 0011 , 4 = 0100
      // 5 = 0101 , 6 = 0110 , 7 = 0111 , 8 = 1000 , 9 = 1001

      void main(void)
      {
      PORTB = 0x00 ;
      // output
      DDRB = 0xFF ;

      PORTD = 0x00 ;
      // input
      DDRD = 0x00 ;

      while (1)
      {
      if(PIND.0 == 0 && number < 9)
      {
      number ++ ;
      while(PIND.0 == 0);
      delay_ms(100);
      }

      if(PIND.1 == 0 && number > 0)
      {
      number -- ;
      while (PIND.1 == 0)
      delay_ms(100);
      }
      PORTB = number;
      }
      }

      دیدگاه


        #4
        پاسخ : مشکل تاخیر زمانی در کلید های push button

        نوشته اصلی توسط radarz نمایش پست ها
        سلام
        این کلید اولی که آپ زدم با تاخیر زیادی عمل میکنه من تایمشو تو کد ویژن زدم 100 میلی ثانیه ولی به زمان نیست

        با سلام و احترام
        شما باید یا برای سوییچها مقاومت Pull-Up بیرونی بگذارید و یا از طریق 1 کردن بیت مرتبط با پین ورودی از طریق PORTD مقاومت Pull-Up داخلی را فعال کنید. ( ابتدا با دستور DDRD =0x00 پایه های پورت D را بصورت ورودی تعریف کنید و بعد با دستور PORTD=0x03 مقاومت Pull-Up داخلی را برای پایه های PD0 و PD1 فعال کنید.)
        موفق باشید.

        دیدگاه

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