code to interface gsm with microcontoller
TRANSCRIPT
-
7/23/2019 Code to interface GSM with microcontoller
1/4
#include#define port P2#define dataport P0 // Data port for LCDsbit rs = port^5;sbit rw = port^6;sbit en = port^7;//sbit pi= port^3;int count=0,i,j=0,k=0;//unsigned char check,str_cz[2]={0x1A,'\0'};unsigned char str[15],str_index[10];
//bit check_space ;
void init_serial() // Initialize serial port{ TMOD=0x20;
TL1=0xfd; // Mode=2TH1=0xfd; // 9600 baudSCON=0x50; // Serial mode=1, 8-Bit data, 1 Stop bit, 1 Start bit,
Receiving onTR1=1; // Start timer
}void delay(unsigned int msec ) // Function for delay
{ int i,j ;for(i=0;i
-
7/23/2019 Code to interface GSM with microcontoller
2/4
delay(10);}
return; }
void lcd(){ lcd_cmd(0x38); // For using 8-bit 2 row LCD
delay(5);lcd_cmd(0x0F); // For display on, cursor blinking
delay(5); lcd_cmd(0x80); // Set the cursor on first position of lcd delay(5);
}void transmit(unsigned char *str){
int i=0;while(str[i]!='\0'){
EA=0; SBUF = str[i]; while(TI!=1); delay(1);
i++; EA=1; }}
void transmit1(unsigned char str){ SBUF=str; while(TI!=1); TI=0;}void receive_data() interrupt 4 // Function to recieve data serialy from RS232 into microcontroller
{
if(RI==1){ str[++count]=SBUF; //Read SBUF
if(str[count-1]==','|| (k=1) ) { str_index[j]=str[count]; j++; k=1; }
RI=0;// k=1;
}}
/*unsigned char byte_check() //Function to check carraige return and new line character{ switch(str[0])
{case 0x0a:
-
7/23/2019 Code to interface GSM with microcontoller
3/4
{ // Return 0x00 for new linereturn 0x00;
break ; }
case 0x0d:{ // Return 0x01 for carriage return
return 0x1;break ;}
default:
return 0x02 ; // Return 0x02 for characters except new line and c
arriage return } } */void main(){//unsigned char cz; lcd(); // Initialize LCD init_serial(); delay(400); // Initialize serial port
lcd_data_string("sending msz"); delay(100); //lcd_data('a'); //delay(10); //lcd_cmd(0xc0); count=(-1); //lcd_data_string("Ready...123"); //delay(10);
lcd_cmd(0xc0);IE=0x94;
// cz=0x1A;//transmit("AT\rAT+CMGF=1\rAT+CMGS=\"+9779841540672\"\rTest Message 123");
//transmit(str_cz);
//delay(40);ES=0;transmit("AT+CMGF=1\r");delay(1000);//transmit("AT+CSCS=\"GSM\"\r");//delay(400);//transmit("AT+CSCA=\"+97798........\",145\r"); //service center no//delay(400);//transmit("AT+CSMP=17,167,0,240\r"); //text mode format//delay(400);transmit("AT+CMGS=\"+97798..........\"\r");//my mob number here
//delay(400);transmit("Test Message 123");//delay(400);transmit(0x1A);lcd_data_string("msz sent");delay(1000);ES=1;//pi=0;
-
7/23/2019 Code to interface GSM with microcontoller
4/4
}