ارسال sms فارسی با sim800

ارسال SMS فارسی با SIM800 در مد text

ارسال SMS فارسی با SIM800 موضوعی است که کاربران زیادی درخواست آموزش آن را برای ما ارسال کرده اند . بنابراین در این آموزش بصورت مفصل به آن خواهیم پرداخت . ماژول های GSM تولید شده توسط شرکت SIMCOM که از جمله پرکاربردترین آنها می توان به ماژول های سری SIM900 و SIM800 اشاره کرد ، دارای قابلیت ارسال و دریافت SMS ، قابلیت تماس گرفتن و دریافت تماس و اتصال به اینترنت از طریق GPRS را دارند .

لازم به ذکر است که ماژول های سری SIM900 دیگر تولید نمی شوند و ماژول های سری SIM800 که نسخه بهبود یافته تر است جایگزین ماژول SIM900 شده است .

در این پست می خواهیم به بررسی ارسال SMS فارسی با SIM800 بپردازیم . به طور کلی sms یا پیامک ها به دو روش قابل ارسال می باشند . روش اول ارسال پیامک در mode text  می باشد ، در روش mode text که روش بسیار ساده ای می باشد ، متن پیامک شامل کاراکترهای استاندارد اسکی که شامل تمامی حروف انگلیسی و اعداد و علامتها می باشد و بر روی همه دستگاه ها قابل شناسایی و نمایش هستند .

ارسال SMS در MODE TEXT :

قبل از ارسال پیامک ابتدا باید بررسی نمایید که ماژول gsm شما از mode text برای ارسال پیامک پشتیبانی می کند یا نه ، برای بررسی توسط دستور at+command  زیر عمل می کنیم . با اجرای این فرمان زیر اگر در جواب OK برگردانده شود یعنی ماژول GSM شما توسط mode text پشتیبانی می شود .

AT+CMGF=1 <ENTER>
OK

در حالت mode text برخی پارامترهای اضافی برای ارسال پیام وجود دارد که می توانند تنظیم شوند. با استفاده از دستور زیر ما می توانیم مقادیر فعلی را بخوانیم:

AT+CSMP? <ENTER>
+CSMP: 1,169,0,0
OK

پارامتر اول که مقدار ۱ را دارد ، شامل یک بایت است که هر بیت آن ترکیبی از چند عملیات است .

bit 7 RP Reply path, not used in text mode
bit 6 UDHI User Data Header Information
bit 5 SRR Set this bit to request a delivery report
bit 3,4 VPF Validity Period, set b4=1 if a VP value is present
bit 2 RD Reject Duplicates, do not return a message ID when a message with the same destination and ID is still pending
bit 0,1 MTI Message Type Indicatorb1=0 & b0=0 -> SMS-DELIVERb1=0 & b0=1 -> SMS-SUBMIT

بیت ۰  همیشه در هنگام ارسال پیام ها (SMS-SUBMIT) باید فعال تنظیم  شود. بنابراین مقدار اول باید ۱ یا بالاتر باشد. پارامتر دوم دوره اعتبار پیام را تعیین می کند. این مقدار به صورت زیر کدگذاری می شود:

۰ – ۱۴۳ VP + 1) x 5 minutes)
۱۴۴ – ۱۶۷ ۱۲ Hours + ((VP-143) x 30 minutes)
۱۶۸ – ۱۹۶ VP-166) x 1 day)
۱۹۷ – ۲۵۵ VP-192) x 1 week)

پارامتر سوم شامل PID (شناسه پروتکل) است. این پارامتر فقط برای پیام های پیشرفته استفاده می شود. پارامتر چهارم شامل (DCS (Scheme Coding Data است. این پارامتر برای انتخاب characteret / messagetype استفاده می شود. هنگام تنظیم پارامتر DCS به ‘۰’ استاندارد متن به صورت کاراکتر اسکی ۷ بیتی ارسال می شود . هنگام تنظیم این پارامتر به ‘۱۶’ پیام به عنوان یک پیام فلش ارسال می شود.

برای ارسال یک پیام با مدت اعتبار ۱ روز، پارامترها باید به این صورت تنظیم شوند ، بیت ۰ و ۴ از فیلد اول باید فعال شود، بنابراین مقدار اول به ۱+۱۶=۱۷ تبدیل خواهد شد . برای تنظیم این پارامترها، دستور زیر را به مودم ارسال کنید:

AT+CSMP=17,167,0,16 <ENTER>
OK

ارسال SMS با ماژول sim800

بعد از تنظیمات اولیه ، برای ارسال  SMS، دستور زیر را تایپ کنید :

AT+CMGS="09120197955" <ENTER>
>

شماره تلفن بالا را با شماره تلفن همراه خودتان جایگزین کنید. مودم با < پاسخ می دهد و منتظر متن پیام می ماند . اکنون می توانید متن پیام را تایپ کنید و پیام را با استفاده از کلید ترکیبی <CTRL> + <Z> ارسال کنید:

Hello World ! <CTRL-Z>

بعد از چند ثانیه، مودم با شناسه پیام پاسخ می دهد که نشان می دهد پیام به درستی ارسال شده است:

+CMGS: 62

این پیام کوتاه به تلفن همراه خواهد رسید.

ارسال SMS در MODE PDU

روش دوم برای ارسال پیامک روشی به نام PDU  می باشد . این روش دیگر از کاراکترهای استاندارد اسکی جهت نوشتن متن پیام استفاده نمی کند ، در این روش تمامی اطلاعات یک SMS به صورت کد HEX می باشد . این  روش متن SMS طی عملیاتی فشرده سازی و کدگذاری شده و ارسال می شود . سمت گیرنده SMS نیز بعد از دریافت SMS  باید متن پیام را رمز گشایی کند تا قابل نمایش باشد .

برای ارسال متن هایی غیر از کاراکترهای استاندارد اسکی ، مثلا ارسال متن به زبان فارسی یا هر زبانی غیر از انگلیسی از روش PDU می توان استفاده کرد . هر حرف فارسی طبق استانداردی به نام UNICODE شامل دو بایت در مبنای HEX می باشد که برای ارسال مقادیر UNICODE حروف فارسی باید معادل HEX به روش PDU  ارسال شود .

روش ارسال SMS در MODE PDU  و طریقه کدگذاری و کدگشایی SMS در MODE PDU  را در پستی جداگانه مفصلا توضیح خواهیم داد .

طبق قولی که داده بودم یک پست جداگانه درباره ارسال و دریافت sms در مد pdu  در سایت قرار دادم . در صورتی که وقت کنم حتما یه سورس کد هم قرار می دهم .

ارسال sms فارسی  در MODE TEXT

در مدل های جدید ماژول های شرکت SIMCOM مثل ماژول های سری SIM800 قابلیتی وجود دارد که  قادر به ارسال پیام های یونیکد یا UCS2 بدون نیاز استفاده از PDU هستند . شما می توانید پیام های فارسی را تنها با تبدیل به معادل UNICODE ارسال کنید . برای بررسی اینکه آیا ماژول شما از این حالت پشتیبانی می کند، دستور زیر را تایپ کنید:

AT+CSCS=?

+CSCS: ("IRA","GSM","UCS2","HEX","PCCP","PCDN","8859-1")

OK

این دستورات کد های پشتیبانی شده توسط ماژول GSM را نمایش می دهد.

اگر پاسخ دریافتی از ماژول حاوی “HEX” یا “UCS2” باشد، یونیکد پشتیبانی می شود.بنابراین براحتی می توانیم پروژه ارسال SMS فارسی با SIM800 را پیاده سازی کنیم . در این مثال ابتدا SIM800 را بر روی حالت “HEX” تنظیم می کنیم:

AT+CSCS="HEX" <ENTER>

در مرحله بعد ما باید DCS صحیح (Schedule Data Coding) را برای پیام های Unicode مشخص کنیم که ۰x08 است. ما می توانیم این مقدار را با تغییر پارامتر چهارم دستور AT + CSMP به ‘8’ تنظیم کنیم:

AT+CSMP=49,167,0,8 <ENTER>

بعد از تنظیمات اولیه ، برای ارسال  SMS، دستور زیر را تایپ کنید :

AT+CMGS="09120197955" <ENTER>
>

شماره تلفن همراه خودتان را با شماره تلفن بالا جایگزین کنید . با ارسال فرمان بالا ، مودم با علامت < پاسخ می دهد و منتظر متن پیام می ماند . اکنون به بخش مهم کار رسیده ایم . در این قسمت باید معادل unicode حروف فارسی پیامک را استخراج کرده و بعد از کاراکتر < قرار بدهیم و در انتها با قرار دادن control+z پیامک ارسال می شود .

نکته مهم در ارسال پیامک فارسی توجه به طول تعداد کاراکترهای مجاز در قالب یک پیامک می باشد . در unicode چون هر کاراکتر شامل دو بایت در مبنای HEX می باشد ، بنابراین تعداد کاراکترهای مجاز در قالب یک پیامک در حالت استاندارد unicode ، نصف تعداد کاراکترهای مجاز در حالت استاندارد ascii است . بنابراین تعداد کاراکترهایی که می توانیم در یک پیامک فارسی ارسال کنیم برابر 70 کاراکتر است .

نکته دیگر این است که اگر داخل متن پیامک فارسی از حروف انگلیسی و یا کاراکترهای دیگر استفاده کنیم ، در این حالت نیز باید از معادل unicode آنها استفاده شود که در استاندارد unicode هر حرف انگلیسی نیز معادل دوبایت می باشد .

معادل unicode تمامی حروف و کاراکترها را می توانید با جستجو در اینترنت به دست آورید . در ادامه جهت سهولت کاربران سایت ، بخشی از پرکاربردترین حروف ، علایم و کاراکترها را قرار خواهیم داد .

جدول زیر معادل کد HEX تمامی حروف فارسی و عربی می باشد :

معادل unicode حروف فارسی
معادل unicode حروف فارسی

 

به دلیل شلوغی جدول بالا و صرفه جویی در وقت ، حروف فارسی را به ترتیب حروف الفبا مرتب کردم .  اعداد فارسی و تنوینها به همراه حروف فارسی در جدول زیر قرار دادم .

یونیکد حروف الفبا فارسی
یونیکد حروف الفبا فارسی

 

در ادامه چند تا از پرکاربردترین حروف و علایم در استاندارد unicode را قرار می دهم . امیدوارم مفید واقع شود .

 

جدول زیر مربوط به unicode علایم و حروف یونانی که در فیزیک و ریاضی کاربرد دارد و می توانیم از آنها در ارسال SMS فارسی با SIM800 استفاده کنیم :

یونیکد علامتهای فیزیک
یونیکد علامتهای فیزیک

 

جدول زیر unicode علامتهای ریاضی می باشد و می توانیم از آنها در ارسال پیامک فارسی با ماژول sim800 استفاده کنیم :

یونیکد علایم ریاضی
یونیکد علایم ریاضی

 

جدول زیر unicode اعداد یونانی و اعداد به شکل خاص می باشد و می توانیم از آنها در ارسال پیامک فارسی با ماژول sim800 استفاده کنیم :

یونیکد اعداد یونانی
یونیکد اعداد یونانی

 

جدول زیر unicode اشکال و علامتهای خاص می باشد و می توانیم از آنها در ارسال پیامک فارسی با ماژول sim800 استفاده کنیم :

یونیکد اشکال و علامتها
یونیکد اشکال و علامتها

 

جدول زیر unicode فلش و جهت ها می باشد و می توانیم از آنها در ارسال پیامک فارسی با ماژول sim800 استفاده کنیم :

یونیکد جهت ها
یونیکد جهت ها

 

در ادامه می خواهیم توسط مثال عملی ، کلمه سلام به همراه چند تا از اشکال که در جدول اشکال معادل unicode آن وجود دارد را توسط روش ارسال پیامک فارسی با ماژول sim800 ارسال کنیم . بنابراین نیاز است معادل unicode کلمه سلام را از جدول unicode حروف الفبا فارسی که در  بالا قرار دادیم استخراج کنیم . معادل unicode کلمه سلام و سه تا شکل گرافیکی برابر با “0633064406270645262B2615261E” می باشد . هر حرف در unicode معادل دو بایت و در مبنای HEX می باشد .

در تصویر زیر نحوه تنظیمات و ارسال پیامک فارسی با ماژول sim800 را مشاهده می کنید :

ارسال sms فارسی با sim800
ارسال sms فارسی با sim800

نکته : یکی از مواردی که بعضی از کاربران موقع ارسال sms در محیط ترمینال سریال با آن مواجه هستند . قرار دادن مقدار control+z انتهای متن پیام است . در برخی از ترمینال سریال ها کلید ترکیبی control+z به صورت مستقیم عمل می کند .

اما در برخی از ترمینال سریالها control+z عمل نمی کند و باید معادل کد دستوری آن ارسال شود . معادل کلید control+z برابر 26 دسیمال یا 1A هگز می باشد . در مثال بالا بخشی برای ارسال مقادیر به صورت هگز وجود دارد ، ابتدا تیک مربوط به SendHEX را می زنیم ، سپس معادل هگز 1A را نوشته و ارسال می کنیم .

 

از آنجایی که استخراج و تبدیل معادل یونیکد حروف فارسی زمان بر است . همچنین بعد از تبدیل با تعداد زیادی اعداد پشت سر هم مواجه خواهیم شدکه امکان اشتباه را بالا می برد و در صورت بروز اشتباه ، پیدا کردن خطا داخل این همه کد کاری دشوار می باشد .

بنابراین بهتر است روشی پیاده سازی کنیم که توسط آن متن پیام را بتوانیم به صورت فارسی بنویسیم ، سپس متن فارسی را طی مراحلی به معادل یونیکد تبدیل کنیم . برای تحقق این امر برای علاقه مندان به آردوینو ، کدویژن و بسکام نمونه کدی نوشتیم که توسط آن می توان متن پیام خود را به صورت فارسی بنویسند و در خروجی معادل unicode آن را داشته باشند .

ارسال sms فارسی با sim800 توسط آردوینو :

نرم افزار آردوینو به دلیل پشتیبانی از استاندارد UTF-8  این قابلیت را به ما می دهد که علاوه بر حروف فارسی بتوانیم تمامی کاراکترها و علامت ها و همچنین بقیه زبانها را در محیط آردوینو تایپ کرده و به نمایش در آوریم .

سورس کدی که ما برای ارسال SMS فارسی با SIM800 توسط آردوینو نوشتیم ، می تواند علاوه بر حروف و اعداد فارسی ، برخی از کاراکترها و علامتهای خاص را نیز به صورت مستقیم تایپ کرده و در پیامک فارسی خود ارسال کنیم .

 

ارسال پیام فارسی توسط آردوینو
ارسال پیام فارسی توسط آردوینو

ارسال sms فارسی با sim800 توسط کدویژن :

نرم افزار کدویژن بر خلاف نرم افزار آردوینو از استاندارد UTF-8  پشتیبانی نمی کند و فقط از حروف و کاراکترهای اسکی پشتیبانی می کند . بنابراین موقع تایپ حروف فارسی و قرار دادن کاراکترهای خاص در محیط کدویژن ،این حروف به صورت علایم ناخوانا به نمایش در می آیند .

در استاندارد اسکی ، از کاراکترهای در محدوده 128 الی 255 برای دیگر زبانها نیز استفاده می شود . بنابراین از قسمت مربوط به Language for non-Unicode programs در تنظیمات ویندوز و قرار دادن آن بر روی Persian – iran می توانیم حروف فارسی را در محیط کدویژن نمایش دهیم . اما در قرار دادن کاراکترهای دیگری که در محدوده اعداد اسکی از 0 الی 255 نیستند دارای محدودیت هستیم .

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

 

ارسال پیام فارسی توسط کدویژن
ارسال پیام فارسی توسط کدویژن

 

ارسال sms فارسی با sim800 توسط بسکام :

نرم افزار بسکام نیز از استاندارد UTF-8  پشتیبانی نمی کند و فقط از کاراکترهای در محدوده اسکی پشتیبانی می کند . بنابراین موقع تایپ حروف فارسی و برخی کاراکترها در بسکام ، این حروف به صورت علامتهای ناخوانا به نمایش در می آیند .

در استاندارد اسکی ، از کاراکترهای در محدوده 128 الی 255 برای دیگر زبانها نیز استفاده می شود . بنابراین از قسمت مربوط به Language for non-Unicode programs در تنظیمات ویندوز و قرار دادن آن بر روی موقعیت Persian – iran می توانیم حروف فارسی را در محیط بسکام نمایش دهیم . اما در قرار دادن کاراکترهای دیگری که در محدوده اعداد اسکی از 0 تا 255 نیستند دارای محدودیت هستیم .

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

 

ارسال پیام فارسی توسط بسکام
ارسال پیام فارسی توسط بسکام

پروژه ارسال sms فارسی با ماژول sim800 :

قابلیت های سورس کد آردوینو :
نوشتن و ارسال متن پیامک به صورت فارسی
پشتیبانی از اعداد فارسی
پشتیبانی از علامت های فیزیک و ریاضی
قابلیت قرار دادن متغییر مثلا مقدار دما ، درون متن فارسی پیامک
تبدیل متن فارسی به استاندارد Unicode بدون اشغال حافظه RAM

قابلیت های سورس کدویژن :
نوشتن و ارسال متن پیامک به صورت فارسی
پشتیبانی از اعداد فارسی
قابلیت قرار دادن متغییر مثلا مقدار دما ، درون متن فارسی پیامک
تبدیل متن فارسی به استاندارد Unicode بدون اشغال حافظه RAM

قابلیت های سورس کد بسکام :
نوشتن و ارسال متن پیامک به صورت فارسی
پشتیبانی از اعداد فارسی
قابلیت قرار دادن متغییر مثلا مقدار دما ، درون متن فارسی پیامک
تبدیل متن فارسی به استاندارد Unicode بدون اشغال حافظه RAM

 نرم افزار : Bascom , CodVision , Arduino
  نویسنده : حسین غیاثوند
 تاریخ انتشار : 1399/2/14
 خرید و دانلود :

اضافه کردن به سبد خرید

53 دیدگاه ها

  1. سلام
    ظاهرا سایت تازه راه اندازی شده.
    اما به شخصه خلی لذت بردم.
    هم UI هم آموزش، کامل و عالی بود.
    امیدوارم روز به روز موفق تر باشید.
    ما هم سعی میکنیم ساپورت کنیم.
    سپاسگزارم.

    • سلام ، سپاسگزارم از شما ، سایت تازه راه اندازی شده و در جهت بهبود سایت و محتوای آن در تلاش هستیم .

  2. درود

    آیا شما با sim800
    ایمیل زده اید ؟

    • سلام
      بله ، در آینده آموزش های دیگری از ماژول sim800 مثل ارسال email ، بروزرسانی ساعت rtc توسط شبکه ، ارتباط با سرور توسط gprs ، بر روی سایت قرار خواهیم داد . میتوانید با عضویت در خبر نامه یا دنبال کردن ما در شبکه های اجتماعی ، از مطالب جدید ما با خبر شوید .
      تشکر فراوان

  3. مقدار apn اپراتوری که استفاده میکنید باید قرار دهید .

  4. با سلام
    از صمیم قلب بخاطر آموزشهای مختصر و مفیدتون تشکر میکنم
    توضیحات کوتاه و مفیدی که در مورد تنظیم DTMF و ارسال پیامک فارسی گذاشتید خیلی خیلی کمکم کرد
    با آرزوی بهترینها برای شما

  5. سلام برشما
    به زودی آموزش ارسال ایمیل در پستی جداگانه در سایت قرار میگیرد ، سوالات مربوط را آنجا ادامه دهید ، شرکت های ارائه دهنده ایمیل برای مدتی است که از رمزنگاری ssl بر روی سرویس خود استفاده میکنند ، بنابراین ماژولی که شما استفاده می کنید باید قابلیت ssl داشته باشد ، برای فعال سازی از دستور AT+EMAILSSL=1 استفاده نمائید .

  6. سلام
    خداییییییییی دمتون گرم که این مطلب رو گزاشتید
    تششششششکر از سایت خوبتون
    راستی باروش یونیکد هم میتونید راهنمایی کنید

    • سلام دوست عزیز
      همین روشی که در این پست توضیح داده شده ، روش یونیکد می باشد که در مد تکس انجام شده ، روش دیگری نیز برای ارسال به نام pdu وجود دارد که در پستی جداگانه توضیح داده خواهد شد .

  7. سلام اگر امکان دارد یک مثال درباره دریافت پیامک و جست و جو در پیام با زبان c قرار بدهید

    • سلام
      یه آموزش خوب برای دریافت و تحلیل sms وجود داخل وبلاگ به آدرس avr-city.mihanblog.ir با بسکام وجود داره ، اگر وقت داشته باشم یه آموزش تهیه می کنم که زبان سی هم داشته باشه .

  8. امیربهادر

    سلام و خسته نباشید.تشکر بابت مطالب خوبتون.من ماژول رو رو حالت تکست مود ست میکنم ریسپانس ok هم میده ماژول بعد رو GSM هم ست کردمش بازم رسپانش ok داد بعد که با دستور CMGS پیامک رو میفرستم بین کاراکتر ها حرف @ میاد.مثلا hello رو اینطوری فرستاده @h@e@l@l@o@. ممنون میشم راهنمایی کنین!

    • سلام
      مشکل شما باید از چند جهت بررسی شود ، اگر از میکروکنترلر برای ارسال پیام استفاده کردید ،یک بار نیز از ترمینال ویندوز اقدام به ارسال پیام کنید ، اگر با مشکل مواجه نشدید ، احتمالا از برنامه میکروکنترلر هست . در صورتی که همچنان مشکل وجود داشت اقدام به ریست فکتوری ماژول نمائید . در نهایت اگر مشکل مرتفع نشد میتوانید فریمور ماژول را به آخرین نسخه ارتقا دهید ، شاید مشکل برطرف شود.

  9. حمیدرضا

    با سلام و تشکر از آموزش مفیدتون
    یه سوال داشتم ، اگه بخواهیم ترکیبی از فارسی و انگلیسی داشته باشیم چکار کنیم ؟ راستش من اومدم کد هگز کاراکترهای انگلیسی رو هم وارد کردم ولی فارسی ها رو درست ارسال کرد ولی کاراکترهای انگلیسی رو حروف ژاپنی !!

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

    • سلام
      برای اینکه بتوان کاراکترهای انگلیسی را همراه با حروف فارسی ارسال کنید ، باید از معادل یونیکد کاراکترهای انگلیسی استفاده نمائید ، که بصورت کد چهار رقمی می باشد . دو رقم صفر قبل از هر کدام از کد هگز کاراکتر انگلیسی قرار دهید .

  10. سلام خسته نباشید. ممنون از آموزش خوبتون.
    یه سوال داشتم اینکه در حالت ارسال پیامک به صورت فارسی چطور میتونم یک متغییر که در برنامه تغییر میکند مثلا دما را با پیامک بفرستم. من هر کاری کردم نشد.ممنون میشم راهنماییم کنید.با تشکر

    • سلام
      باید معادل یونیکد متغییر را ارسال کنید ، برای مثال اگر متغییر شما عدد ۲۵ باشد باید مقدار ۰۰۳۲۰۰۳۵ را ارسال نمائید .

  11. سلام این کدهارو برای sim800l هم میتونم استفاده کنم؟

    • سلام
      این کدها را برای تمامی مدل های سری sim800 می توانید بکار ببرید .

  12. علی عطاران

    باسلام من این مثال شمارا در مانیتور سریال آردوینو بکار بردم تمام مراحل تا ارسال پیامک درست پیش میره ولی کلید ترکیبی CTRL+Zرا میزنم دیگه هیچی بر نمیگردونه ممنون میشم راهنمایی کنین.

    • سلام
      اگر در ترمینال سریال آردوینو قسمتی برای ارسال کد هگز یا دسیمال وجود دارد ، معادل کلید ترکیبی control+z را ارسال نمائید .
      کد معادل بر مبنای هگز برابر ۱A و بر مبنای دسیمال ۲۶ می باشد .

  13. سلام. ممنون از مطالب بسیار مفیدتون. یک سوال. یک پیام وقتی در حالت تکست مود ارسال شود در سمت گیرنده چطور می توان متوجه شد که پیام دریافتی به صورت هگز هست یا جی اس ام؟

  14. سلام.
    برای پیامک دریافتی که بصورت textmode ارسال شده چطور باید متوجه شد که کاراکترها به صورت hex ارسال شده اند یا به صورت gsm
    ؟

    • سلام
      توسط تنظیمات سمت گیرنده تعیین میکنیم که پیامک به صورت hex یا gsm نمایش داده شود , اگر تنظیمات گیرنده بر روی hex باشد تمامی حروف فارسی و انگلیسی بصورت هگز خواهد بود و شما باید توسط برنامه نویسی عمل پردازش و دیکد را انجام دهید .

  15. سلام . من وقتی control+z را می زنم باز علامت < ظاهر میشه و پیام ارسال نمیشه
    ضمنا ماژول sms دریافت میکنه ولی ارسال نمیکنه
    ممنون اگه راهنمایی کنید

    • سلام
      شاید محیط ترمینال سریالی که استفاده می کنید ، برای ارسال کنترل زد باید معادل کد هگز آن که ۱A می باشد ارسال شود .

  16. مهدی زواری

    بسیار عالی و جالب، تشکر

    • سلام
      امیدوارم مطالب مفید باشند . اظهار لطف شما به ما انگیزه مضاعف می دهد . تشکر

  17. سلام و تشکر.

  18. سلام ادمین جان
    بسیار ممنون از مطلب مفیدتون

  19. با سلام و خسته نباشید و ممنون از سایت خوبتون .
    من همه ی مراحل رو درست رفتم و به هیچ ارروی بر نحوردم اما وقتی Ctrl+z میزنم بعد چندثانیه ارور میده.
    مشکلش کجاست؟
    بعد اینکه مقدار انتن دهی در قسمت AT+CASQ باید حداقل چند باشه؟
    ممنون

    • سلام ، ممنون
      نرم افزاری که استفاده می کنید اگر قابلیت ارسال کنترل زد را بصورت مستقیم ندارد باید معادل هگز آن 1A را ارسال کنید . کیفیت سیگنال شما باید بالاتر از عدد 10 باشد . همچنین باید اتصال به شبکه توسط فرمان at+creg? چک شود .

  20. سید علی شاهرخی

    سلام .

    خواستم بپرسم اگر به جای CNTR-Z اینتر بزنیم کار نمیکنه دستور ؟

  21. سلام سایتی میشناسید که متن فارسی رو به معادل hex ان تبدیل کند ؟

    • سلام
      سایت مخصوص تبدیل متن فارسی به یونیکد برای صفحات وب زیاد هست . عبارت تبدیل متن فارسی به یونیکد را در گوگل جستجو کنید .

  22. محمد رضا حاصلی

    سلام وقت بخیر
    اگر بخواهم از طریق میکرو ARM با استفاده از ماژول SMS پیام ارسال کنم بعد از اینکه توسط AT+CMGS شماره را وارد کردم و ریسپانسی که میده OK حالا چجوری و با چه دستوری باید پیام مورد نظرم را بنویسم؟

    • سلام
      ابتدا دستور “********09″=AT+CMGS را به ماژول ارسال کنید سپس منتظر دریافت کاراکتر < بمانید . سپس متن پیام خود را بنویسید و برای ارسال معادل کد کنترل زد که 26 دسیمال است را ارسال کنید .

  23. سايت بسيار خوبيست و userfriendly است لطفا طرز اس ام اس فرستادن با سيم ٨٠٠ (از نظر سخت افزاري -كيبورد كجاست؟)را نيز آموزش دهيد متشكرم

    • سلام
      لطفا بیشتر توضیح دهید چه سخت افزاری ؟
      در آینده قصد دارم این پست را تکمیل کنم و سورس کد به همراه تابعی که خودش کاراکترهای فارسی را به یونیکد تبدیل کند قرار دهم .

  24. سلام باتشکر از مطالبه مفیدتون
    میخاسم ببینم میشه ارسال smsفارسی را درقالب یه کد دراختیارمون بزارین؟

  25. سلام من با نرم افزار آردینو ارسال کامند میکنم به جای سریال پورت . همه چی خوب پیش میره ولی قسمت آخر ctrlz چکار کنم . عملی انجام نمیشه؟

    • سلام
      تا حالا تو سریال مانیتور اردوینو تست نکردم . فعلا امکان تست ندارم . معادل کنترل زد کد هگز 1a یا 26 دسیمال می باشد . از ترمینال هایی که قابلیت ارسال کد به صورت هگز هم دارند استفاده کنید مثل herculs یا sscom32

  26. سلام
    این کامندهارو باید کجا بزنیم؟؟

  27. سلام و درود بابت مطالب با ارزشتون تشکر میکنم.
    سه تا سوال داشتم از جدول at+csmp اگه منو راهنمایی کنید ممنون میشم:
    1- بیت 4 که مشخصه کارش چیه بیت ۳ کارش چیه؟
    2- بیت 1 و 0 که گفتید فرق بین sms-deliver و sms-submit چیه؟
    3- کار بیت 2 رو درست متوجه نشدم.

  28. این دستورات رو کجا تایپ میکنید؟ تو چه محیطی؟

    • سلام
      توسط یک مبدل usb to serial ماژول sim800 را به کامپیوتر متصل کنید . سپس دستورات at+command را می توانید درون محیط ترمینال سریال ویندوز و یا ترمینال سریال هر نرم افزار دیگری مثل کدویژن ، آردوینو و یا بسکام ارسال و دریافت کنید .

  29. اسماعیل

    عالی بود مرسی

  30. سلام .
    از این مطلب استفاده بردم .
    نکات کلیدی رو مطرح کرده بودید .
    کارم راه افتاد .
    ولی به جای قرار دادن ماژول در مد hex میشه اون رو روی مد CUS2 قرار داد.

    سپاس.

  31. مهندس عهد باستان

    سلام. تشکر از مطالب پر محتوای جنابعالی. واقعا زحمت کشیدید. در دنیای امروز، هدف تولید انبوه یک محصول کاربردی و ورود دلار و ارز به داخل یک کشور است. دانشگاه توسط تعریف پروژه های کاربردی و تامیین اطلاعات فنی از یک طرف و بورس سالم بعنوان تامین سرمایه تولید کننده از طرف دیگر، حکم لجستیک تولید کننده را دارند. در این میدان پر آشوب، اینکه شما و امثال جنابعالی یک تنه زحمت این دانشگاه ها را که فقط دنبال تولید ثروت هستند را می کشید و محتوای علمی جمع آوری گرده و بی هیچ منتی در اختیار دیگر همکاران جوان قرار می دهید، جای بسی تقدیر داشته و حکم ایثار و جهاد را دارد و قطعا بعنوان اعمال خیر در نظر گرفته خواهد شد. پاینده و فعال باشید. خیلی مفید بوده است.

  32. Amir Hossein Ash

    با سلام .
    از سایتتون لذت بردم و بخاطر این مطالب از شما تشکر میکنم.
    میخواستم بدونم که خط فاصله یا Space ، چه یونیکدی داره؟
    ممنون

    • سلام و تشکر
      برای بدست اوردن معادل یونیکد کاراکترهای استاندارد اسکی ، کافی قبل کد هگز کاراکتر اسکی دو تا 00 قرار بدهید ، مثلا معادل کد فاصله یا space برابر 20 هگز است و معادل یونیکد آن برابر 0020 هگز می باشد .

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد.