Page 316 - MDP2020-3
P. 316

310
                      |    인천전자마이스터고등학교  ·············································································································

            2.  소프트웨어



            -  기존의  엘리베이터  코드를  이용하여  RFID  태그를  서버에  연동하는  코드를  작성했습니다.


            #include  <mega2560.h>

            #include  <stdio.h>
            #include  <delay.h>
            #include  <lcd.h>
            #include  <string.h>


            #asm

                    .equ  __lcd_port  =  0x15  //PORTC로  lcd를  사용하기  위해  선언
            #endasm


            eeprom  unsigned  char  status[7]  =  {0,0,0,0,0,0,0};



            //B1,B2,B3,W1,W2,W3  주차상태
            //전원을  껏다가  켜도  원래의  상태를  저장  해  놓기  위해서  eeprom  변수를  사용


            unsigned  char  place  =  0;  //현재  주차중인  장소
            unsigned  char  c,i;  //USART  수신  시  배열  값을  증가시켜  주는  변수

            unsigned  char  vb[2]  =  {0,  };  //vb에서  받은  값을  저장하는  배열
            unsigned  char  data[9]  =  "                  ";  //RFID  태그를  읽은  값을  저장하는  배열
            unsigned  char  pressed_key  =  0;  //주차  위치를  담는  변수  B1,B2,B3,W1,W2,W3  =
            7,2,3,4,5,6
            unsigned  char  lcd  =  0;  //메인  while에서  lcd함수를  한번만  실행시키기  위한  변수



            interrupt  [USART0_RXC]  void  recdat0(void)  //USART0의  수신  인터럽트
            {
                vb[i]  =  UDR0;  //UDR0에  있는  문자를  vb  배열의  i  위치에  저장
                i++;                    //i  값을  증가

            }


            interrupt  [USART1_RXC]  void  recdat1(void)  //USART1의  수신  인터럽트
            {
                data[c]  =  UDR1;  //UDR1에  있는  문자를  data  배열의  c위치에  저장

                c++;                        //c값을  증가
            }


            void  USART0_Tx(unsigned  char  send)  //USART0  송신  함수
            {
   311   312   313   314   315   316   317   318   319   320   321