# Native Code > برنامه نویسی موبایل >  مشکل در ارسال sms با at command

## quiet_buzz

سلام
سوالی در مورد At command داشتم ازتون
من k750 دارم و در هایپرترمینال دستورات زیر رو وارد میکنم:



at+cmgf=0
OK
at+cmgs=14
> 0031000B819021425224F50000FF00

اما هیچ پاسخی دریافت نمیکنم
چرا؟
مکان نما به ابتدای آخرین خط میره (یعنی >) و فقط می تونم دوباره بنویسم.
پیامی هم  شماره وارد شده دریافت نمیکنه.
علت چی هست؟
ممنون میشم راهنمایی کنید

----------


## quiet_buzz

ضمنا من در هایپرترمینال ارتباط زیر رو ایجاد میکنم:

COM6 ، Baudrate=9600 , Parity = None,StopBits=1,DataBits = 8


مشکل از کجا هست؟

----------


## quiet_buzz

ضمنا من ارسال اس ام اس رو با برنامه مشابه تست کردم، از پورت های 3، 4 و 6 می تونستم اس ام اس ارسال کنم!!!
وضعیت پورتهای من قبل و بعد از اتصال به صورت زیر هست:

قبل


بعد

----------


## noorsoft

شما باید آخر PDU کلید های Ctrl + Z را هم وارد کنید تا اس ام اس ارسال بشه

----------


## quiet_buzz

اوه...
بله
ممنون از راهنماییتون
درست شد

----------


## quiet_buzz

یک سوال دیگه در مورد مطلبی که در پست *PDU Encoding And Decoding ارائه کرده بودید دارم.
رشته 

*079189390500410011000B819053214365F70000FFباید به چه شکل ارائه بشه؟

آیا به شکل زیر باید از اون استفاده کرد؟

at+cmgf=0
ok
at+cmgs=14
>079189390500410011000B819053214365F70000FFاگر اینطوری باشه خطای 304 میده که یعنی فرمت PDU نادرست هست.
البته فکر میکنم مشکل از at+cmgs=14 باشه، یعنی طول نادرستی بهش دادم
اما نمیدونم این طول رو به چه شکلب باید حساب کنم. پست PDU Encoding And Decoding 			‏  			رو هم خوندم اما درست متوجه نشدم. 
ممنون میشم اگر توضیح بدید و برای این نمونه مقداری که باید جایگزین کنم رو با توضیح بگید چی هست.
مرسی

----------


## noorsoft

محاسبه طول PDU کاملا تو تاپیک گفته شده و بسیار روان و ساده است لطفا یکبار دیگه این قسمت را بخونین اگه متوجه نشدین تو همون تاپیک پست بدین تا مطالب پشت سر هم باشه

----------


## quiet_buzz

مثلا من میخوام پیام سلام رو به شماره 09121234567 ارسال کنم

PDU میشه

0011000B819021214365F70008AA080633064406270645

at+cmgs با محاسبات من باید بشه 23-8 یعنی 15 ولی درست نیست. ظاهرا 22 درسته. چرا؟ میشه توضیح بدید

----------


## quiet_buzz

فکر کنم متوجه شدم. اگر شماره مرکز پیام در PDU باشه باید بشه 23-8 اما اگر نباشه میشه 23-1  :چشمک:

----------


## noorsoft

روش محاسبه طولPDU بطور کامل در تاپیک PDU گفته شده

----------


## coloory

سلام

من هم مشکل دارم 
من این کد رو بهش میدم ارور میده 

at+cmgs=0912xxxxxxx
salam<Ctrl+Z 
میزنم
ارور میده +CMS ERROR: 500

چیکار باید بکنم ؟؟؟ :گیج:

----------


## noorsoft

این خطا وقتی رخ میده که اعتبار سیم کارت شما تمام شده یا شماره موبایل شما معتبر نباشد

----------


## coloory

> این خطا وقتی رخ میده که اعتبار سیم کارت شما تمام شده یا شماره موبایل شما معتبر نباشد


 
با سلام
دوست عزیز لطف کردید که پاسخ دادید و تشکر می کنم . :قلب: 

من با هر سیم کارتی امتحان کردم همین پیغام رو میده !

حالا  چیکار کنم ؟؟؟ :گریه: 

موفق باشید  :خجالت:

----------


## noorsoft

شما چوت با حالت متنی پیام ارسال می کنید اول باید AT+CMGF=1 را وارد کنید و بعد شماره مرکز را وارد نمایید AT+CSCA بعد بقیه قضایا را وارد نمایید

----------


## adel_max

برای اینکه باید آخرش ctrl-z رو بزنید.

----------


## sssssttttt

سلام و وقت بخیر
ببخشید من هم با گوشی k750 و K800  کار میکنم. و در خوندن sms ها(ی جدید) مشکلی نیس . اما نمیتونم sms بفرستم.
میخواستم اگه ممکنه 1 مثال اینجا بذارین که از اول دستوراتش باشه مثلا 
AT =>   entre 
AT+CMGF=0 
میخوام ببینم جایی از دستورام کم و زیاد نباشه.
بعد من طرز محاسبه طول PDU رو متوجه نشدم. اگه ممکنه تو مثالتون بهش اشاره کنین. 
ممنون از جوابتون.

----------


## sssssttttt

راستی شماره های مراکز دیتا سنتر رو از کجا میشه فهمید؟

----------


## noorsoft

بستگی به نوع سیم کارت شما داره  که داخل تنظیمات اس ام اس گوشیتون مشخص میشه 
با استفاده از دستورات AT هم استفاده کنید

+CSCA (command name in text: Service Centre Address) 
AT+CSCA?


کتابهایی که توی سایت گذاشتم همه این مطالب را داره

----------

