سلام - با ماژول sim900 میتونم اس ام اس دریافت کنم ولی به همراه اس ام اس یکسری چیزای اضافی مثل تاریخ و ساعت میان که من نمیخوام اینها ظاهر بشن - در واقع متن اصلیمو میخوام - من میخوام یک رله رو روشن خاموش کنم بنابراین باید به متنی که با گوشی به ماژولم فرستادم دسترسی داشته باشم ولی تاریخ و ساعت و ... مزاحمت ایجاد میکنن<br>این کدیه که آقای رحیمی زحمتشو کشیده ولی نمیتونم اصلاحش کنم<br>ممنون میشم یه نفر راهنماییم کنه که چطور به متن اصلی اس ام اس دسترسی داشته باشم
کد:
#include <mega8.h>#include <delay.h>
#include <alcd.h>
#include <stdio.h>
void main(void)
{
char Enter=13;
char sms[250];
char B;
char k=0;
int j=0;
int i=0;
for (k=0;k<250;k++)
{
sms[k]=0;
}
DDRB=(0<<DDB7) | (0<<DDB6) | (0<<DDB5) | (0<<DDB4) | (0<<DDB3) | (0<<DDB2) | (0<<DDB1) | (0<<DDB0);
PORTB=(0<<PORTB7) | (0<<PORTB6) | (0<<PORTB5) | (0<<PORTB4) | (0<<PORTB3) | (0<<PORTB2) | (0<<PORTB1) | (0<<PORTB0);
DDRC=(0<<DDC6) | (0<<DDC5) | (0<<DDC4) | (0<<DDC3) | (0<<DDC2) | (0<<DDC1) | (0<<DDC0);
PORTC=(0<<PORTC6) | (0<<PORTC5) | (0<<PORTC4) | (0<<PORTC3) | (0<<PORTC2) | (0<<PORTC1) | (0<<PORTC0);
DDRD=(0<<DDD7) | (0<<DDD6) | (0<<DDD5) | (0<<DDD4) | (0<<DDD3) | (0<<DDD2) | (0<<DDD1) | (0<<DDD0);
PORTD=(0<<PORTD7) | (0<<PORTD6) | (0<<PORTD5) | (0<<PORTD4) | (0<<PORTD3) | (1<<PORTD2) | (0<<PORTD1) | (0<<PORTD0);
UCSRA=(0<<RXC) | (0<<TXC) | (0<<UDRE) | (0<<FE) | (0<<DOR) | (0<<UPE) | (0<<U2X) | (0<<MPCM);
UCSRB=(0<<RXCIE) | (0<<TXCIE) | (0<<UDRIE) | (1<<RXEN) | (1<<TXEN) | (0<<UCSZ2) | (0<<RXB8) | (0<<TXB8);
UCSRC=(1<<URSEL) | (0<<UMSEL) | (0<<UPM1) | (0<<UPM0) | (0<<USBS) | (1<<UCSZ1) | (1<<UCSZ0) | (0<<UCPOL);
UBRRH=0x00;
UBRRL=0x33;
lcd_init(16);
lcd_clear();
lcd_gotoxy(0,0);
printf("ATE0%c",Enter);
lcd_putsf("Get sms...");
delay_ms(1000);
lcd_clear();
// Global enable interrupts
#asm("sei")
while (1)
{
if(PIND.2==0)
{
printf("AT+CMGR=1%c",Enter);
while(j==0)
{
B=getchar();
switch(B)
{
case 0:
break;
case 10:
if(sms[0]!=0)
{
j=1;
}
break;
case 13 :
if(sms[0]!=0)
{
j=1;
}
break;
default:
sms[i]=B;
i++;
}
}
lcd_puts;
delay_ms(500);
}
}
}

