By using GSM SIM 300M and Atmega8 , i am facing a problem in sending SMS to a Persons on making any one of the port pin gets high (ExB0=1)
"Requirement" is just to send the SMS to 1 persons , when PB0 pin gets high.For an instance its directly given from the Vcc=5V as pulse for certain duration
Have a look at dis code , Plz suggest me any modification ,eager waiting for ur reply ........
#include <avr/io.h>#include <util/delay.h>#include <avr/interrupt.h>#define F_CPU 12000000UL#define USART_BAUDRATE 9600 // Baud Rate value#define BAUD_PRESCALE (((F_CPU / (USART_BAUDRATE * 16UL))) - 1)#define PIN PB0void usart_putstr(char* s);void usart_init();staticvoid usart_putch(unsignedchar send);unsignedint usart_getch();void init_Ports(void);int main (){
DDRD|=0xFC;//Setting the Tx and Rx Pins Low
DDRB =0x00;//Setting the PortB as input port while(1){
init_Ports();while(PIN==0);//program will loop in this line itself only until the pin become logic high
usart_init();// initialization of USARTchar b[]="AT+CMGS=";char no[]="+918000000000";char body[]="Got the Output";{
usart_putstr(b);
_delay_ms(100);
usart_putch('"');
usart_putstr(no);
_delay_ms(100);
usart_putch('"');
_delay_ms(100);
usart_putch('\r');
usart_putch('\n');
_delay_ms(100);
usart_putstr(body);
_delay_ms(100);
usart_putch(0x1A);}return0;}}void usart_init(){
UBRRL =0x0077;
_delay_ms(1);
UCSRB |=(1<< RXEN)|(1<< TXEN);// Turn on the transmission and reception circuitry
UCSRC |=(1<< URSEL)|(1<<USBS)|(1<< UCSZ0)|(1<< UCSZ1);// Use 8-bit character sizes}unsignedint usart_getch(){while(!(UCSRA &(1<< RXC)));// Do nothing until data has been received and is ready to be read from UDR
_delay_ms(1);return(UDR);// return the byte}staticvoid usart_putch(unsignedchar send){while((UCSRA &(1<< UDRE))==0);// Do nothing until UDR is ready..// for more data to be written to it
UDR = send;// Send the byte}void usart_putstr(char* s){while(*s){
usart_putch(*s++);}}void init_Ports(void){
cli();//disable all interrupts
DDRB =0x00;//port B as input
sei();//reanable all interrupts}
Knowing the fact that such type of discussion is already been done , i have gone through all them , but dint find the way to get-out of my problem ....