Mục lục:
- Bước 1: Những gì bạn sẽ cần
- Bước 2: Giải pháp
- Bước 3: Hậu trường…
- Bước 4: Đọc thêm / Cải thiện khả năng
Video: Khôi phục Mô-đun Bluetooth HC-06 bị cấu hình sai: 4 bước
2024 Tác giả: John Day | [email protected]. Sửa đổi lần cuối: 2024-01-30 13:34
Ngoài chủ nghĩa tối đa thuần túy, tôi đã định cấu hình mô-đun Bluetooth (phụ) HC-06 của mình thành tốc độ truyền là 1, 382, 400 baud bằng lệnh AT + BAUDC. Kể từ khi Arduino được kết nối với nó, không thể sử dụng mô-đun với thư viện SoftwareSerial. Tôi đã cố gắng khôi phục tốc độ truyền với nối tiếp phần cứng của Arduino (chân 0 & 1) nhưng không may.
Tôi cũng đã cố gắng Google chủ đề mà không tìm thấy một giải pháp khả thi. Có thể sử dụng cổng nối tiếp tích hợp của máy tính có thể là một giải pháp (với sự thay đổi mức logic 12V sang 3V3), nhưng máy tính của tôi không có cổng lỗi thời này, vì vậy tôi phải đưa ra một giải pháp khác.
Bước 1: Những gì bạn sẽ cần
- Bo mạch Arudino / Genuino với Atmel ATMEGA328P-PU MCU mặc định (@ 16MHz).
- Mô-đun Bluetooth HC-06 nghe trên 1, 382, 400 baud
- Arduino IDE cơ bản từ
Bước 2: Giải pháp
Xin lưu ý rằng có thể hướng dẫn này và giải pháp được thực hiện cho kịch bản 1, 382, 400 baud (AT + BAUDC). Giải pháp sẽ không hoạt động đối với bất kỳ tốc độ truyền nào khác. Để xử lý các trường hợp khác, vui lòng tham khảo các bước bắt đầu từ Bước 3.
Giải pháp thực sự đơn giản.
- Kết nối chân VCC của HC-06 với chân 5V của Arduino.
- Kết nối chân GND của HC-06 với chân GND của Arduino.
- Kết nối chân RXD của HC-06 với chân 2 của Arduino.
- Không kết nối chân TXD của HC-06 (hoặc kết nối với chân 8).
- Tải lên bản phác thảo hc06reset.ino.
- Chương trình sẽ đặt HC-06 thành chế độ 115, 200 baud (AT + BAUD8).
- Sử dụng mô-đun HC-06 đã khôi phục của bạn như trước đây.
Bước 3: Hậu trường…
Thư viện SoftwareSerial đi kèm với Arduino IDE có khả năng truyền tối đa 115, 200 bit / giây, vì vậy nó không đủ nhanh để giao tiếp trên tốc độ truyền 1, 382, 400 mong muốn. Cho rằng bảng Arduino mặc định chạy trên 16MHz, tốc độ bit tối đa không nén theo lý thuyết là 16, 000, 000 bit / giây. Chúng tôi tốt cho đến nay!
Dựa trên hiểu biết của tôi về SoftwareSerial.cpp, giao tiếp nối tiếp được thực hiện bằng cách đặt chân đầu ra Cao (= 1) hoặc Thấp (= 0) đối với độ trễ (đến từ tốc độ truyền) giữa các thay đổi.
- Chân đầu ra cao theo mặc định (có nghĩa là không có dữ liệu), sau đó
- một bit Bắt đầu được truyền (kéo chân xuống thấp), sau đó
- 8 bit dữ liệu được truyền từ LSB đến MSB, (+ 5V khi bit 1 và 0 nếu ngược lại) sau đó
- một bit Dừng được truyền (kéo chân lên cao)
Theo cách này, 1 byte được truyền bằng 10 bit.
Tin nhắn chúng ta phải gửi là AT + BAUD8 (không có / n, / r ở cuối). Lệnh này đặt HC-06 trở lại tốc độ 115, 200 baud có thể được xử lý bởi các thư viện thông thường.
Để gửi các bit với tốc độ 1, 382, 400 bit / giây, đối với mỗi bit, chúng ta có thời gian 1/1, 382, 400 giây (đó là khoảng 723,38 ns) cho mỗi bit. Arduino chạy trên 16, 000, 000 Mhz, vì vậy mỗi chu kỳ kéo dài 1/16, 000, 000 giây - tức là 62,5 ns mỗi chu kỳ.
Sử dụng mã lắp ráp AVR, chúng ta có thể sử dụng lệnh OUT để đặt chân đầu ra cao hoặc thấp và NOP để chờ đúng một chu kỳ CPU. Cả hai lệnh đều ăn hết 1 chu kỳ cpu. Bằng cách này, thời gian bit 723,38 ns có thể được bao phủ bởi 11 đến 12 lệnh arduino trên mỗi bit được truyền. Một điều cần xem xét: lệnh OUT đặt toàn bộ byte cùng một lúc, vì vậy chúng ta phải chọn một PORTx nơi đây không phải là vấn đề. Sử dụng ATMEGA328P-PU ví dụ PORTD (arduino chân 0-7) là hoàn hảo cho điều kiện này. Sau khi thiết lập bit, chỉ có thời gian thích hợp trôi qua được thực hiện bởi 10 đến 11 NOP và thế là xong.
Bạn có thể tìm thấy chi tiết tính toán trong tệp Excel bên dưới. Tệp này tạo ra các hướng dẫn lắp ráp cần thiết cho chương trình. Chỉ một số thay thế phải được thực hiện sau khi dán mã đã tạo.
Bước 4: Đọc thêm / Cải thiện khả năng
- Có thể một thư viện SoftwareSerial nhanh hơn có thể được tạo bằng cách sử dụng kỹ thuật được mô tả trong Bước trước.
- FedericoK2 đã tạo ra một công cụ tuyệt vời tạo mã khôi phục HC-06 cho mọi tốc độ bit có thể. Truy cập trang web tại đây: https://tools.krum.com.ar/save_your_hc-06/ Xin cảm ơn FedericoK2
Đề xuất:
Khôi phục nguồn cung cấp điện cho PC cũ: 12 bước (có hình ảnh)
Khôi phục nguồn cung cấp điện cho PC cũ: Kể từ những năm 1990, thế giới đã bị PC xâm chiếm. Tình hình vẫn tiếp tục cho đến ngày nay. Các máy tính cũ, cho đến năm 2014 … 2015, phần lớn đã không còn sử dụng được nữa. Vì mỗi máy tính đều có nguồn điện nên có một số lượng lớn chúng bị bỏ rơi dưới dạng rác thải
Khôi phục Game Boy hoặc các thiết bị điện tử tương tự: 7 bước (có Hình ảnh)
Khôi phục Game Boy hoặc các thiết bị điện tử tương tự: Trước hết, Cảm ơn bạn đã xem hướng dẫn của tôi! Bạn thật tuyệt vời. Thứ hai, tôi đã dành rất nhiều thời gian cho video YouTube nên hãy xem nó, nó giải thích tất cả. Băng hình:
L.A.R.S. (Hệ thống khởi chạy và phục hồi): 7 bước (có hình ảnh)
L.A.R.S. (Hệ thống Khởi chạy và Phục hồi): Tổng quan Dự án này là một Hệ thống Khởi chạy và Phục hồi (LARS) được tạo thành từ các mô hình và tổ hợp khác nhau. Tất cả cùng nhau, chúng đại diện cho một hệ thống phục hồi thích hợp cho một tên lửa nước tầm thấp. Tên lửa được tạo thành từ nhiều phần, được chế tạo từ
Bộ hẹn giờ NE555 - Định cấu hình Bộ hẹn giờ NE555 trong một cấu hình có thể linh hoạt: 7 bước
Bộ hẹn giờ NE555 | Đặt cấu hình Bộ hẹn giờ NE555 trong một cấu hình linh hoạt: Bộ định thời NE555 là một trong những IC được sử dụng phổ biến nhất trong thế giới điện tử. Nó ở dạng DIP 8, có nghĩa là nó có 8 chân
Cách khôi phục cấu hình mảng RAID miễn phí: 9 bước
Cách khôi phục cấu hình mảng RAID miễn phí: Vì vậy, bạn phải đối mặt với lỗi cấu hình mảng và bạn mất quyền truy cập vào dữ liệu mặc dù nó vẫn được lưu trữ trên các đĩa thành viên. Trong hướng dẫn này, tôi sẽ chỉ cho bạn cách khôi phục cấu hình mảng miễn phí. Bạn có thể sử dụng hướng dẫn này f