اطلاعیه

Collapse
No announcement yet.

کمک برای یک شمارنده ساده

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

    کمک برای یک شمارنده ساده

    سلام.دوستان.من این برنامه رو نوشتم.از 0 تا 15 می شمره.می خوام برعکس هم بشمره.با یه پوش باتن دونه دونه بشمره بره بالا و رو 7-segment نشون بده.و به یه پوش باتن دیگه از 15 بیاد تا 0.
    کد:
    [right][left][left][right][left][left]#include <mega16.h>
     
    char digits[16]={0x3F,0x06,0x5B,0x4F,0x66,0x6D,
    0x7D,0x07,0x7F,0x6F,0x77,0x7C,0x39,0x5E,0x79,0x71};
    unsigned char;
    unsigned char p_state;
    unsigned char key;
    unsigned char i;
     
    void main(void)
    {
     
      DDRD = 0xFF;
      PORTD = digits[0];
      DDRC = 0x00;
      PORTC = 0xFF;
      
      while(1)
      {
      
        if(!PINC.0)
        {
            if(key!=p_state)
            {
                if(i==15)
                {
                    i=0;
                    PORTC=digits[0];
                }
                else
                i++;
            
                PORTD = digits[i];
                p_state=key;
            };
        }
        else
          p_state=0xFF;
    }[/left][/left][/right][/left][/left][/right]

    #2
    پاسخ : کمک برای یک شمارنده ساده

    خوب یه for میزارید بعدش از اینتراپت استفاده میکنید و یه متغیر مثل همونی که تو for بود اما این بار بر عکس عمل میکنید

    دیدگاه

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