خانه / مطالب علمی / نحوه ارسال AT Command به Sim800 و استفاده از ماژول در پروژه های مبتنی بر میکروکنترلر

نحوه ارسال AT Command به Sim800 و استفاده از ماژول در پروژه های مبتنی بر میکروکنترلر

تشریح برخی مشخصات SIM800:
ماژولSIM800C سری جدید ماژولهای شرکت Simcom می باشد که مناسب برای ارتباطات GSM بوده و دارایBluetooth نیز می باشد. بسته بندی این ماژول کاملا مشابه ماژول SIM9000 بوده واز چهار باند فرکانسی 850/900/1800/1900MHZ پشتیبانی می کند.
نام برند : SIMCOM
مدل : SIM800C
وزن : 2.47 گرم
ابعاد : 17.6 – 15.7 – 2.3 میلی متر
ولتاژ ورودی : 3.4 الی 4.4 ولت
فرکانس : 1800MHz, 1900MHz, 850MHz, 900MHz
نوع رابط : USB , Serial

آموزش ابتدا با ایجاد ارتباط مابین ماژول و PC شروع میشه و سپس با دستورات و جواب اون ها اشنا میشیم و در این راستا سعی می کنم نمونه کد و توابعی رو برای دریافت نتیجه دستورات قرار بدم تا بتونید با کمترین تغییرات در کامپایلرهای مختلف استفاده کنید. بیس برنامه ها و توابع به زبان C بوده و بر مبنای کامپایلر کدویژن می باشد.

قبل از هر چیز برای شروع کار با ماژول به سه ابزار دیگه نیاز داریم.

  1. آداپتور 12 ولت 2 آمپر
  2. کابل USB
  3. سیم کارت

در اولین قدم باید ارتباط مابین ماژول و PC رو برقرار کنیم تا از سالم بودن اون مطمئن بشیم.
برای این کار آداپتور را به برق بزنید. در این حالت LED سبز رنگ روی برد باید روشن شود.

در این حالت و بدون و جود سیم کارت اگر شستی PWR را فشار دهید و بعد از چند ثانیه رها کنید، LEDهای قرمز و زرد برای یک لحظه با هم روشن شده و سپس خاموش می شوند و تنها LED زرد رنگ شروع به چشمک زدن می کند که در این وضعیت در حال پیدا کردن شبکه می باشد و به دلیل عدم وجود سیم کارت قادر به پیدا کردن شبکه نمی باشد. در صورت وجود سیم کارت بعد از چند ثانیه ریتم چشمک زدن تغییر می کند و کند می شود. که به معنای پیدا کردن شبکه است.
بعد از پیدا کردن شبکه توسط ماژول کابل USB مربوطه را وصل کنید. در این حالت یک پورت COM ایجاد می شود که از طریق آن می توان با نرم افزارهای مربوطه ارتباط برقرار کرد.
نرم افزار مورد استفاده در این آموزش هایپرترمینال می باشد.
ماژول های Simcom دارای قابلیت تشخیص باودریت به صورت اتوماتیک هستند و فقط کافیه برای شروع کار با ماژول یه “AT” رو برای ماژول بفرستید و Enter را بزنید.

فرمت کلی پاسخ ماژول Sim800 به دستورات ارسالی به صورت زیر است:

<CR><LF><response><CR><LF>

که <CR> معادل Enter یا “\r” و <LF> معادل Line Feed یا “\n” می باشد.
برای هر AT Command هم تصویری از ارسال و دریافت دیتا در هایپر ترمینال قرار داده می شود و هم نمونه کدی جهت دریافت دیتا با استفاده از میکروکنترلر ذکر می شود.
نمونه کدها با استفاده از کامپایلر کدویژن و بر مبنای تراشه ATmega32 نوشته شده است.
لینک دانلود نرم افزار هایپر ترمینال

بخش مشترک برنامه:

  1. دستور AT

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

AT\r
تصویر پاسخ ماژول به دستور:
نام: SIM800_1.jpg نمایش: 115 اندازه: 33.1 کیلو بایت
کد مورد استفاده در میکروکنترلر:
2- دستور ATE
وقتی کاراکتری رو در نرم افزار هایپر ترمینال برای ماژول می فرستید و همون رو مشاهده کنید این در اصل به دلیل روشن بودن حالت اکو ماژول است. حالت اکو یعنی اینکه به ازای ارسال هر کاراکتر ماژول عین اون رو به شما برمی گردونه.
نحوه ارسال کد به ماژول:

ATE0\r // Echo Off
ATE1\r // Echo On

تصویر پاسخ ماژول به دستور:نام: SIM800_2.jpg نمایش: 114 اندازه: 56.7 کیلو بایت

کد مورد استفاده در میکروکنترلر:

3- دستور ATH
از این دستور برای قطع تماس دریافتی استفاده می شود.

نحوه ارسال کد به ماژول:

ATH\r

تصویر پاسخ ماژول به دستور:

نام: SIM800_3.jpg نمایش: 115 اندازه: 47.1 کیلو بایت

کد مورد استفاده در میکروکنترلر:

 

ادامه مطلب در انجمن : http://www.eca.ir/forums/thread73912.html

نویسنده : سوران آراسته

درباره علی عزتی

علی عزتی هستم. رشته ی مهندسی برق الکترونیک رو خوندم. علاقه ی من به یادگیری و به اشتراک گذاشتن چیز هایی که یاد گرفتم. باعث شده تا بنویسم. علاقه ی زیادی به الکترونیک دارم. و دوست دارم چیزهای جدید یادبگیرم و بسازم ... :))

3 کامنت

  1. من میخوام با مگا 8 و بیسکام راه اندازی بشه اگه امکانش هست این مطلبم بذارید خیلی اورژانسیه

    • سوران آراسته

      نمونه کدهای قرار داده شده رو می تونیددر میکروکنترلرهای مختلف تست کنید و موردی نیست. صرفا در تنظیمات ارتباط سریال نیازه که تغییراتی اعمال بشه(در صورت استفاده از سایر خانواده ها)

  2. محمد افشین نژاد

    سلام
    این کد رو اصلاح کنید
    J_COT 34 به J_COT 26

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

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

*

code