Page 196 - 2
P. 196

char three, two, one, four;
            void wind();
            void windstrong();
            void windweek();
            void windmiddle();
            void AppInventor();
            void stop();
            void temData();
            void init_LCD();
            void LCD_KEY_DISP();
            void LCD_String(char flash str[]);
            void LCD_TEMDATA();
            void sleepmode();
            void ADC_fan();
            void LCD_cmd_write(char cmd) // LCD   의 기능 수행을 위한 함수
            {
                PORTG = CMD_WRITE; // LCD E(Enable)=1, RS=0        기능 선택
                PORTC = cmd; //   기능 입력 기능 수행.
                PORTG = PORTG^LCD_EN; // LCD E(Enable)        해지
                delay_ms(2);
            }
            void LCD_data_write(char data) // LCD 의 문자 표현 수행을 위한 함수
            {
                PORTG = DATA_WRITE; // LCD E(Enable)=1, RS=1        문자 표현 선택
                PORTC = data; //  문자 입력
                PORTG = PORTG^LCD_EN; // LCD E(Enable)        해지
                delay_ms(2);
            }
            void LCD_String(char flash str[]) //  문자열을 받아 한문자씩 표시하도록 하는 함수
            {
                char flash *pStr = 0;
                pStr = str;
                while(*pStr) LCD_data_write(*pStr++); //  내용이 없을 동안 문자 표현 함수를 호출
            }
            void system_init()
            {
                DDRE=0x0f;
                DDRA=0xff;
                DDRF=0x00;
                DDRB=0xff; // 모터
                DDRD=0x00; //  인터럽트
                DDRC=0xff; //LCD
                DDRG=0xff; //LCD
                EIMSK=0b01111111;
                EICRA=0b10101010;


                                                         - 196 -
   191   192   193   194   195   196   197   198   199   200   201