پاسخ : GSM و ارتباط آن با AVR
:smile:
:smile:
#asm .equ __lcd_port=0x1B ;PORTA #endasm #define enter 0x0d #define ctrl_z 0x1a char sms_text[100]=""; flash char at_cmgr[]= {'A','T','+','C','M','G','R','=','1','\r'}; void wait_to_get(char ch){ while(ch != getchar()); } void main(void){ PORTA=0x00; DDRA=0xFF; PORTD=0x00; DDRD=0x00; // USART initialization // Communication Parameters: 8 Data, 1 Stop, No Parity // USART Receiver: On // USART Transmitter: On // USART Mode: Asynchronous // USART Baud Rate: 9600 UCSRA=0x00; UCSRB=0x18; UCSRC=0x86; UBRRH=0x00; UBRRL=0x47; lcd_init(16); while (1){ lcd_putsf("START"); delay_ms(1000); lcd_clear(); if(PIND.7==1){ putsf(at_cmgr); putchar(enter); wait_to_get('>'); printf("%s%c",sms_text); lcd_gotoxy(0,1); lcd_putsf("MASSAGE RECEVIE"); delay_ms(3000); lcd_clear(); }//EXT.CRYSTAL=11.0592 } }
#asm .equ __lcd_port=0x1B ;PORTA #endasm #define enter 0x0d #define ctrl_z 0x1a char sms_text[100]=""; flash char at_cmgr[]= {'A','T','+','C','M','G','R','=','1','\r'}; void wait_to_get(char ch){ while(ch != getchar()); } void main(void){ PORTA=0x00; DDRA=0xFF; PORTD=0x00; DDRD=0x00; // USART initialization // Communication Parameters: 8 Data, 1 Stop, No Parity // USART Receiver: On // USART Transmitter: On // USART Mode: Asynchronous // USART Baud Rate: 9600 UCSRA=0x00; UCSRB=0x18; UCSRC=0x86; UBRRH=0x00; UBRRL=0x47; lcd_init(16); while (1){ lcd_putsf("START"); delay_ms(1000); lcd_clear(); if(PIND.7==1){ putsf(at_cmgr); putchar(enter); wait_to_get('>'); printf("%s%c",sms_text); lcd_gotoxy(0,1); lcd_putsf("MASSAGE RECEVIE"); delay_ms(3000); lcd_clear(); }//EXT.CRYSTAL=11.0592 } }
دیدگاه