PROTON ve TC35 modem

Başlatan dombilik, 05 Aralık 2011, 21:51:34

dombilik

Arkadaşlar elimde TC35 modem kit var.
Gönderdiğim "AT" komutuna OK mesajı alıyorum.
Fakat ATD ile bir numarayı aradığımda NO DIALTONE uyarısı alıyorum.Bu uyarı durumunda
ATX2 veya ATX4 şekline ayarlayın diyor TC35 AT komut seti pdf sinde..
ATX2 de veya ATX4 de yine aynı oluyor bir numara aradığımda yine aynı uyarı geliyor.
Mesaj göndermede;
AT+CMGF=1
OK
AT+CMGS="tel no"
>mesaj metni
komutunu gönderdiğimde bir süre sonra
ERROR hatası veriyor.
MODEM e "ATO0" komutu verdiğimde ise NO CARRIER uyarısı alıyorum.
Denemelerimi HYPER TERMINAL den yapıyorum.
Not:Modem in IMEI numarasında sıkıntı yok.Pasaporta işleterek legal hale getirildi.
Şimdiden yardımlarınız için teşekkürler
Bildiklerini kime miras bıraktın?kimseyemi? O zaman bildiklerinin ne önemi kalır. ******** /////////// ******** PROTON-ASM PROTEUS 7.4 SP3 EAGLE 5.40

isikyasar

merhaba,

HYPER TERMINAL den bağlandığınızda ilk olarak     AT yazıp enterlediğinde cevap olarak OK komutu geliyormu?

Eğer OK komutu geliyorsa büyük bir ihtimal cihazın kayıtlı değildir. şebeke sorunu vardır.

bu konuda teknik bilgiye ihtiyacın varsa                    isik_yasar@hotmail.de

dombilik

Yanlış IMEI numarası işlenmiş sisteme.
Şu an onay alma aşamasında.Bekliyorum..
AT komutu verdiğimde OK alıyorum..
İlginize teşekkürler.
Bildiklerini kime miras bıraktın?kimseyemi? O zaman bildiklerinin ne önemi kalır. ******** /////////// ******** PROTON-ASM PROTEUS 7.4 SP3 EAGLE 5.40

Murat Mert

S.A.
AT+CREG?  YAZIP ENTERE BASINCA NE ÇIKIYOR EĞER:

CREG 0,0 İSE HAT AÇIK DEĞİL
CREG 0,1 İSE AÇIK

BİRDE SİM KARTI ŞİFRESİZ OTOMATİK AÇILACAK ŞEKİLDE AYARLA.
mert07

dombilik

Alıntı yapılan: mert07 - 10 Aralık 2011, 17:33:32
S.A.
AT+CREG?  YAZIP ENTERE BASINCA NE ÇIKIYOR EĞER:

CREG 0,0 İSE HAT AÇIK DEĞİL
CREG 0,1 İSE AÇIK

BİRDE SİM KARTI ŞİFRESİZ OTOMATİK AÇILACAK ŞEKİLDE AYARLA.

Hocam çalışır hale geldi..
Bahsettiğiniz kontrolü yaptım.Hat açık..
Şu an arama ve mesaj fonksiyonlarını kullanabiliyorum.
Şimdi sıra PIC üzerinden ulaşmaya geldi.
Bildiklerini kime miras bıraktın?kimseyemi? O zaman bildiklerinin ne önemi kalır. ******** /////////// ******** PROTON-ASM PROTEUS 7.4 SP3 EAGLE 5.40

Murat Mert

işe yaradığına sevindim hserout ile işlere başla arkadaşım. :D  kolay gelsin
mert07

isikyasar

devreyi kurduğunda çalışma olayını bizimlede paylaşırsan bizlerde faydalanmış oluruz.
şimdiden kolay gelsin.

dombilik

Arkadaşlar;
İlk denemelerimi yaptım.Çağrı yapma yada çağrı alma ile ilgili bir çalışmam olmadı zira
mesaj alma ve okuma,mesajdan belli kesitleri koparıp alma,bu değerleri sabit değerler ile mukayese etme,
mukayese sonrası ilgili işi yaptırma ve mesaj atma idi önceliklerim.
MESAJ_OKU:
                For k=0 To 1                                                 'Aşağıdaki işlemleri iki kere yapıyorum
                HSerOut ["AT",13]
                HSerIn 100,PROBLEM,[Wait("OK")]              'Cihaz normal
                HSerOut ["AT+CMGF=1",13]    
                HSerIn 100,PROBLEM,[Wait("OK")]              'text moduna alındı
                HSerOut ["AT+CMGR=1",13]                        'ilk mesaj
                HSerIn 250,PROBLEM,[Wait("+CMGR: ")]     'İlk mesaj alınıyor  
                HSerIn 500,PROBLEM,[Str TEXT]                  'mesaj TEXT stringine aktarılıyor
                HSerIn [Wait("OK")]
                CODE_TEXT=Mid$(TEXT,53,13)                   'değerlendirdiğim asıl mesaj metni
                TEL_NUMBER=Mid$(TEXT,13,13)                 'mesajın geldiği numara
                Print At 2,1,Str CODE_TEXT
                Print At 3,1,Str TEL_NUMBER
                Next k
                ....
                ....
                If CODE_TEXT=CODE_TEXT_1 Then         'mesaj metni bellekteki ile karşılaştırılıyor
                    Print At 1,1,"Role 1=ON"
                    HSerOut ["AT",13]
                    HSerIn [Wait("OK")]                             'Cihaz hazır
                    HSerOut ["AT+CMGF=1",13]                 'text moduna alınıyor
                    HSerIn [Wait("OK")]
                    HSerOut ["AT+CMGS=",Str TEL_NUMBER,13] 'Mesajın geldiği numaraya
                    HSerIn [Wait(">")]
                    HSerOut ["Role-1=ON",26,13]                      'Geri bilgi yine mesaj yolu ile gönderiliyor.
                    HSerIn [Wait("OK")]
                    GoSub MESAJ_SIL                                        'Sim karttaki mesaj siliniyor
                    Else
                    EndIf
                    ....
                    ....
MESAJ_SIL: 
                HSerOut ["AT+CMGF=1",13]         
                HSerIn 250,PROBLEM,[Wait("OK")]      'Cihaz hazır
                HSerOut ["AT+CMGD=1",13]    
                HSerIn 250,PROBLEM,[Wait("OK")]      'Sim karttaki mesaj silindi
                Return


Bu alel acele yapılmış bir deneme uygulaması oldu.Program daha net bir şekil'e bürünecek.
Ama genel hatları ile kodları vermeye çalıştım.
Bu arada hatalarım varsa eleştirilerinizi bekliyorum.
Yardımlarınızdan dolayı hepinize çok teşekkürler..
Bildiklerini kime miras bıraktın?kimseyemi? O zaman bildiklerinin ne önemi kalır. ******** /////////// ******** PROTON-ASM PROTEUS 7.4 SP3 EAGLE 5.40

isikyasar

kodun tamamını paylaşırmısın?

devreyi kurup denedinmi?

dombilik

Devre,kendi tasarladığım bir deney seti.Dolayısı ile
ADC,DAC ve I2C gibi bu uygulamada kullanmadığım bir çok
bölüm ve bunlara ait tanımlamalar var program
ın başında.Karmaşık görünmesin diye o bölümleri koymamıştım.
Bildiklerini kime miras bıraktın?kimseyemi? O zaman bildiklerinin ne önemi kalır. ******** /////////// ******** PROTON-ASM PROTEUS 7.4 SP3 EAGLE 5.40

isikyasar

bende yapmayı düşünüyorum. Hserin- Hserout tanımlamalarını kullanmayı pek bilmiyorum. tanımlamalarda bana yardımcı olurmusun.

dombilik

Tanımlamalarda kullandığım ayarlar;
Declare Hserial_Baud = 9600        
Declare Rsout_Mode 0 
Declare Serial_Baud 9600
#define  HSER_RCSTA %10010000
#define HSER_TXSTA %00100000
#define HSER_CLROERR 1
Dim TEXT As String *64   
Dim CODE_TEXT As String *13  
Dim CODE_TEXT_1 As String *13
Dim CODE_TEXT_2 As String *13
Dim CODE_TEXT_3 As String *13
Dim CODE_TEXT_4 As String *13
Dim CODE_TEXT_5 As String *13
Dim CODE_TEXT_6 As String *13
Dim CODE_TEXT_7 As String *13
Dim CODE_TEXT_8 As String *13   
Dim TEL_NUMBER As String *13


Kontrolör olarak 18F4520 ve 20 MHz kristal kullanıyorum.HSERIN ve HSEROUT komutlarının kullanımı
konusunda ise kısaca;
HSerOut ["AT+CMGF=1",13]    
HSerIn 100,PROBLEM,[Wait("OK")]


Yukarıdaki HSEROUT ["AT+CMGF=1",13]
"AT+CMGF=1" ifadesi text olarak gönderilir kısaca her karaktere karşılık gelen ASCII kodu gönderilmektedir.
"13" ifadesi ise RETURN tuşunun karşılığı değerdir.
Bu komut satırı modeme gönderildiğinde geri dönen cevabın "OK" şeklinde olması gerekir.
HSerIn 100,PROBLEM,[Wait("OK")]
Bu komut satırında ise "OK" karakterleri alınıncaya kadar beklemede kalınır."OK" karakterinin gelmesi ile alt satırdan program çalışmasına devam eder.
Şayet 100 mSec içinde bu karakterler gelmez ise "PROBLEM" adlı etikete dallanılır.

Buradaki HSERIN ve HSEROUT komutları kısaca anlatmak gerekirse bu şekilde çalışıyor.
PROTON un helpinde ve forumda bol miktarda bu komutlarla ilgili rutinlerde bulabilirsiniz.Farklı kullanım şekilleri mevcut.

Kolay gelsin.


Bildiklerini kime miras bıraktın?kimseyemi? O zaman bildiklerinin ne önemi kalır. ******** /////////// ******** PROTON-ASM PROTEUS 7.4 SP3 EAGLE 5.40

isikyasar

kodları protondamı yazıyorsun?

dombilik

Evet PROTON da yazıyorum.Bundan dolayı konuyu bu topic te  açtım.
Bildiklerini kime miras bıraktın?kimseyemi? O zaman bildiklerinin ne önemi kalır. ******** /////////// ******** PROTON-ASM PROTEUS 7.4 SP3 EAGLE 5.40