Page 38 - 2020학년도 MDP과제발표회 자료집 (통신과) (3)
P. 38

PORTB.2  =  1;
                            }
                    }


                    // 래치클록
                PORTB.1  =  0;
                PORTB.1  =  1;
                delay_us(1);
                PORTB.3  =  1;

                PORTB.3  =  0;
                //======================================
                //1 층이  끝나면  층  증가
                //======================================
                if  (current_layer  >=  0){  // 층  증가

                    PORTC  =  layer[current_layer];
                }
                current_layer--;
                if  (current_layer  ==  -1)
                    current_layer  =  7;

                TCNT1  =  timer;
            }
                         나 헤더파일)
            #ifndef  _LED_DOT_H_
            #define  _LED_DOT_H_

            extern  unsigned  char  led_mode1[9][8][8][8];
            extern  unsigned  char  led_mode2[10][8][8][8];
            extern  unsigned  char  led_mode3[8][8][8];
            extern  unsigned  char  led_mode4[8][8][8];



            #endif
                    3) 프로그램  주요  소스
                         가 타이머  카운터)
                            (1) 사용예제
                    TIMSK  =  0x04;  //  타이머 카운터 번  오버플로우/  1      (Over  Flow)  발생시  인터럽트  요청

                    TCCR1B  =  0x05;  //   카운트  동작  주파수  1024     분주
                    TCNT1  =  timer;  //  TCNT1  레지스터  57723   으로  초기화
                    SREG  |=  0x80;  //   설정  인터럽트(Interrupt)   허용


                    interrupt  [TIM1_OVF]  void  timer_int1(void)

                    {
                            TCNT1  =  timer;  //  TCNT1  레지스터  57723 으로  초기화


                                                         -  37  -
   33   34   35   36   37   38   39   40   41   42   43