विषयसूची:

ओल्डमैन और ब्लूटूथ2: 4 कदम
ओल्डमैन और ब्लूटूथ2: 4 कदम

वीडियो: ओल्डमैन और ब्लूटूथ2: 4 कदम

वीडियो: ओल्डमैन और ब्लूटूथ2: 4 कदम
वीडियो: Sex after 65 - 11 tips | Dr. Kelkar (MD, MBBS) #Psychiatrist #Sexologist #Hypnotherapist 2024, जुलाई
Anonim
ओल्डमैन और ब्लूटूथ२
ओल्डमैन और ब्लूटूथ२

तो इस आलसी ओल्ड गीक (एलओजी) को अंततः AliExpress.com से ब्लूटूथ एचसी05 मॉड्यूल मिला। मैंने इस निर्देश को लिखने के बाद एक आदेश दिया:

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

खैर, मैंने सफलता के बिना इसे कमांड मोड में काम करने की कोशिश में कई घंटे बिताए। मैंने एक HC05 मॉड्यूल (शायद गलत वोल्टेज लागू करना) को भी नष्ट कर दिया, इसलिए एक और खरीदना पड़ा।

सुझाव: कमांड मोड HC05 या HC06 मॉड्यूल से ही बात कर रहा है। संचार मोड दूसरे ब्लूटूथ डिवाइस से बात कर रहा है।

मैंने जो पाया वह HC05 और HC06 के बीच बहुत अंतर है। HC05 मास्टर या गुलाम हो सकता है, HC06 केवल गुलाम है। मूल रूप से, एक स्वामी एक दास से बात कर सकता है, दो दास आपस में बात नहीं कर सकते। HC05 और HC06 में अलग-अलग कमांड हैं। कमांड मोड में जाने के लिए HC05 को हार्डवेयर-कॉन्फ़िगर करना पड़ता है, इसमें संचार और कमांड मोड के लिए अलग-अलग बॉड दरें हो सकती हैं।

HC06 हमेशा संचार और कमांड मोड में होता है। एक के लिए बॉड दर निर्धारित करने से दूसरा बदल जाएगा।

सुझाव: इस पर नज़र रखें क्योंकि मैंने ऐसा नहीं किया और कुछ समस्याएँ थीं।

सुझाव: अलग-अलग HC05 और HC06 मुझे मिले हुए से भिन्न हो सकते हैं।

HCO6 कमांड निष्पादित करेगा, लेकिन हमेशा बदले हुए परिणाम नहीं दिखाता है, उदा। नाम बदलना।

चरण 1: मूल्यांकन / संशोधन

मूल्यांकन/संशोधन
मूल्यांकन/संशोधन
मूल्यांकन/संशोधन
मूल्यांकन/संशोधन
मूल्यांकन/संशोधन
मूल्यांकन/संशोधन

संलग्न मेरे जैसा ही एक HC05 योजनाबद्ध है। दो अंतर जो मुझे पता हैं, वह यह है कि PIO11 (34) और EN पिन के बीच एक 2.2K रोकनेवाला है और 3.3v नियामक एक 3 पिन पैकेज है और इसमें CE पिन नहीं है। संलग्न चित्र एक चिह्नित योजनाबद्ध है जो मुझे लगता है कि मेरे पास है।

प्रोग्रामिंग उद्देश्यों के लिए, जो महत्वपूर्ण है वह यह है कि पिन 34 कुंजी एक 2.2K रोकनेवाला के माध्यम से EN पिन से जुड़ी है। (यह पुशबटन से भी जुड़ा है, दूसरी तरफ 3.3V से जुड़ा है)

स्टॉक HC05 को 5V पावर की आवश्यकता होती है, हालांकि यह 3.3V सिग्नल के साथ काम करता है इसलिए मैंने इसके बजाय 3.3V का उपयोग करने के लिए अपने HCO5 को संशोधित किया। मैंने 3.3V रेगुलेटर को हटा दिया और VCC पिन से सीधे 3.3V पर एक जम्पर चलाया। यह संशोधित योजनाबद्ध और मेरे संशोधित HC05 चित्र पर दिखाया गया है।

वैसे, संलग्न HC05 कमांड सेट.pdf में HC05 का उपयोग करने के बारे में कुछ मूल्यवान जानकारी है, दुर्भाग्य से, यह बहुत उपयोगकर्ता के अनुकूल नहीं है।

चरण 2: HC05 प्रोग्रामिंग

प्रोग्रामिंग HC05
प्रोग्रामिंग HC05
प्रोग्रामिंग HC05
प्रोग्रामिंग HC05

मैंने तय किया कि HC05 का उपयोग करने का सबसे आसान तरीका यह था कि इसे अपने CP2102 3.3V सीरियल एडेप्टर में से एक से जोड़ा जाए जैसे मैंने ओल्ड मैन और ब्लूटूथ इंस्ट्रक्शनल में HC06 के साथ किया था। चित्र और योजनाबद्ध देखें।

महत्वपूर्ण सुझाव: HC05 को कमांड मोड में पावर देने के लिए, 3.3V लागू होने से पहले PIO11 पिन (34) को उच्च होना चाहिए। मेरे HC05 पर EN पिन 2.2K रोकनेवाला के माध्यम से PIO11 से जुड़ा है, इसलिए इसे केवल 3.3V से बांधना होगा। योजनाबद्ध इसे प्रोग्राम पिन के रूप में दिखाता है लेकिन सिर्फ 3.3V से EN पिन पर जम्पर लगाएं। सुनिश्चित करें कि आप शक्ति लागू करने से पहले ऐसा करते हैं। खदान पर, आप बता सकते हैं कि क्या आप कमांड मोड में हैं क्योंकि HC05 एलईडी धीरे-धीरे झपकेगी। यदि यह तेजी से झपका रहा है, तो आप पेयरिंग मोड में हैं और आपको फिर से प्रयास करने की आवश्यकता है।

सुझाव: कमांड मोड में HC05 हमेशा 38400 बॉड दर पर बात करता है। सभी कमांड बड़े अक्षरों में हैं और उन्हें सीआर और एलएफ द्वारा पालन करने की आवश्यकता है। (यह HC06 से अलग है)

युक्ति: कमांड प्रारूप बहुत सख्त है। हमेशा कैप का इस्तेमाल करें। वे सभी "एटी" से शुरू होते हैं, उनका ठीक से पालन करें, आप उन जगहों को नहीं जोड़ सकते जहां वे नहीं दिखाए जाते हैं।

Arduino शुरू करें। "टूल्स" "पोर्ट" पर जाएं और उस कॉम पोर्ट का चयन करें जिससे CP2102 कनेक्ट है।

सीरियल मॉनिटर खोलें। उस विंडो के नीचे, "एनएल और सीआर दोनों" और "38400 बॉड" चुनें। (एनएल का मतलब नई लाइन है जो एलएफ के समान है जो लाइन फीड है)।

ऊपर की तरफ सेंड बटन के बगल में एक बॉक्स है, उसमें क्लिक करें।

अपने पीसी पर कैप्स लॉक चालू करें

एटी टाइप करें

बड़ी विंडो को "ओके" प्रदर्शित करना चाहिए।

आप कमांड मोड में संचार कर रहे हैं।

कुछ आदेश जो मेरा काम करते हैं

पर

एटी+रीसेट

एटी+संस्करण?

एटी+नाम?

एटी+एडीडीआर? ADDR:98D3:31:F5CB41

AT+NAME=BT1 यह नाम बदलकर BT1 कर देता है

एटी+रोल? ० = गुलाम १=स्वामी

चरण 3: HC06 पर दोबारा गौर किया गया

HC06 पर दोबारा गौर किया गया
HC06 पर दोबारा गौर किया गया

HC05 और HC06 के बीच मुख्य अंतर यह है कि HC05 मास्टर या गुलाम हो सकता है जबकि HC06 केवल गुलाम है। इसका मतलब है कि आप HC05 और HC06 के बीच बात कर सकते हैं। हालांकि कई अन्य अंतर भी हैं।

जबकि मैं अपने HC06 को सेटअप करने के लिए एक Arduino का उपयोग कर सकता था, मैंने 3.3v CP2102 का उपयोग करना चुना। तस्वीर देखो

सम्बन्ध

CP2102 HC06

Gnd Gnd

वीसीसी वीसीसी

TXD RXD

आरएक्सडी TXD

यह मूल रूप से HC05 जैसा ही है सिवाय मेरे HC06 में केवल चार पिन हैं।

मेरा CP2102 3.3V. आपूर्ति करने के लिए संशोधित किया गया है

मेरा HC06 3.3V. को स्वीकार करने के लिए संशोधित किया गया है

CP2102 USB मेरे पीसी से जुड़ा है। अपने पीसी पर मैं Arduino IDE का उपयोग कर रहा हूं।

सही "पोर्ट" का चयन करें और सीरियल मॉनिटर खोलें।

मेरे एचसी06 पर, लाल एलईडी तेजी से चमक रही है, जो इंगित करती है कि यह जोड़ी के लिए तैयार है लेकिन कमांड भी प्राप्त कर सकती है।

इनमें से कुछ जानकारी मार्टिन करी से आई है:

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

इसलिए प्रत्येक प्रकार का HC06 भिन्न हो सकता है, मेरा संस्करण linvorV1.5. लौटाता है

मेरे HC06 (और शायद उन सभी) के लिए, इसे कमांड मोड में लाने के लिए कोई विशेष प्रक्रिया नहीं है। जाहिरा तौर पर अगर इसे जोड़ा नहीं गया है, तो आप हमेशा सीरियल पोर्ट के माध्यम से कमांड भेज सकते हैं।

युक्ति: आप ब्लूटूथ के माध्यम से किसी भी ब्लूटूथ मॉड्यूल (जिसे मैं जानता हूं) को आदेश नहीं भेज सकता।

सीरियल मॉनिटर खोलें

सीरियल मॉनिटर के नीचे पहले बॉक्स पर क्लिक करें और "नो लाइन एंडिंग" पर सेट करें

प्रारंभ में, मेरी बॉड दर 9600 बॉड थी

अपने पीसी पर कैप्स लॉक ऑन करें

टॉप बॉक्स में टाइप करें AT

एंटर टाइप करें या "भेजें" बटन टैप करें

स्क्रीन को ओके प्रदर्शित करना चाहिए

सुझाव: यदि आपको ओके नहीं मिलता है, तो ऐसा इसलिए हो सकता है क्योंकि बॉड दर बदल दी गई थी या अलग है। आप कई कोशिश कर सकते हैं, जब तक कि आप, उम्मीद से, सही खोज न लें।

नोट: एकाधिक आदेश भेजना, प्रतिक्रिया डेटा अगली पंक्ति में स्थानांतरित नहीं होता है। नीचे की ओर, आप Clear Output पर क्लिक कर सकते हैं।

मेरे लिए काम करने वाले आदेश:

कमांड प्रतिक्रिया

एटी+संस्करण

एटी+नामफ्रेड लौटता हैOKsetname

(यह आपको नाम नहीं बताता है, लेकिन अगर ब्लूटूथ से जुड़ा है, तो यह दिखाई देगा।)

नोट: यदि आप नाम बदलते हैं, तो पुराना नाम आपके स्मार्टफोन पर तब तक दिखाई देगा जब तक आप अन-पेयर और री-पेयर नहीं करते।

एटी+पिनxxx ने इसे आजमाया नहीं है। डिफ़ॉल्ट 1234. है

AT+BAUD8 बॉड दर को 115200. में बदलता है

प्रतिक्रिया बॉड दर है, उदा। ११५२००

(बॉड रेट बदलने के बाद, आपको आगे की कमांड भेजने के लिए सीरियल मॉनिटर बॉड रेट को 115200 में बदलना होगा।

बॉड दर विकल्प

1 1200

2 2400

3 4800

4 9600 (डिफ़ॉल्ट)

5 19200

6 38400

7 57600

8 115200

9 230400

एक 460800

बी 921600

सी १३८२४००

नोट: मैंने 8 115200 से अधिक की कोशिश नहीं की है। मैंने खराब परिणामों के साथ उच्च दरों की कोशिश करने वाले लोगों के बारे में सुना है।

अन्य आदेश जो काम करने वाले हैं लेकिन परीक्षण नहीं किए गए हैं:

एटी + पीएन कोई समता जांच नहीं (डिफ़ॉल्ट)

एटी+पीओ विषम समता जांच

एटी+पीई सम समता जांच

महत्वपूर्ण: इस बिंदु पर, मेरा सुझाव है कि आप एक अद्वितीय नाम पर निर्णय लें और इसे डालें। मैं यह भी सुझाव दूंगा कि आप जिस बॉड दर पर संवाद करना चाहते हैं, उसे तय करें, इसे डालें और इसके साथ अपना HC06 चिह्नित करें।

चरण 4: HC05 को HC06. पर सेट करना

ठीक है, यह निर्देश मेरे लिए सबसे अधिक मददगार था:

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

मेरा सेटअप:

गुलाम खोजने का पता

CP2102 के साथ HC06 (स्वचालित रूप से कमांड मोड में)

HC06 को पावर देने के लिए CP2102 USB केबल को प्लग इन करें।

HC06 एलईडी तेजी से चमकती होनी चाहिए (पेयरिंग मोड)।

अपने स्मार्टफ़ोन पर, सेटिंग खोलें

ब्लूटूथ पर जाएं

नए उपकरण की खोज करें

यदि आपको HC06 या आपके द्वारा दिया गया नाम जैसा कुछ दिखाई देता है, तो इसे चुनें।

आप 00:12:09:27:19:13 जैसी संख्याओं की एक स्ट्रिंग देखेंगे, शायद यही है।

इस पते को लिख लें। (संख्या इसका विशिष्ट पता है)

इसे चुनें

पिन मांगे जाने पर, 1234 टाइप करें।

नाम प्रदर्शित किया जाना चाहिए।

यदि आपके पास अभी भी पता नहीं है, तो "पहले से कनेक्टेड डिवाइस" के अंतर्गत नाम चुनें।

जानकारी पर क्लिक करें, पता प्रदर्शित होना चाहिए। नीचे लिखें।

यदि यह प्रदर्शित नहीं होता है, तो सेटअप से बाहर निकलें और ब्लूटूथ टर्मिनल HC-05 ऐप खोलें।

Paired Devices के अंतर्गत नाम ढूंढें, उसके नीचे पता होना चाहिए, उसे लिख लें।

गुलाम सेटअप

यदि HC06 LED फ्लैश नहीं कर रही है, तो इसे वापस पेयरिंग मोड में लाने के लिए साइकिल पावर करें।

अरुडिनो शुरू करें

"टूल्स" "पोर्ट" के तहत सही कॉम पोर्ट चुनें

सीरियल मॉनिटर खोलें

इस विंडो के नीचे

"नो लाइन एंडिंग" और "9600 बॉड" चुनें

गुरुजी

HC05 CP2102 के साथ कमांड मोड में सेट (EN जम्पर हाई)

USB केबल को CP2102 से PC में प्लग करें

मुझे पता चला कि मैं दो Arduinos खोल सकता हूँ

दूसरे Arduino पर, HC05. के लिए सही कॉम पोर्ट चुनें

सीरियल मॉनिटर खोलें

खिड़की के नीचे

"एनएल और सीआर दोनों" और "38400 बॉड" चुनें

निम्नलिखित उपरोक्त निर्देश से है

मास्टर विन्यास

कॉन्फ़िगरेशन सेट करने के लिए आवश्यक AT कमांड:

आदेश प्रतिक्रिया यह क्या करता है

AT+ROLE=1 ठीक 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 बॉड दर 115200 (1स्टॉप बिट, नो पैरिटी)

संचार का परीक्षण करने के लिए:

HC05 EN जम्पर, पावर साइकिल निकालें।

जब दोनों जुड़े होते हैं, तो HC05 एलईडी हर कुछ सेकंड में दो बार झपकेगी, HC06 एलईडी लगातार चालू रहेगी।

दोनों कॉम पोर्ट को एक ही बॉड दर पर सेट करें (जो भी आप सेट करते हैं)

दोनों को "एनएल और सीआर दोनों" पर सेट करें

सीरियल मॉनिटर 1 पर कुछ टाइप करें, सीरियल मॉनिटर 2 को इसे प्रदर्शित करना चाहिए।

सीरियल मॉनिटर 2 पर कुछ टाइप करें, सीरियल मॉनिटर 1 को इसे प्रदर्शित करना चाहिए।

बधाई हो, आप ब्लूटूथ के माध्यम से संचार कर रहे हैं।

अब उपरोक्त इंस्ट्रक्शनल में कुछ रेखाचित्र हैं कि कैसे Arduino के साथ मॉड्यूल का उपयोग किया जाए। इस निर्देश के लिए, मैं इसमें तल्लीन नहीं करूँगा।

सिफारिश की: