فهرست مطالب:

OldMan و Bluetooth2: 4 مرحله
OldMan و Bluetooth2: 4 مرحله

تصویری: OldMan و Bluetooth2: 4 مرحله

تصویری: OldMan و Bluetooth2: 4 مرحله
تصویری: Healing 448E 1938 Restore and Bluetooth Part 2 2024, نوامبر
Anonim
OldMan و Bluetooth2
OldMan و Bluetooth2

بنابراین این Lazy Old Geek (L. O. G.) سرانجام یک ماژول بلوتوث HC05 را از AliExpress.com دریافت کرد. من بعد از نوشتن این دستورالعمل یکی سفارش دادم:

www.instructables.com/id/OldMan-and-Blueto…

خوب ، من چندین ساعت تلاش کردم تا این کار را در حالت فرمان بدون موفقیت انجام دهم. من حتی یک ماژول HC05 (احتمالاً با استفاده از ولتاژهای اشتباه) را خراب کردم ، بنابراین مجبور شدم یکی دیگر بخرم.

نکته: حالت فرمان با خود ماژول HC05 یا HC06 صحبت می کند. حالت ارتباط ، صحبت کردن با یک دستگاه بلوتوث دیگر است.

آنچه من پیدا کردم تفاوت های زیادی بین HC05 و HC06 است. HC05 می تواند یک استاد یا برده باشد ، HC06 فقط برده است. اساساً ، یک استاد می تواند با یک برده صحبت کند ، دو برده نمی توانند با یکدیگر صحبت کنند. HC05 و HC06 دستورات متفاوتی دارند. HC05 باید سخت افزاری پیکربندی شود تا به حالت فرمان برود ، می تواند نرخ باود متفاوتی برای حالت ارتباط و فرمان داشته باشد.

HC06 همیشه در حالت ارتباطی و فرمان است. تنظیم نرخ باود برای یکی ، دیگری را تغییر می دهد.

نکته: این را پیگیری کنید زیرا من این کار را نکردم و مشکلاتی داشتم.

نکته: HC05 ها و HC06 های مختلف ممکن است با مواردی که من دریافت کردم متفاوت باشد.

HCO6 دستوراتی را انجام می دهد ، اما همیشه نتایج تغییر یافته را نشان نمی دهد ، به عنوان مثال تغییر نام.

مرحله 1: ارزیابی/اصلاح

ارزیابی/اصلاح
ارزیابی/اصلاح
ارزیابی/اصلاح
ارزیابی/اصلاح
ارزیابی/اصلاح
ارزیابی/اصلاح

پیوست یک طرح کلی HC05 شبیه به من است. دو تفاوت که من می دانم این است که یک مقاومت 2.2K بین PIO11 (34) و پین EN وجود دارد و تنظیم کننده 3.3v یک بسته 3 پین است و پین CE ندارد. تصویر پیوست ، شماتیک مشخصی برای آنچه من فکر می کنم دارم است.

برای اهداف برنامه نویسی ، آنچه مهم است این است که پایه 34 Key از طریق مقاومت 2.2K به پین EN متصل شده است. (همچنین به دکمه فشاری متصل است ، طرف دیگر به 3.3V متصل است)

HC05 انبار نیاز به 5 ولت برق دارد هرچند با سیگنالهای 3.3 ولت کار می کند ، بنابراین من HCO5 خود را تغییر دادم تا از 3.3 ولت استفاده کنم. من تنظیم کننده 3.3V را حذف کردم و یک جهنده را از پین VCC مستقیماً به 3.3V اجرا کردم. این در شماتیک اصلاح شده و تصویر اصلاح شده HC05 من نشان داده شده است.

به هر حال ، HC05 Command Set.pdf پیوست دارای اطلاعات ارزشمندی در مورد استفاده از HC05 است ، متأسفانه ، چندان کاربر پسند نیست.

مرحله 2: برنامه نویسی HC05

برنامه نویسی HC05
برنامه نویسی HC05
برنامه نویسی HC05
برنامه نویسی HC05

من تصمیم گرفتم ساده ترین راه برای استفاده از HC05 این بود که آن را به یکی از آداپتورهای سری CP2102 3.3V خود وصل کنم ، همانطور که در Old Man And Bluetooth Instructable با HC06 انجام دادم. تصویر و شماتیک را ببینید.

نکته مهم: برای فعال کردن HC05 در حالت فرمان ، پین PIO11 (34) قبل از اعمال 3.3V باید زیاد باشد. پین EN در HC05 من از طریق مقاومت 2.2K به PIO11 متصل است ، بنابراین فقط باید به 3.3V وصل شود. شماتیک این را به عنوان پین های برنامه نشان می دهد ، اما فقط یک بلوز از 3.3V تا پین EN را قرار دهید. مطمئن شوید این کار را قبل از اعمال قدرت انجام می دهید. در حالت من ، می توانید تشخیص دهید که در حالت فرمان هستید زیرا LED HC05 به آرامی چشمک می زند. اگر سریع چشمک می زند ، در حالت جفت شدن هستید و باید دوباره امتحان کنید.

نکته: HC05 در حالت فرمان همیشه با سرعت 38400 baud صحبت می کند. همه دستورات با حروف بزرگ نوشته می شوند و باید توسط CR و LF دنبال شوند. (این با HC06 متفاوت است)

نکته: فرمت دستور بسیار دقیق است. همیشه از کلاه استفاده کنید. همه آنها با "AT" شروع می شوند دقیقاً آنها را دنبال کنید ، نمی توانید فضاهایی را که در آنها نشان داده نشده است اضافه کنید.

آردوینو را راه اندازی کنید به "Tools" "Port" بروید و پورت Com را که CP2102 به آن متصل است انتخاب کنید.

Serial Monitor را باز کنید. در انتهای آن پنجره ، "هر دو NL و CR" و "38400 baud" را انتخاب کنید. (NL مخفف کلمه New Line است که همان LF که خط تغذیه است).

در بالا ، یک کادر کنار دکمه ارسال وجود دارد ، روی آن کلیک کنید.

در رایانه خود Caps Lock را روشن کنید

AT را تایپ کنید

پنجره بزرگ باید "OK" را نشان دهد.

شما در حالت فرمان در حال برقراری ارتباط هستید

برخی از دستوراتی که روی من کار می کنند

در AT

در+بازنشانی

در+نسخه؟

به نام+؟

AT+ADDR؟ ADDR: 98D3: 31: F5CB41

AT+NAME = BT1 این نام را به BT1 تغییر می دهد

در+نقش؟ 0 = برده 1 = استاد

مرحله 3: HC06 بازبینی شده است

HC06 بازبینی شد
HC06 بازبینی شد

یکی از تفاوت های اصلی بین HC05 و HC06 این است که HC05 می تواند master یا slave باشد در حالی که HC06 فقط برده است. این بدان معناست که می توانید بین HC05 و HC06 صحبت کنید. با این حال ، بسیاری از تفاوت های دیگر وجود دارد.

در حالی که می توانستم از Arduino برای راه اندازی HC06 خود استفاده کنم ، استفاده از 3.3v CP2102 را انتخاب کردم. تصویر را ببینید

اتصالات

CP2102 HC06

Gnd Gnd

Vcc Vcc

TXD RXD

RXD TXD

این اساساً مشابه HC05 است با این تفاوت که HC06 من فقط چهار پین دارد.

CP2102 من برای تغذیه 3.3 ولت اصلاح شده است

HC06 من برای پذیرش 3.3V تغییر یافته است

USB CP2102 به رایانه من متصل است. در رایانه شخصی من از Arduino IDE استفاده می کنم.

"Port" صحیح را انتخاب کرده و Serial Monitor را باز کنید.

در HC06 من ، LED قرمز سریع چشمک می زند ، که نشان می دهد آماده جفت شدن است اما می تواند دستورات را نیز دریافت کند.

برخی از این اطلاعات از مارتین کوری آمده است:

www.martyncurrey.com/arduino-and-hc-06-zs-0…

بنابراین هر نوع HC06 ممکن است متفاوت باشد ، من linversorV1.5 VERSION را برمی گرداند

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

نکته: شما نمی توانید دستورات را از طریق بلوتوث به هر ماژول بلوتوث (که من می شناسم) ارسال کنید.

Serial Monitor را باز کنید

روی اولین کادر پایین Serial Monitor کلیک کرده و روی "بدون خط پایان" تنظیم کنید

در ابتدا ، نرخ باود من 9600 باود بود

روی رایانه شخصی خود Caps Lock را روشن کنید

در جعبه بالا نوع AT را بنویسید

Enter را تایپ کنید یا دکمه "ارسال" را فشار دهید

صفحه باید OK را نشان دهد

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

توجه: با ارسال چندین دستور ، داده های پاسخ به خط بعدی منتقل نمی شوند. در انتها ، می توانید روی Clear output کلیک کنید.

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

فرمان پاسخ

در+نسخه OKlinvorV1.5

AT+NAMEFred returnOKsetname

(نام آن را به شما نمی گوید اما اگر با بلوتوث متصل شوید ، ظاهر می شود.)

توجه: اگر نام را تغییر دهید ، نام قدیمی روی تلفن هوشمند شما نشان داده می شود تا زمانی که جفت و جفت مجدد نشده است.

AT+PINxxx آن را امتحان نکرده ام. نقطه ضعف 1234 است

AT+BAUD8 نرخ Baud را به 115200 تغییر می دهد

پاسخ نرخ باود است ، به عنوان مثال 115200

(پس از تغییر نرخ baud ، برای ارسال دستورات بیشتر باید Serial Monitor را به 115200 تغییر دهید.

گزینه های نرخ باود

1 1200

2 2400

3 4800

4 9600 (به طور پیش فرض)

5 19200

6 38400

7 57600

8 115200

9 230400

A 460800

B 921600

C 1382400

توجه: من بالاتر از 8 115200 را امتحان نکرده ام. من شنیده ام که افرادی با نرخ بدتر نتایج بدتری را امتحان کرده اند.

دستورات دیگر که قرار است کار کنند اما آزمایش نشده اند:

AT+PN بدون بررسی برابری (به طور پیش فرض)

بررسی برابری فرد AT+PO

بررسی برابری AT+PE

مهم: در این مرحله ، من به شما پیشنهاد می کنم که در مورد نام منحصر به فرد تصمیم بگیرید و آن را وارد کنید. همچنین پیشنهاد می کنم در مورد میزان باود مورد نظر خود تصمیم بگیرید ، آن را قرار دهید و HC06 خود را با آن مشخص کنید.

مرحله 4: تنظیم HC05 به HC06

خوب ، این دستورالعمل برای من بسیار مفید بود:

www.instructables.com/id/How-to-Configure-…

تنظیمات من:

پیدا کردن آدرس SLAVE

HC06 با CP2102 (به طور خودکار در حالت فرمان)

برای تغذیه HC06 کابل USB CP2102 را به برق وصل کنید.

LED HC06 باید سریع چشمک بزند (حالت جفت شدن).

در تلفن هوشمند خود ، تنظیمات را باز کنید

به بلوتوث بروید

دستگاه جدید را جستجو کنید

اگر چیزی شبیه HC06 یا نامی که برای آن گذاشتید مشاهده کردید ، این مورد را انتخاب کنید.

به احتمال زیاد شما یک رشته اعدادی مانند 00: 12: 09: 27: 19: 13 را خواهید دید ، احتمالاً همین است.

این آدرس را بنویسید. (شماره آدرس منحصر به فرد آن است)

آن را انتخاب کنید

هنگام درخواست پین ، 1234 را تایپ کنید.

نام باید نمایش داده شود.

اگر هنوز آدرس ندارید ، در بخش "دستگاه های قبلاً متصل" نام را انتخاب کنید.

روی Info کلیک کنید ، آدرس باید نمایش داده شود. آن را بنویسید.

اگر نشان داده نشد ، از تنظیمات خارج شوید و برنامه Bluetooth Terminal HC-05 را باز کنید.

در قسمت Paired Devices ، نام را پیدا کنید ، آدرس باید در زیر آن باشد ، آن را بنویسید.

Slave Setup

اگر LED HC06 چشمک نمی زند ، برای برقراری مجدد آن به حالت جفت شدن ، از برق استفاده کنید.

آردوینو را راه اندازی کنید

در بخش "Tools" "Port" پورت Com را انتخاب کنید

Serial Monitor را باز کنید

در انتهای این پنجره

"بدون پایان خط" و "9600 baud" را انتخاب کنید

استاد

HC05 با CP2102 در حالت فرمان تنظیم شده است (EN jumpered high)

کابل USB را از CP2102 به رایانه وصل کنید

متوجه شدم که می توانم دو آردوینو را باز کنم

در آردوینو دوم ، پورت Com مناسب را برای HC05 انتخاب کنید

Serial Monitor را باز کنید

در پایین پنجره

"هر دو NL&CR" و "38400 baud" را انتخاب کنید

موارد زیر از دستورالعمل فوق است

پیکربندی اصلی

دستورات AT مورد نیاز برای تنظیم پیکربندی:

فرماندهی پاسخ دهید چه کاری انجام می دهد

AT+ROLE = 1 OK HC05 را به عنوان اصلی تنظیم کنید

AT+CMODE = 1 OK اتصال به آدرس خاص

توجه: آدرس HC06 احتمالاً به این شکل فرمت شده است 00: 12: 09: 27: 19: 13

فرمان BIND این 0012 ، 09 ، 27193 را انتظار می آورد (شما دو کولون را بیرون می آورید ، چهار عدد اول را می گیرید ، سپس کاما ، دو عدد بعدی ، سپس کاما ، و سپس شش شماره آخر)

AT+BIND = 0012 ، 09 ، 271913 OK اتصال/اتصال با HC06

(به هر حال AT +BIND؟ با +BIND پاسخ می دهد: 12: 9: 271913)

(می خواهید سرعت ارتباطات HC05 برابر HC06 باشد) برای مثال:

AT+UART = 115200 ، 0 ، 0 OK Baud rate 115200 (بیت اول ، بدون برابری)

برای آزمایش ارتباطات:

حذف کننده HC05 EN ، چرخه قدرت.

وقتی این دو به هم متصل می شوند ، LED HC05 هر چند ثانیه دو بار چشمک می زند ، LED HC06 به طور مداوم روشن می ماند.

هر دو پورت com را بر روی نرخ baud یکسان تنظیم کنید (هرچه تنظیم کنید)

هر دو را روی "Both NL&CR" تنظیم کنید

چیزی را در Serial Monitor1 تایپ کنید ، Serial Monitor2 باید آن را نمایش دهد.

چیزی را در Serial Monitor2 تایپ کنید ، Serial Monitor1 باید آن را نمایش دهد.

تبریک می گویم ، شما از طریق بلوتوث در حال برقراری ارتباط هستید

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

توصیه شده: