Aiuto richiesto GSM controllata Home dispositivi urgenti .....

T

tubaaamir

Guest
Plz help me può anybdy in collegamento erricson T29 con ATmega32 per smscontroller casa per controllare dispositivi ....!....

.. ho letto smwhere che T29 non può essere utilizzato come modem GSM ..... questo è vero?..

... Non più i hav a progettare HyperTerminal tipo di routine per MCU per ottenere sms dal telefono cellulare ...

.. e che cosa è la differenza (come modem GSM per utilizzo e AT cmd set) b / w T28 e T29

 
Hii ..

Non ho idea di T28 e T29 modem GSM ..

Citazione:

... Non più i hav a progettare HyperTerminal tipo di routine per MCU per ottenere sms dal telefono cellulare ...
 
... Plz e può darmi qualche esempio di come inviare i cmnds A alla cella utilizzando MCU ..

.. i hav a scrivere prgm in Assambly o C. ...???....

 
U programma in grado di scrivere su ATmega32 in C o in ASM entrambi lavoro ..-> You'll collegare RX (modulo) con TX (responsabile) e TX (modulo) con RX (controller)
RX e TX Questo corrisponderà a un UART

-> Per usare l'UART nella routine software u'll necessità di configurare il baud UART e inizializzarlo ..Questo indicato nella scheda di dati ..
Sebbene una migliore tutorial è qui:

http://www.avrfreaks.net/index.php...iggrin.gif" alt="Molto Felice" border="0" />
 
Ciao ...

Thnks per collegare i got it .... ....

NW, ma il mio problema è che anche se il mio cellulare (ora im utilizzando T290) risponde ok come i snd A mio tramite microcontrollori (im utilizzando ATmega32), ma di risposta non è corretta per gli altri cmds .... im utilizzando seguente codice per l'eliminazione msg dal 1 ° memo loc//////////////

# include <avr\io.h> / / La maggior parte dei file di base includono
# include <avr\interrupt.h> / /
Aggiunge il necessario quelli
# include <avr\signal.h> / / qui
# define _F_CPU 1000000UL
# include <util\delay.h>

/ / ************************************************ ***********void USART_Init (unsigned int); / / prototipo di funzione Intialization
void USART_Transmit (unsigned char); / / prototipo per la funzione di trasmissione dei dati
/ / Con un ingresso argomento
unsigned char USART_Receive (void); / / prototipo di funzione di ricezione di dati con
/ / Uno di uscita argomento

/ / ************************************************ ***********

int main (void) / / chiama la funzione principale
(
int baud = 12 / / 25 a carico UBBR ossia baudrate = 2400
unsigned char res1, ok [2], inst [12], CR, dati; / / intializing variabili di tipo char
USART_Init (baud); / / funzione chiamante Intialization
DDRB = 0x05;
PORTB = 0x00;
/ / Carriage Return
cr = 0x0D;
while (1) / / loop infinito; qui definire il sistema
/ / Comportamento
(
/ / chiama la funzione con la ricezione di dati in uscita / / memorizzati in 'risultato'
unsigned char MSinst [12] = ( 'A', 'T',' ',' C', 'P', 'M', 'S','=','"',' M', 'E ','"'};
for (int j = 0; j <= 11; j )
(
while ((UCSRA & (1 <<UDRE)) == 0);

UDR = MSinst [j];
)

/ / Carriage Return
USART_Transmit (cr);

_delay_us (100000);
_delay_us (100000);
_delay_us (100000);
_delay_us (100000);
_delay_us (100000);

unsigned char DLinst [9] = ( 'A', 'T',' ',' C', 'M', 'G', 'D','=',' 1');

for (int j = 0; j <= 8; j )
(
while ((UCSRA & (1 <<UDRE)) == 0);

UDR = DLinst [j];
)
/ / Carriage Return

USART_Transmit (cr);

while ((UCSRA & (1 <<RXC)) == 0);
ok [0] = UDR;
while ((UCSRA & (1 <<RXC)) == 0);
ok [1] = UDR;
if ((ok [0] == 'o')&&( ok [1] ==' k '))
(
PORTB = 0xFE;
_delay_us (100000);
_delay_us (100000);)
altro
PORTB = 0xFB;

_delay_us (100000);
_delay_us (100000);)

)
void USART_Init (unsigned int baud) / / definizione di funzione intialization
(
UBRRL = baud; / / invio di valore in UBRRL cioè
UCSRA = (1 <<U2X); / / Impostare il baud rate = 9600
UCSRB = (1 <<RXEN) | (1 <<TXEN); / / attivazione di ricevitore e trasmettitore bit
UCSRC = (1 <<Ursel) | (0 <<USBS) | (3 <<UCSZ0) | (0 <<UPM0);
/ / Impostazione della cornice formato:
/ / 8data bit, 2stop bit, anche la parità
)
void USART_Transmit (unsigned char dati) / / definizione di funzione di trasmissione dei dati
(
while ((UCSRA & (1 <<UDRE)) == 0); / / Attendere fino a quando il tampone viene trasmettitore
/ / Vuoto
UDR = dati; / / Mettere in buffer di dati, l'invio del
/ / Dati
)////////////PLZZZZZzz hlp.!

 
tubaaamir ha scritto:

Ciao ...Thnks per collegare i got it .... ....NW, ma il mio problema è che anche se il mio cellulare (ora im utilizzando T290) risponde ok come i snd A mio tramite microcontrollori (im utilizzando ATmega32), ma di risposta non è corretta per gli altri cmds .... im utilizzando seguente codice per l'eliminazione msg dal 1 ° memo loc//////////////# include <avr\io.h> / / La maggior parte dei file di base includono

# include <avr\interrupt.h> / / Aggiunge il necessario quelli

# include <avr\signal.h> / / qui

# define _F_CPU 1000000UL

# include <util\delay.h>/ / ************************************************ ***********void USART_Init (unsigned int); / / prototipo di funzione Intialization

void USART_Transmit (unsigned char); / / prototipo per la funzione di trasmissione dei dati

/ / Con un ingresso argomento

unsigned char USART_Receive (void); / / prototipo di funzione di ricezione di dati con

/ / Uno di uscita argomento/ / ************************************************ ***********int main (void) / / chiama la funzione principale

(

int baud = 12 / / 25 a carico UBBR ossia baudrate = 2400

unsigned char res1, ok [2], inst [12], CR, dati; / / intializing variabili di tipo char

USART_Init (baud); / / funzione chiamante Intialization

DDRB = 0x05;

PORTB = 0x00;

/ / Carriage Return

cr = 0x0D;

while (1) / / loop infinito; qui definire il sistema

/ / Comportamento

(

/ / chiama la funzione con la ricezione di dati in uscita / / memorizzati in 'risultato'

unsigned char MSinst [12] = ( 'A', 'T',' ',' C', 'P', 'M', 'S','=','"',' M', 'E ','"'};

for (int j = 0; j <= 11; j )

(

while ((UCSRA & (1 <<UDRE)) == 0);UDR = MSinst [j];

)/ / Carriage Return

USART_Transmit (cr);_delay_us (100000);

_delay_us (100000);

_delay_us (100000);

_delay_us (100000);

_delay_us (100000);unsigned char DLinst [9] = ( 'A', 'T',' ',' C', 'M', 'G', 'D','=',' 1');for (int j = 0; j <= 8; j )

(

while ((UCSRA & (1 <<UDRE)) == 0);UDR = DLinst [j];

)

/ / Carriage ReturnUSART_Transmit (cr);while ((UCSRA & (1 <<RXC)) == 0);

ok [0] = UDR;

while ((UCSRA & (1 <<RXC)) == 0);

ok [1] = UDR;

if ((ok [0] == 'o')&&( ok [1] ==' k '))

(

PORTB = 0xFE;

_delay_us (100000);

_delay_us (100000);)

altro

PORTB = 0xFB;_delay_us (100000);

_delay_us (100000);
))

void USART_Init (unsigned int baud) / / definizione di funzione intialization

(

UBRRL = baud; / / invio di valore in UBRRL cioè

UCSRA = (1 <<U2X); / / Impostare il baud rate = 9600

UCSRB = (1 <<RXEN) | (1 <<TXEN); / / attivazione di ricevitore e trasmettitore bit

UCSRC = (1 <<Ursel) | (0 <<USBS) | (3 <<UCSZ0) | (0 <<UPM0);

/ / Impostazione della cornice formato:

/ / 8data bit, 2stop bit, anche la parità

)

void USART_Transmit (unsigned char dati) / / definizione di funzione di trasmissione dei dati

(

while ((UCSRA & (1 <<UDRE)) == 0); / / Attendere fino a quando il tampone viene trasmettitore

/ / Vuoto

UDR = dati; / / Mettere in buffer di dati, l'invio del

/ / Dati

)
////////////
PLZZZZZzz hlp.!
 
movie_freak ha scritto:

U programma in grado di scrivere su ATmega32 in C o in ASM entrambi lavoro ..
-> You'll collegare RX (modulo) con TX (responsabile) e TX (modulo) con RX (controller)

RX e TX Questo corrisponderà a un UART-> Per usare l'UART nella routine software u'll necessità di configurare il baud UART e inizializzarlo ..
Questo indicato nella scheda di dati ..

Sebbene una migliore tutorial è qui: http://www.avrfreaks.net/index.php...biggrin.gif" alt="Molto Felice" border="0" />
 

Welcome to EDABoard.com

Sponsor

Back
Top