Làm cách nào để nhập tệp hex vào python?
Dữ liệu nhị phân được lưu trữ trong tệp hex được sử dụng rộng rãi, đặc biệt là trong các ứng dụng hệ thống nhúng. python setup.py develop8 cung cấp cho bạn quyền truy cập có lập trình vào nhiều định dạng và cung cấp API thực tế để làm việc với dữ liệu đó Show Tải phiên bản mới nhất từ Github Cài đặtpip install objutils hoặc chạy python setup.py develop trên cài đặt cục bộ của bạn điều kiện tiên quyết
Đặc trưng
Các định dạng HEX được hỗ trợpython setup.py develop8 hỗ trợ nhiều định dạng HEX Hiện hành
lịch sử
codec là tham số đầu tiên cho hàm dump() / load(), e. g img = objutils.load("ihex", "myHexFile.hex") # Load an Intel HEX file... objutils.dump("srec", "mySRecFile.srec", img) # and save it as S-Records. Những bước đầu tiênNếu bạn quan tâm, những gì mà python setup.py develop8 cung cấp cho bạn ngay lập tức, hãy tham khảo tài liệu về Scripts Trong mọi trường hợp, bạn nên làm việc thông qua hướng dẫn sau Trước tiên hãy nhập tất cả các lớp và hàm được sử dụng trong hướng dẫn này from objutils import Image, Section, dump, dumps, load, loads Mọi thứ bắt đầu với thế giới xin chào sec0 = Section(start_address = 0x1000, data = "Hello HEX world!") Các tham số hàm tạo cho Phần phản ánh nội dung của chúng. Một vùng liên tục của bộ nhớ với một địa chỉ bắt đầu dữ liệu không nhất thiết phải là chuỗi, mảng. mảng**s, **byte, bytearray cũng sẽ làm được hoặc từ quan điểm nội bộ. mọi thứ có thể chuyển đổi thành bytearray đều có thể được sử dụng Ghi chú. start_address và data là các đối số vị trí, vì vậy không cần sử dụng chúng làm từ khóa (chỉ để minh họa) Bây giờ hãy kiểm tra phần của chúng tôi ________số 8 hexdump() cung cấp cho chúng ta, thứ mà trong thế giới tin tặc được gọi là hexdump chính tắc Các tệp HEX thường bao gồm nhiều phần, vì vậy hãy tạo một phần khác sec1 = Section(0x2000, range(1, 17)) sec1.hexdump() 00002000 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f 10 |................| --------------- 16 bytes --------------- Bây giờ, hãy dán các phần của chúng ta lại với nhau pip install objutils0 Hình ảnh rõ ràng là nơi chứa các phần và chúng luôn liên quan nếu bạn đang tương tác với các tệp HEX dựa trên đĩa pip install objutils1 Tệp kết quả có thể được kiểm tra từ dòng lệnh pip install objutils2 Và tải lại python setup.py develop0 Điều này dẫn đến thành ngữ chuyển đổi python setup.py develop1 Ghi chú. các định dạng ở trên được liệt kê là lịch sử vì một lý do chính đáng là lịch sử. chúng chỉ rộng 16 bit, vì vậy nếu bạn muốn chuyển đổi, hãy nói tệp srec cho MCU 32 bit đối với chúng, bạn không gặp may OK, chúng tôi đang bắt đầu một phiên khác python setup.py develop2 Hai phần có dải địa chỉ liên tiếp được nối thành một, điều này có thể đúng hoặc không như bạn mong đợi Vì lý do này Hình ảnh có tham số tham gia python setup.py develop3 Một đặc điểm khiến các objutil khác biệt với các thư viện khác thuộc loại này là quyền truy cập điển hình. Chúng tôi đang bắt đầu với một hình ảnh mới python setup.py develop4 Bây giờ chúng tôi đang viết một chuỗi vào hình ảnh của chúng tôi python setup.py develop5 Chú ý sự khác biệt? Sử dụng các hàm write() và read() nếu bạn muốn truy cập các byte đơn giản Nhưng cũng có hỗ trợ cho các loại số python setup.py develop6 Các loại sau đây được hỗ trợ
Trong mọi trường hợp, các hậu tố về tuổi thọ _ be hoặc _l là bắt buộc Mảng cũng được hỗ trợ python setup.py develop7 Điều này kết thúc hướng dẫn của chúng tôi bây giờ, nhưng có nhiều thứ hơn để làm theo Tài liệuĐể có tài liệu đầy đủ, bao gồm cài đặt, hướng dẫn và tài liệu PDF, vui lòng xem Readthedocs Lỗi/Yêu cầuVui lòng sử dụng trình theo dõi vấn đề GitHub để gửi lỗi hoặc yêu cầu các tính năng Người giới thiệuDưới đây là tổng quan về một số định dạng tệp hex cổ điển tác giả
Giấy phépDự án này được cấp phép theo Giấy phép Công cộng GNU v2. 0 Sự đóng gópNếu bạn đóng góp mã cho dự án này, bạn hoàn toàn cho phép mã của mình được phân phối theo Giấy phép Công cộng GNU v2. 0. Bạn cũng đang ngầm xác minh rằng tất cả mã đều là tác phẩm gốc của bạn Hex có hoạt động trong Python không?Hàm Python hex()
. Chuỗi trả về luôn bắt đầu bằng tiền tố 0x. The hex() function converts the specified number into a hexadecimal value. The returned string always starts with the prefix 0x .
Làm cách nào để chuyển đổi từ hex sang chuỗi Python?Phương pháp 1. Sử dụng fromhex() và decode()
. Không có thư viện bổ sung được yêu cầu cho phương pháp này. |