Page 688 - 완) I MDP 프로젝트 작품 보고서(전체과 1학년)1.6
P. 688

unsigned  char  mode=1,  c=4;

            //  타이머  on/off  플래그,  시계  블링크  플래그
            bit  timer_flag=0,flag=0;

            //  타이머카운터  변수
            int  tc=0;
            //  타이머,  시계,  안정화  변수

            long  timer=0,  watch=0,  i=0;
            // lcd 버퍼

            unsigned  char  lcd_buff[15];


            //  타이머카운터0  (16.6ms  클록)

            interrupt  [TIM0_OVF]  void  timer_int(void)  {
                //  0.5초마다  콜론  블링크,  1초  마다  시계  변수  증가

                tc++;
                if  (tc==30)blink=0;
                if  (tc==61){

                    blink=1;
                    watch++;

                    //  23:59:59에서  1초 증가  시  00:00:00으로
                    if  (watch==86400)watch=0;
                    //  타이머가  켜져있다면  감소,  타이머가  0이  되면  LED끔

                    if  (timer_flag==1){  //  타이머  실행중이라면
                        timer--;    //  타이머  1초  감소

                        if  (timer==0){  //  타이머  시간이  다  되었다면
                            timer_flag=0;  //  타이머를  종료  시킴
                            PORTF=0x00;}   }  //  LED  끔

                    //  1초가  되면  타이머  카운터  변수  초기화
                    tc=0;}

                /*  안정화  (스위치가  눌렸다면  I변수를  통해  0.3초동안  입력받지  못하도록  함)
                   0일  때  입력가능,  눌렸다면  1로  토글됨.  1~17(0.3초)동안  입력불가
                if  (i>=1)i++;

                if  (i==17)i=0; }









                                                         -  681  -
   683   684   685   686   687   688   689   690   691   692   693