Мазмуну:

Туура эмес конфигурацияланган HC-06 Bluetooth модулун калыбына келтирүү: 4 кадам
Туура эмес конфигурацияланган HC-06 Bluetooth модулун калыбына келтирүү: 4 кадам

Video: Туура эмес конфигурацияланган HC-06 Bluetooth модулун калыбына келтирүү: 4 кадам

Video: Туура эмес конфигурацияланган HC-06 Bluetooth модулун калыбына келтирүү: 4 кадам
Video: #16 DT 06 WIFI Android Modbus HMI | Внешний ПЛК Arduino 2024, Июль
Anonim
Туура конфигурацияланган HC-06 Bluetooth модулун калыбына келтирүү
Туура конфигурацияланган HC-06 Bluetooth модулун калыбына келтирүү

Таза максимализмден улам мен HC-06 Bluetooth (кул) модулумду AT+BAUDC буйругу менен 1, 382, 400 байдын ылдамдыгына конфигурацияладым. Ардуино ага туташкандан бери модулду SoftwareSerial китепканасы менен колдоно алган жок. Мен Ардуинонун аппараттык сериясы (0 жана 1 -казыктар) менен байдын ылдамдыгын калыбына келтирүүгө аракет кылдым.

Мен ошондой эле Google үчүн теманы чечүүгө мүмкүн болбогон аракет кылдым. Балким, компьютердин сериялык портун колдонуу чечим болушу мүмкүн (логикалык деңгээлди 12Vдан 3V3кө которуу менен), бирок менин компьютеримде бул эскирген порт жок, ошондуктан башка чечимди ойлоп табууга туура келди.

1 -кадам: Сизге эмне керек

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

2 -кадам: Чечим

Чечим
Чечим
Чечим
Чечим

Бул Instructable жана чечим 1, 382, 400 bod (AT+BAUDC) сценарийи үчүн жасалганын эске алыңыз. Чечим башка бод чендери үчүн иштебейт. Башка иштерди чечүү үчүн 3 -кадамдан баштап кадамдарга кайрылыңыз.

Чечим чынында эле жөнөкөй.

  1. HC-06нын VCC пинин 5V Arduino пинине туташтырыңыз.
  2. HC-06нын GND пинин Ардуинонун GND пинине туташтырыңыз.
  3. HC-06нын RXD пинин Arduino'нун 2 пинине туташтырыңыз.
  4. HC-06нын TXD пинин туташпай калтырыңыз (же 8 пинге туташыңыз).
  5. Hc06reset.ino эскизин жүктөө.
  6. Программа HC-06ны 115, 200 bod режимине (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 болгондо+5V) анда
  • бир токтоочу бит берилет (бул пинди бийик тартат)

Бул жол менен 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 буйругун колдонуп, так бир CPU циклин күтө алабыз. Эки буйрук тең так 1 cpu циклин жейт. Ошентип, 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

Сунушталууда: