#include <mega8535.h>
#include <delay.h>

char SEV_DAT[]={0xc0,0xf9,0xa4,0xb0,0x99,
                0x92,0x82,0xf8,0x80,0x90,
                0x88,0x83,0xc6,0xa1,0x86,
                0x8e};
int index=0;
int num10=0, num1=0;
int key_push=0;
void main(void)
{
    PORTA=0x00; // 초기값
    DDRA=0xFF;  // 7-SEG 방향(1:출력, 0:입력)   
    PORTC=0x00; // 초기값
    DDRC=0x03;  // Tr 제어방향(1:출력, 0:입력)
    PORTB=0x03; // 키입력 초기값
    DDRB=0x00;  // 키입력 방향         
    while (1)
      {   // 키가 눌렸거나 기존에 눌린 상태
          // || : or, && : and    
        if((PINB.0 == 0) || (key_push==1)) {
            key_push=1; // 키 눌림 상태 변수        
            num10=index / 10;
            num1=index % 10 ;                     
            // 10의 자리
            PORTC.0=0; PORTC.1=1;         
            PORTA=SEV_DAT[num10];
            delay_ms(50);       
            // 1의 자리
            PORTC.0=1; PORTC.1=0;         
            PORTA=SEV_DAT[num1];
            delay_ms(50);                       
            index++;
            if(index >= 60) index=0;
        }
        if(PINB.1 == 0) {
            key_push=0;  // 키 눌림 상태 변수
        }
                                                   
      };
}

 

0부터 99는 나오는데 짝수만 나오게 하는법좀,,, 굽신굽신