Page 568 - 2
P. 568

lcd_cmd(CL);
                xy(4,0);
                lcd_str("-CLEAR:D-");
                GR = 1;
                RED = 1;
                MEL = 1;
                for(j=0;j<8;j++)
                {
                    PORTF = PORTF << 1;
                    delay_ms(200);
                    if(PORTF > 0x80) PORTF = 0x01;
                    }
            }
            interrupt [EXT_INT0] void mot1(void)         // 외부인터럽트 0    번
            {
                delay_ms(5);                            // 잠깐의 지연시간을 가진뒤에 서보모터의 각도를 90                   도로
            변경
                servo1();
            }


            interrupt [EXT_INT1] void mot2(void)          // 외부인터럽트 1    번
            {
                delay_ms(5);                            // 잠깐의 지연시간을 가진 뒤에 서보모터의 각도를 0                   도로
            변경
                servo2();
            }


            interrupt [TIM0_OVF] void gameover (void)                   // 오버플로 함수
            {
                if(ccnt == 1)                             //ccnt 가 1 일 경우, cnt  를 증가시킴.
                {
                    cnt++;
                    if(cnt == 50)                          //cnt 가 50 이 되면 1  초가 되었다는 뜻이므로, cnt         를 다
            시 0 으로 초기화 시키고 flag       를 1   증가시킴
                    {
                        cnt=0;
                        flag++;


                    if(flag>=3)                               //flag 가 3  이상 초 이 되면(3 )  , RED 는 꺼지고 GREE
            N 은 들어옴
                        {
                            RED = 0;
                            GR = 1;
                        }
                    else if(flag >=83)                    //flag 가 123(1 분 23 초 이상이 되면)    , RED 와 GREEN   은


                                                         - 568 -
   563   564   565   566   567   568   569   570   571   572   573