Potrebe koda za pošiljanje AT ukazov za PDU format SMS

A

amila133

Guest
Sem mogel, da pokličete telefonsko z uporabo PIC.Moj telefon podpira samo za format PDU.Študiral sem o formatu PDU in sem poslal SMS z HyperTerminala v PC preko serijskega porta.

Toda, ko sem se uporabljajo isto metodologijo v PIC ne deluje.

Potrebujem nekaj kode na primer narediti it.If ste prosimo, pošljite.To je moja koda.

Koda:int i = 0;

int j = 0;
neveljaven Glavni () (const char nepodpisani para [3] = "AT";

const char nepodpisani pdumode [10] = "AT CMGF = 0"; / / select PDU način (o je podana, 1 je podan za tekstovni način)

const char nepodpisani dial [17] = "ATD0716530115; \ r \ n";

const char nepodpisani tpdu_length [11] = "AT CMGS = 16"; / / dolžina sporočila

const char nepodpisani message1 [47] = "069149170000F311000B914917560311F50000AA02C822"; / / sporočilo

nepodpisani kratkem prejeli;

/ / ToPDU ("To je enostavno pošiljanje sms sporočil", pošlje);Usart_Init (9600);

TRISB = 0;

PORTB = 0;while (1) (for (i = 0; i <3; i ) (

Usart_Write (para ); / / tip na

Delay_ms (200);

)

Usart_Write (0x0D);

if (Usart_Data_Ready ()) (

PORTB = 1;

Delay_ms (4000);

PORTB = 0; / / iz pdumode

for (i = 0; i <10; i ) (

/ / If (Command1 == '\ 0') break;

Usart_Write (pdumode );

Delay_ms (200);

)

Usart_Write (0x0D);

if (Usart_Data_Ready ()) (

PORTB = 1;

Delay_ms (4000);

PORTB = 0;

for (i = 0; i <11; i ) (

/ / If (Command1 == '\ 0') break;

Usart_Write (tpdu_length ); / / dolžina sporočila

Delay_ms (200);

)Usart_Write (0x0D); / / enter

if (Usart_Data_Ready ()) (

PORTB = 1;

Delay_ms (4000);

PORTB = 0;

for (i = 0; i <47; i ) (/ / pošlji sporočilo

/ / If (Command1 == '\ 0') break;

Usart_Write (message1 );

Delay_ms (200);

)

PORTB = 1;

Delay_ms (500);

PORTB = 0;Usart_Write (26); / / ctrl z

PORTB = 1;

Delay_ms (7000);

PORTB = 0;

if (Usart_Data_Ready ()) (
for (i = 0; i <17; i ) (/ / klic res začenja

if (dial == '\ 0') break;

Usart_Write (dial );

Delay_ms (200);

)PORTB = 1;

Delay_ms (1000);

PORTB = 0;))

)

)

)

)

 
ZZZS Amila,

Kaj phonecell uporabljate?

Mislim, da si pozabil, da zaprete AT Command s prevozom vračanja.

Primer:

Za pošiljanje AT morate poslati => "AT" char (0x0D) (ta prevoz vrnitev znak).Če je vaša povezava je v redu, potem cellphone vam bo poslal "OK" znak.Mislim, da morate preveriti to znak najprej preveriti povezavo z uporabo volitve METHODE ali prekinejo METHODE.

za pošiljanje SMS s PDU Mode ==> "AT CMGF = 5" char (0x0D) (pošiljanje 5 znakov).Če je ukaz pravilen, se bo cellphone odgovor z naravo ">" ali char (0x13).Zato morate preveriti to znak, preden jih pošljete PDU format.Na koncu format PDU morate dodati CTRL-Z ali CHR (26).

Imam vzorec program za 8051 v C (I nikoli ni uporabljal PIC prej).če boste potrebovali, bom poslal.

Upanje to pomoč.

Deny (Bodat'z)

 
Najlepša hvala za vaš odgovor.
Sem storil tisto, kar ste rekli.
ko sem pošiljanje sporočil prek HyperTerminala je OK Ko pa senda iz PIC kaže CMS NAPAKA: 304.

Pravkar sem povezan telefon PIC
TX (PIC) -> RX (Phone)
RX (PIC)) -> TX (Phone)
GND (PIC) -> GND (Phone)
s tem povezave vsemi drugimi ukazi v redu, vključno z command.It dial postane napaka le za SMS.

Lahko pošljete svoj program in vezje diagram.Hvala

 
Mislim, morate pretvoriti med TTL in RS232 logično napetosti ravni.PIC uporablja 5V, medtem ko je telefon verjetno uporabe 3v3 ali 2v7 napetostni nivo.Lahko uporabite Zenner diod ali čip iz maxim (max232).
Če se motim, prosim nekdo me popravi

 
Hi,

I did it z uporabo MAX232.Vendar to ne deluje.Brez morem MAX232 storiti vse ukaze uspešno, razen pošiljanje SMS (v PDU načinu). (Napaka je CMS 304).Morem spodbuda SMS s HyperTerminala ne v PIC.

Mimo.

 
Sem tudi delo na podoben projekt, rabim mikrokrmilnik, da naroči telefon za pošiljanje SMS po odkritju vdora, i nitially sem imel at89c51 in je celo napisal kodo, vendar sem izgubil, zdaj sem samo ob pic16f84, vendar nimajo oznake za to lahko kateri koli pomoč pliz?
hvala vnaprej

 
Hi Amila,

Rekel si, da bi manaded klica z AT ukazi.Ali ste poslali AT ukaz mikro krmilnik.Če je temu tako prosim pomoč mi jasno, kako si to Didi.jaz sem tudi poskušal / propadajoče z isti projekt.

Hvala

 
Stvar, da ne pozabite:pC ----> za Max232 = Non Inverted
PIC ---> za Max232 = Inverted
PIC ---> za Max232 za Max232 = Non Inverted

itd.

Ne trudi se z žico, uporabite Bluetooth modul Če želite komunicirati z telefonVeliko protokola podprla, ex: Dun, MAP, etcupanje to pomoč

 
@ The_balistic
moči u izročiti ac Kodo vzorca za 8051 in diagram hočem delati na povezovanje in pošiljanje sms z uporabo mikrokrmilniška 8051 ur, tako kodo mi začetno točko
zahvala u

 

Welcome to EDABoard.com

Sponsor

Back
Top