Page 23 - 2020학년도 MDP과제발표회 자료집 (제어과) (1)
P. 23

}
            }

            #include  <mega128.h>
            #include  <delay.h>


            #define  LINE1      0x80
            #define  LINE2      0xC0

            #define  CMD_WRITE      0xFE
            #define  DATA_WRITE    0xFF
            #define  LCD_EN    0x02


            unsigned  char  value[10]  =  {0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7c,0x07,0x7f,0x67};

            int  cnt  =  6,cnt1  =  2;
            unsigned  char  flag  =  0;
            unsigned  int  red_led  =  0x00,green_led  =  0xff;
            unsigned  char  i0=0,i1=0,i2=0,i3=0,i4=0,i5=0,i6=0,i7=0;
            char  employee  =  0,em=0;



            void  LCD_cmd_write(char  cmd){
                    PORTG  =  CMD_WRITE;            //enable  1  ->  LCD 동작  ,  RS  0  ->   인스트럭션입력
                    PORTF  =  cmd;                        //D.D.RAM 을  통한  입력  위치  설정(LINE1,2)
                    PORTG  =  PORTG^LCD_EN;      //enable  0  ->  동작  off  ,  RS  0  ->  인스트럭션입력

                    delay_ms(2);
                    if(cmd  ==  LINE2)                // 줄바꿈시  기다림  시간,,
                    delay_ms(1000);
            }



            void  LCD_data_write(char  data){
                    PORTG  =  DATA_WRITE;          //enable  1  ->  LCD 동작  ,  RS  0  ->  데이터입력
                    PORTF  =  data;                      //C.G.RAM 을  통한  단일  문자  출력
                    PORTG  =  PORTG^LCD_EN;      //enable  0  ->  동작  off  ,  RS  0  ->  데이터입력


                    if(flag==0)                          // 첫  줄  주차장  표시 상시  점등(  )
                    delay_ms(2);
                    else                                        // 둘째  줄  차량  번호  및  입 출차 한시  점등 (  -  )
                    delay_ms(400);
            }



            void  init_LCD(){                        //LCD 초기  설정


                                                         -  24  -
   18   19   20   21   22   23   24   25   26   27   28