Мазмұны:

Қате конфигурацияланған HC-06 Bluetooth модулін қалпына келтіру: 4 қадам
Қате конфигурацияланған HC-06 Bluetooth модулін қалпына келтіру: 4 қадам

Бейне: Қате конфигурацияланған HC-06 Bluetooth модулін қалпына келтіру: 4 қадам

Бейне: Қате конфигурацияланған HC-06 Bluetooth модулін қалпына келтіру: 4 қадам
Бейне: Урок №10. Bluetooth, последовательный порт. Beyond Robotics 2024, Қараша
Anonim
Қате конфигурацияланған HC-06 Bluetooth модулін қалпына келтіріңіз
Қате конфигурацияланған HC-06 Bluetooth модулін қалпына келтіріңіз

Таза максимализмнен мен HC-06 Bluetooth (қосалқы) модулін AT+BAUDC пәрменімен 1, 382, 400 baud жылдамдығына теңшедім. Ардуино қосылғаннан бері модульді SoftwareSerial кітапханасымен қолдана алмады. Мен жіберу жылдамдығын Arduino аппараттық сериясымен (0 және 1 түйреуіштер) сәттіліксіз қалпына келтіруге тырыстым.

Мен Google -ге тақырыпты шешуге тырыспай -ақ тырыстым. Мүмкін, компьютердің сериялық портын қолдану шешім болуы мүмкін (логикалық деңгейдің 12В -тан 3В3 -ке ауысуы мүмкін), бірақ менің компьютерімде бұл ескірген порт жоқ, сондықтан мен басқа шешіммен келуге мәжбүр болдым.

1 -қадам: Сізге не қажет

Сізге не қажет болады
Сізге не қажет болады
  • Arudino/Genuino тақтасы әдепкі Atmel ATMEGA328P-PU MCU (@16MHz).
  • HC-06 Bluetooth модулі 1, 382, 400 тыңдауды тыңдайды
  • Негізгі arduino IDE

2 -қадам: Шешім

Шешім
Шешім
Шешім
Шешім

Назар аударыңыз, бұл нұсқаулық пен шешім 1, 382, 400 bod (AT+BAUDC) сценарийі үшін жасалған. Шешім басқа жылдамдықтар үшін жұмыс істемейді. Басқа жағдайларды шешу үшін 3 -қадамнан басталатын қадамдарды қараңыз.

Шешім шынымен де қарапайым.

  1. HC-06-ның VCC түйреуішін Arduino-дың 5В істігіне қосыңыз.
  2. HC-06 GND түйреуішін Arduino GND түйреуішіне қосыңыз.
  3. HC-06-ның RXD түйреуішін Arduino-ның 2-ші штырына жалғаңыз.
  4. HC-06 TXD түйреуішін қосылмай қалдырыңыз (немесе 8 істікке жалғаңыз).
  5. Hc06reset.ino нобайын жүктеңіз.
  6. Бағдарлама HC-06-ны 115, 200 беру режиміне қояды (AT+BAUD8).
  7. Қалпына келтірілген HC-06 модулін бұрынғыдай қолданыңыз.

3 -қадам: Сахна артында …

Сырттағы күбір-сыбыр әңгіме…
Сырттағы күбір-сыбыр әңгіме…
Сырттағы күбір-сыбыр әңгіме…
Сырттағы күбір-сыбыр әңгіме…

Arduino IDE -мен бірге жеткізілетін SoftwareSerial кітапханасы секундына ең көбі 115,200 бит жіберуге қабілетті, сондықтан қажетті 1, 382, 400 жылдамдықтағы байланыс жылдамдығы жеткіліксіз. Әдепкі Arduino тақтасы 16 МГц жиілікте жұмыс істейтінін ескере отырып, теориялық қысылмаған максималды бит жылдамдығы 16 000 000 бит/сек. Біз әзірге жақсы!

SoftwareSerial.cpp туралы менің түсінігіме сүйене отырып, өзгертулер арасындағы кідіріске (бұл жіберу жылдамдығынан) қатысты жоғары (= 1) немесе Төмен (= 0) шығыс түйреуішін орнату арқылы жүзеге асады.

  • Шығу түйреуіші әдепкі бойынша жоғары (деректер жоқ дегенді білдіреді)
  • а Бастау биті беріледі (ол түйреуішті төмен түсіреді), содан кейін
  • LSB -ден MSB -ге жіберілетін 8 бит деректер, (егер бит 1 және 0 болмаса,+5В)
  • тоқтату биті беріледі (ол түйреуішті жоғары тартады)

Осылайша 1 байт 10 бит арқылы беріледі.

Біз жіберуіміз керек хабар AT+BAUD8 (соңында / n, / r жоқ). Бұл команда HC-06 стандартты кітапханалар өңдей алатын 115, 200 беру жылдамдығына қайтарады.

1, 382, 400 бит/сек жылдамдығымен биттерді жіберу үшін әр бит үшін бізде 1/1, 382, 400 секунд уақыт бар (бұл шамамен 723,38 нс). Arduino 16 000 000 МГц жиілікте жұмыс істейді, сондықтан әрбір цикл 1/16 000 000 секундқа созылады - бұл цикл үшін 62,5 нс.

AVR құрастыру кодын қолдана отырып, біз шығыс түйреуішін жоғары немесе төмен қою үшін OUT командасын қолдана аламыз және NOP бір процессор циклін күтуге болады. Екі команда да дәл 1 процессор циклін жейді. Осылайша 723,38 нс бит уақытын бір битке 11-12 arduino нұсқауларымен жабуға болады. Бір нәрсені ескеру керек: OUT командасы бірден бүкіл байтты орнатады, сондықтан біз проблема болмайтын PORTx таңдауымыз керек. ATMEGA328P-PU пайдалану, мысалы, PORTD (arduino түйреуіштері 0-7) бұл жағдай үшін өте қолайлы. Бит орнатылғаннан кейін, тек 10-11 NOP арқылы жасалатын уақыт қажет.

Есептеу мәліметтерін төмендегі Excel файлынан таба аласыз. Бұл файл бағдарлама үшін қажетті нұсқауларды жасады. Жасалған кодты қойғаннан кейін тек бірнеше ауыстыру қажет болды.

4 -қадам: Қосымша оқу/ жетілдіру мүмкіндіктері

  • Мүмкін, алдыңғы қадамда сипатталған техниканы қолдану арқылы SoftwareSerial тезірек кітапханасын жасауға болады.
  • FedericoK2 әрбір мүмкін бит жылдамдығы үшін HC-06 қалпына келтіру кодын шығаратын тамаша құрал жасады. Сайтқа мына жерден кіріңіз: https://tools.krum.com.ar/save_your_hc-06/ Рахмет FedericoK2

Ұсынылған: