You are on page 1of 10

Safe lpg home SOFTWARE DESCRIPTION

May 2013 Chapter-4

4.1 FLOW CHART Start

Power on

MCU send AT to GSM module

No

Is GSM module replies ok? Yes Get sensor input

Within safety level No Start alarm and send message to stored number

Yes

stop

Fig.4.1 Flow chart of the proposed system

Dept. Of ECE

SBCEW,Elavumthitta

Safe lpg home

May 2013

4.2 PROGRAM CODE #include<pic.h>

#define _XTAL_FREQ 20000000

unsigned char array_at[]={"AT\r"};

unsigned char array_cmgf[]={"AT+CMGF=1\r"};

unsigned char array_comm[]={"AT+CMGS="};

unsigned char array_mob[]={"+919447112025"};

unsigned char array_msg[]={"GAS LEAKAGE DETECTED"};

unsigned int j=0;

void usart_write_array(unsigned char array[])

for(i=0;array[i]!='\0';i++)

usart_write(array[i]);

}}

Safe lpg home

May 2013

void adc_read();

void pic_init();

void uarttx();

void gas_sensor();

unsigned char addl,addh,k=0;

void main()

pic_init();

delay(10);

uarttx();

delay(10);

usart_write_array(array_at);

delay(2000);

usart_write_array(array_cmgf);

Safe lpg home

May 2013

delay(3000);

while(1)

delay(10);

adc_read();

delay(20);

gas_sensor();

}}

void pic_init()

TRISA=0XFF;

TRISD=0X00;

TRISC=0X00;

Safe lpg home

May 2013

void uarttx()

TXSTA=0X20;

SPEN=1;

SPBRG=129;

TXEN=1;

TXIE=1;

void adc_read()

TRISA=0XFF;

ADCON0=0X81;

delay(10);

ADCON1=0X80;

Safe lpg home

May 2013

delay(10);

ADGO=1;

while(ADGO);

addh=ADRESH;

addl=ADRESL;

void gas_sensor()

if(addh>=3)

RD0=1;

for(j=0;j<1;j++)

usart_write_array(array_send);

Safe lpg home

May 2013

usart_write(0x22);

usart_write_array(array_mob);

usart_write(0x22);

usart_write(0x0d);

delay(1400);

usart_write_array(array_msg);

usart_write(0x0d);

usart_write(0x0d);

usart_write(0x0d);

delay(1000);

usart_write(0x1a);

delay(1000);

usart_write(0x1a);

delay(1000);

Safe lpg home

May 2013

usart_write(0x1a):

}}

else if(addh<3)

delay(10);

RD0=0;

}}

4.3 PROGRAM CODE EXPLANATION

Safe lpg home

May 2013

Safe lpg home

May 2013

You might also like