Tôi đang cố gắng gửi lệnh từ ANDROID đến giao thức ELM327/OBD2 (các lỗi Chẩn đoán WIFI). Tôi đã tải xuống api hoặc thư viện từ: https://github.com/pires/android-obd-reader Sự cố api này không có bất kỳ tài liệu nào. Chúng tôi cần trợ giúp về lệnh và giao thức để trao đổi dữ liệu. Cảm ơn!ANDROID ELM327/OBD2 PROTOCOL
Trả lời
Bạn thực sự muốn biết điều gì?
Với giao thức ELM327 khá dễ dàng. Bạn chỉ cần gửi một PID trong ASCII, và bạn sẽ nhận được một câu trả lời trong ASCII. Nó dựa trên việc bỏ phiếu. Vì vậy, bạn sẽ nhận được 1 câu trả lời cho 1 yêu cầu. Miễn là bạn không gửi, bạn không nhận được.
Để chuyển đổi và lệnh nào cần gửi, hãy kiểm tra các liên kết tôi đã cung cấp.
Một số chi tiết liên kết:
Nếu bạn muốn sử dụng thư viện này, bạn nên tải về mã nguồn. Mã nguồn là tự giải thích. Ngoài ra còn có mã nguồn của một ứng dụng ví dụ. Tôi đã cố gắng chạy ứng dụng ví dụ, nhưng nó không làm việc cho tôi. Tuy nhiên, tôi đã xem xét mã nguồn và nó đã giúp tôi cho ứng dụng của mình.
Trong thư viện này, bạn sẽ tìm thấy các truy vấn chính đã được triển khai và dễ sử dụng. Tôi chỉ tìm thấy lỗi trên lớp ObdResetCommand. Lớp này thực hiện các lớp siêu ObdCommand và nó sẽ ghi đè các phương pháp readResult theo cách này:
@Override
public void readResult(InputStream in) throws IOException {
// do nothing
return;
}
Để làm cho nó làm việc, bạn nên loại bỏ phương pháp trọng này để sử dụng các siêu lớp một. Nếu bạn không làm điều đó, câu trả lời sẽ không được đọc và nó sẽ được đọc trong lệnh sau, sao cho mọi câu trả lời sẽ bị trì hoãn một truy vấn.
Tôi hy vọng điều đó sẽ hữu ích.
bạn có thể vui lòng xem Câu hỏi này http://stackoverflow.com/questions/18528792/unable-to-send-atz-command-to-elm-327-after-establishing-connection-with-elm327 –
- 1. @protocol extends @protocol
- 2. Protocol Buffer over socket trong C++
- 3. Sử dụng Google 'Protocol Buffers' trong Arduino
- 4. Commons VFS và Java.net.URL - Thêm hỗ trợ cho "sftp: //" protocol
- 5. ORA-12560: TNS: protocol lỗi bộ chuyển đổi
- 6. mở Graph Protocol - og: phim với link youtube
- 7. lập trình mạng: Chức năng socket: Địa chỉ family family Gia đình Vs Protocol
- 8. Làm thế nào để phát hiện khi nhận được một thông báo Protocol Buffer?
- 9. Có cách nào để truy cập Protocol Buffers với python 3.x không?
- 10. Sử dụng id <protocol> cho chủ sở hữu tệp trong Trình tạo giao diện?
- 11. Scala Case Classes so với Protocol Buffers với Akka qua mạng
- 12. Làm cách nào để chuyển đổi các int không dấu của MySQL sang các Uint32 của Protocol Buffer trong Java?
- 13. Làm thế nào để mã hóa một Map <String, Object> bằng cách sử dụng Protocol Buffers?
- 14. Nếu phương thức Protocol được đánh dấu @required, khi không được triển khai, tại sao trình biên dịch đưa ra cảnh báo chứ không phải lỗi?
- 15. Định nghĩa lại và ĐTV số
- 16. Lỗi biên dịch mã cpp mẫu tiết kiệm
- 17. Khai báo giao thức như @class
- 18. Scala SBT xây dựng dự án đa mô-đun cho các chai runnable
- 19. Phát sinh một lớp mẫu từ chính nó trong C++
- 20. Hiểu về sự thừa kế giao thức trong mục tiêu-C
- 21. Cách sử dụng TinyXml để phân tích cú pháp cho một phần tử cụ thể
- 22. dưa nhanh hơn cPickle với dữ liệu số?
- 23. Làm cách nào để xác định giao thức https trong định tuyến thông số với rspec?
- 24. Làm cách nào để xây dựng URL một cách tin cậy trong C# bằng cách sử dụng các phần?
- 25. Mục mới IIS: \ Sites \ SiteName - Chỉ mục nằm ngoài giới hạn của mảng
- 26. Tôi có thể tham số hóa tên bảng trong câu lệnh đã chuẩn bị không?
- 27. Mở rộng các giao thức cho các lớp Java, bản đồ và trình tự tùy chỉnh trong Clojure
- 28. OCMock: Giao thức giả mạo với các phương thức tùy chọn
- 29. Điều chỉnh JVM với JAVA_OPTIONS bằng cách sử dụng một không gian?
- 30. Cú pháp mục tiêu để chỉ định tên giao thức trong đối số phương pháp
AT Liên kết lệnh được cập nhật. https://www.sparkfun.com/datasheets/Widgets/ELM327_AT_Commands.pdf –
Chỉnh sửa câu trả lời như được đề xuất. –