ماژول بلوتوث SPP-C که گاهی اوقات SPPC نیز نامیده می شود یک ماژول ارزان قیمت بلوتوث می باشد که رابط آن سریال بوده و براحتی توسط میکروکنترلر یا ترمینال کامپیوتر می توان آن را با دستورات متنی (AT Command) پیکره بندی نمود. در این ماژول بر خلاف HC-05 برای ورود به مد AT Command نیاز به هیچ تغییر ولتاژی بر روی پایه ها نمی باشد و همینکه که هیچ دستگاهی به ماژول متصل نباشد به طور خودکار وارد مد AT Command می شود و می توان توسط یک رابط سریال، ماژول SPP-C را تنظیم نمود. توجه داشته باشید که این ماژول نسخه های مختلفی دارد که نام نسخه ای که در این مقاله مورد بررسی قرار داده ایم SPP-CA می باشد. برای دانستن نام ماژول کافیست نام آن را با AT کامند خاصی بخوانید که در ادامه توضیح داده می شود و یا اینکه خیلی ساده تغذیه ماژول را متصل کرده و با یک موبایل آن را جستجو کنید. (نکته مهمی که باید یادآور شویم این است که این ماژول توسط برخی از گوشی های جدید شناسایی نمی شود و این یک نقص یه شمار می رود. احتمالا ارزان بودن این ماژول بخاطر اینست که از نوع SPP بوده و فقط سرویس پورت سریال را ارائه می دهد و چون برخی از تلفن های همراه از پورت سریال پشتیبانی نمی کنند و یا ماژول را بر اساس سرویس دیگری شناسایی می کنند این ماژول را در لیست جستجوی خود نمایش نمی دهند).
برای آزمایش این ماژول قبل از هر کاری تغذیه آن را مطابق با نقشه ارائه شده در برگه اطلاعاتی (دیتاشیت) ماژول متصل کردیم (3.3 ولت) و بدون هیچ گونه تنظیمی آن را با موبایل Samsung Galexy Gio جستجو کردیم که هیچ چیزی پیدا نشد. بلافاصله با یک گوشی قدیمی Sony Ericsson K800i یک جستجو انجام دادیم و بلافاصله دستگاهی به نام SPP-CA پیدا شد. سپس با دانگل بلوتوث متصل به کامپیوتر یک جستجو انجام دادیم و این بار نیز دستگاهی به نام SPP-CA پیدا شد. در نهایت نتیجه گرفتیم که این ماژول برای ساخت دستگاه هایی که قرار است یک طرف موبایل باشد مناسب نیست و بهتر است که از همان ماژول HC-05 استفاده شود. با این حال این مقاله برای آشنایی با این ماژول (SPP-C) و نحوه راه اندازی آن نوشته شده است و برای ارتباط با ماژول بلوتوث SPP-C از بلوتوث کامپیوتر استفاده شده است.
ماژول بلوتوث SPP-C برای راه اندازی لزوما نیاز به پیکره بندی خاصی ندارد و معمولا تنظیمات کارخانه و پیشفرض آن به گونه ای است که بلافاصله پس از وصل تغذیه به حالت Slave رفته و منتظر می ماند تا توسط دستگاه دیگری جستجو شود. با این حال مداری را مطابق با شکل زیر می بندیم و ماژول را به پورت سریال کامپیوتر متصل می کنیم تا با نحوه تنظیم کردن ماژول آشنا شویم و نیز بتوانیم اطلاعات ارسال شده به ماژول را مشاهده نماییم:
پس از بستن مدار بالا و اتصال ماژول به پورت سریال به محض اتصال تغذیه بایستی عبارات زیر بر روی ترمینال کامپیوتر مشاهده شود:
+PAIRABLE
اگر کاراکترهای نامفهومی را مشاهده می کنید سرعت (Baud) ترمینال خود را تغییر دهید. ما بر روی 9600 جواب گرفتیم. همچنین سایر خصوصیات ترمینال بایستی به صورت زیر باشد:
Data Bits: 8
Parity: none
Stop bits: 1
Flow Control: none
اگر از نرم افزار سریال هایپر ترمینال (Hyper Terminal) استفاده می کنید این مقاله را ببینید. ما برای محیط ترمینال از Terminal Monitor کامپایلر رایگان آردوینو استفاده می کنیم که تنظیمات آن به طور پیش فرض مانند بالاست و فقط سرعت آن و نیز کاراکترهای انتهای خط توسط کاربر تنظیم می شود که ما برای راه اندازی ماژول بلوتوث SPP-CA سرعت را بر روی 9600 و کارکترهای انتهای خط را بر روی Both NL & CR قرار دادیم. برای آزمایش ترمینال عبارت AT را به سمت ماژول ارسال کنید، اگر همه چیز بدرستی انجام شده باشد بایستی پاسخ OK را از سمت ماژول دریافت کنید. دستورات زیادی برای تنظیم بخش های مختلف ماژول بلوتوث SPPC وجود دارد که در این قسمت به توضیح سایر دستورات می پردازیم:
AT+NAME این دستور نام ماژول را (که در بخش جستجوی دستگاه دیگر نمایش داده می شود) نشان می دهد. برای تغییر این نام به AVR64 بایستی دستور را به این صورت وارد کنید: AT+NAMEAVR64 همانطوریکه مشاهده می کنید پارامتر باید بصورت چسبیده به دستور تایپ شود و این یک هنجارشکنی در دستورات AT است و نباید اینگونه باشد (در دستورات رسمی باید علامت = بین دستور و پارامتر قرار بگیرد ولی در این ماژول اینگونه نیست) ضمنا توجه داشته باشید که بزرگ و کوچک بودن حروف نیز اهمیتی ندارد.
دستور مهم دیگر AT+ROLE می باشد که نقش جاری ماژول را که می تواند 0 یعنی Slave (قابل جستجو توسط دستگاه دیگر) و 1 یعنی Master (خود ماژول با دستوراتی ماژول ها و دستگاه های دیگر را جستجو می کند) تعیین می کند. برای راه اندازی، ROLE باید بر روی 0 باشد، با دستور AT+ROLE0 می توانید این کار را انجام دهید.
دستور AT+PIN پین کد امنیتی ماژول را نمایش می دهد که معمولا 1234 است و موقع جفت شدن (pair) با یک دستگاه بایستی این عدد را در دستگاه دیگر وارد کنیم. برای تغییر آن مثلا به 3434 این دستور را وارد کنید: AT+PIN3434
دستور دیگر AT+BAUD می باشد که سرعت ماژول را نمایش می دهد. البته خروجی این دستور یک کد را نمایش می دهد و برای تغییر باود نیز باید کد مربوطه را تایپ کنید:
2-2400
3-4800
4-9600
5-19200
6-38400
7-57600
8-115200
9-230400
A-460800
B-921600
C-1382400
مثلا برای تنظیم سرعت بر روی 115200 باید این دستور را در ترمینال تایپ کنید و Enter را فشار دهید: AT+BAUD8
دستور دیگر AT+LADDR می باشد که آدرس بلوتوث را نمایش می دهد، احتمالا بتوان آدرس را تغییر داد اما این کار را نکنید.
دستور AT+DEFAULT ماژول بلوتوث SPP-C را به تنظیمات کارخانه باز میگرداند.
دستور AT+VERSION نسخه آنرا نشان می دهد.
دستور AT+RESET ماژول را ریست می کند.
توجه: تمام تنظیمات در حافظی دائمی ماژول بلوتوث SPP-C ذخیره شده و با قطع برق پاک نمی شود. ماژول بلوتوث SPP-C از آی سی BK3231 استفاده می کند که یک چیپ سفارشی ساخت شرکت Beken می باشد و هسته آن ARM968E-S است. این آی سی فشرده دارای 256KB حافظه فلش (Flash) و 32KB حافظه دیتا (Data Memory) می باشد. در تصویر زیر بلوک دیاگرام داخلی این آی سی مشاهده می شود:
برای اتصال به ماژول بلوتوث، توسط بلوتوث کامپیوتر، ماژول را جستجو کرده و پس از پیدا کردن آن (معمولا نام SPP-CA) آن را به دستگاه های خود اضافه می کنیم (Pair). این کار در هر سیستمی متفاوت است. مثلا در ویندوز 10 باید در بخش جستجو (ذره بین کنار Start) عبارت Devices را تایپ کرده و از پنجره باز شده روی Bluetooth کلیک کنیم و دستگاه را جفت کنیم. Pin Code پیش فرض هم 1234 است.
پس از جفت شدن ماژول و کامپیوتر وارد Device Manager می شویم (راست کلیک روی My Computer یا This PC و کلیک روی Properties و در نهایت انتخاب سربرگ Device Manager) در این پنجره روی Ports کلیک کرده و اگر همه چیز بخوبی پیش رفته باشد باید حداقل دو یا سه پورت سریال مجازی داشته باشیم. یک یا دو پورت مربوط به لینک بیسیم بلوتوث SPP-C و یک پورت هم مربوط به ماژول USB به سریال که به پایه های TX و RX ماژول متصل شده است. از دو پورت بیسیم معمولا فقط دومی جواب می دهد.
برای آزمایش، یک محیط ترمینال دیگر باز کنید (ما از ترمینال Bascom استفاده کردیم) و آن را روی یکی از پورت های سریال مجازی بلوتوث قرار دهید (در اینجا COM8). سایر تنظیمات و سرعت مهم نیست ولی ما با 9600,8,n,1 آزمایش کردیم. در داخل ترمینال باز شده عبارتی را تایپ کنید (مسلما عبارت تایپ شده مشاهده نخواهد شد چون هیچ Echo ای از مقصد، کاراکترهای شما را نمایش نمی دهد)
بلافاصله ترمینال دیگر را که متصل به پایه های ماژول می باشد مشاهده کنید (در اینجا ترمینال کامپایلر آردوینو متصل به پورت COM9 و ماژول USB به سریال) خواهید دید که همانند شکل زیر عبارت +CONNECTING<<00:1F:81:00:02:50 و CONNECTED و salam در آن نمایش داده شده است. در حال حاضر ماژول بلوتوث در مد ارتباطی قرار گرفته و امکان ارسال AT Command میسر نمی باشد و حتی اگر دستور AT هم تایپ کنید بصورت متن بی اثر به پورت سریال COM8 ارسال می شود. بلافاصله پس از قطع شدن دستگاه دیگر، ماژول بلوتوث SPP-C وارد مد AT Command می شود.
بدین ترتیب براحتی می توانید توسط دستگاه های دیگر به ماژول بلوتوث متصل شوید و اطلاعات سریال را ارسال کنید. اما همانطوریکه ذکر شد این ماژول توسط برخی از موبایل ها شناسایی نمی شود. البته این امر مطلق نیست و ممکن است با تنظیمات خاصی بتوان ماژول را به گونه ای پیکره بندی کرد که براحتی شناسایی شود. اگر شما توانستید این کار را انجام دهید حتما ما را هم در جریان بگزارید تا مقاله خود را اصلاح کنیم.
بازدیدها: 882
ممنون
?
کارت درسته مهندس
ولی متاسفانه اتکامند ها کار نکرد برا من پاسخ ERR رو برای من داد اتصالات هم چک کردم صحیح بود
تشکر. شاید ماژول خراب بوده. با Baud rate های مختلف چک کنید و آخرین نسخه AT Command ها رو دریافت کنید.