Page 115 - MDP2020-3
P. 115

················································································  명장양성프로젝트  【MDP】  과제발표회  자료집  Ⅲ    |  109


                    TIMSK  =  0b00000001;  //tc0  ovf  interrupt  :  enable;
            }



            interrupt  [EXT_INT2]  void  echo_finish()
            {
                    //카운터  종료
                    TIMSK  =  0b00000000;  //tc0  ovf  interrupt  :  disable;


                    //distance(cm)  =  uS  /  58(SPEC)
                    printf("raw  :  %d,  distance(cm)  :  %d\r",  dist,  (dist/24));
                    dist  =  0;
            }



            interrupt  [TIM0_OVF]  void  measure_dist()
            {
                    //every  1us
                    dist  ++;

                    TCNT0  =  253;        //TCNT0  Reinitialize
            }


            void  main()
            {
                    i  =  0;

                    DDRA  =  0xff;
                    DDRB  =  0xff;

                    DDRC  =  0xff;
                    DDRD  =  0x00;
                    DDRE  =  0xff;

                    PORTA  =  0x01;

                    init_uart0();
                    TC0_cnt();
                    init_interrupt();
                    SREG  =  0x80;


                    while(1){
                            test_SONIC();
                            delay_ms(500);

                    }
            }
   110   111   112   113   114   115   116   117   118   119   120