Page 472 - 완) I MDP 프로젝트 작품 보고서(전체과 1학년)1.6
P. 472

(b)  입력부
            리미트  스위치의  입력을  받아  송신  부분에  ‘0’을  보낼  것인지  ‘1’을  보낼  것인지를  판단

            한다.
            (리미트  스위치가  눌려져  있을  경우(잠금)  :  1,  리미트  스위치가  떼졌을  경우(잠금  해제)  :

            0)


            (b)  송신부

            리미트  스위치의  입력에  따라  ‘0’  또는  ‘1’을  보낸다.  리미트  스위치가  눌려진  후  어플리
            케이션에  자전거를  등록한  뒤  안전한  상태면  ‘0’을  보내고  있다가,  만약에  자전거가  도난

            을  당했다면  ‘1’이라는  신호를  보내서  스마트폰  상단바에  알림이  뜨게  만든다.




            나)  Source  Program
            ①  ATmega128  소스  (C언어)



            #include  <mega128.h>

            #include  <delay.h>

            unsigned  char  rx=0,tx=2;
            int  flag=2;




            interrupt  [USART0_RXC]  void  RX_interrupt(void)

            {
                rx=UDR0;                  //UDR0에  들어있는  수신  받은  값을  rx변수에  입력

                if  (rx  !=  0x00  &&  rx !=  0xf8)

                    flag=rx;                  //flag변수에  쓰레기  값이  들어오지  않도록  설정
                if  (flag==2)  flag=0;               //flag를  판별해  flag값  재설정

                if  (flag==0x06)  flag=1;            //flag를  판별해  flag값  재설정

                                             //flag값이  0이면  암호  해제상태,  1이면  잠금상태
            }




            interrupt  [USART0_DRE]  void  TX_interrupt(void)
            {






                                                         -  465  -
   467   468   469   470   471   472   473   474   475   476   477