Mục lục:
2025 Tác giả: John Day | [email protected]. Sửa đổi lần cuối: 2025-01-13 06:58
Đây là tài liệu hướng dẫn đầu tiên của tôi trên trang web này! Tất cả những người bạn tốt đã đăng rất nhiều thứ trên trang web này, nhiều ý tưởng và sở thích kỳ lạ và kỳ lạ nữa! Nhiều trong số đó tôi đã đọc thỉnh thoảng và bạn đã truyền cảm hứng để tôi cống hiến lại cho Cộng đồng! Mặc dù tiêu đề là "hack" không cần phải nhận được báo động! chúng tôi chỉ đang sửa đổi một số tệp dữ liệu được sử dụng bởi chương trình và nó không phải là bất hợp pháp theo bất kỳ cách nào. Phần mềm được liệt kê ở đây là miễn phí cho mọi người sử dụng và có thể được tải xuống cùng với bất kỳ giao diện người dùng GUI lập trình AVR nào khác cho AVRdude (bản thân nó nằm trong miền công cộng) mà không có bất kỳ giới hạn nào. Bằng cách nào đó thuật ngữ "Hacking" thú vị hơn và chúng ta bắt gặp nhiều bài báo như vậy ngay bây giờ!
"eXteme Burner" là giao diện người dùng giao diện người dùng phổ biến cho Chương trình AVRdude được sử dụng để lập trình chuỗi ATMEL AVR của Bộ điều khiển. (MCU). Chữ 'X' thứ hai là viết hoa trong tên của tiện ích này! Không, đó không phải là lỗi đánh máy của tôi. Có rất nhiều công cụ GUI khác, chẳng hạn như lập trình viên Khazama và lập trình viên BitBurner AVR, v.v. Tôi đã sử dụng eXtreme Burner cho thực hành AVR của mình và nó phục vụ tôi tốt cho các dòng Vi điều khiển phổ biến Atmega 328, 168, Atmega8 hoặc 8A, v.v. Nhưng một ngày nọ khi tôi sử dụng một con chip mới ATTINY44A, tôi đã gặp sự cố. Những người khác cũng vậy (trong các diễn đàn AVR khác nhau đã báo cáo điều này và từ bỏ eXtreme Burner, tìm kiếm các chương trình GUI khác cho AVRdude hoặc đi xuống dòng lệnh và sử dụng AVRdude trực tiếp với các tùy chọn của nó.). Điều này là do thiếu hiểu biết về tính linh hoạt vốn có trong eXtreme Burner! Rốt cuộc, một khi bạn đã quen với GUI có thể đọc bộ nhớ flash AVR, EEPROM và FUSES, tại sao bạn lại đi tìm hiểu một GUI khác? Ở đây tôi trình bày chi tiết cách sửa đổi Công cụ ghi eXtreme của bạn theo cách Cực kỳ! Công cụ của bạn sẽ hoạt động theo cách bạn không muốn và không theo cách nào đó cản trở bạn hoặc hoàn toàn không hoạt động trong một MCU cụ thể.
Những gì bạn cần: Máy tính xách tay với ổ ghi eXtreme, AVR studio bất kỳ phiên bản nào có trình biên dịch AVR-GCC để biên dịch chương trình C của bạn thành tệp Intel Hex để tải vào MPU của bạn, Notepad ++ có cài đặt tiện ích bổ sung để xem và chỉnh sửa 'XML' (xem trong Menu Languages, nó sẽ hiển thị XML như một tùy chọn trong danh sách thả xuống, nếu nó đã được cài đặt sẵn, nếu không truy cập trang Notepad ++ và tải xuống, bạn cũng có thể thực hiện điều đó từ chính Notepad ++ để thêm 'ngôn ngữ bổ sung '). Chọn tùy chọn XML, một dấu chấm sẽ xuất hiện bên cạnh nó. Điều này cho phép bạn xem và chỉnh sửa các tệp XML, đây là định dạng mà bạn sẽ hack các tệp trong bài viết này.
Bước 1: Đặt Chế độ xem XML trong Notepad ++
Bước 2: Hiểu các tệp bạn cần sửa đổi
Trong Extreme Burner, hãy truy cập mục Tệp chương trình của nó tại: C: / Program Files / eXtreme Burner - AVR, có một số thư mục ở đây: Dữ liệu, Trợ giúp, Hình ảnh, Trình điều khiển, v.v. Chúng tôi bắt đầu với thư mục có tên "Dữ liệu ". Khi bạn nhìn vào thư mục này, Deja-Vu! Vì vậy, đây là nơi thông tin cấu hình được lưu trữ! Các tệp XML ở đó: Chips.xml, Fuselayout.xml, clocksystems.xml, Đây là các tệp XML mà bạn sẽ sửa đổi trong Tài liệu hướng dẫn này. Bạn sẽ cần một trình soạn thảo XML. Có rất nhiều trên Web nhưng tôi sử dụng và khuyên dùng Notepad ++ (tiện ích bổ sung để xem và chỉnh sửa tệp XML đã được cài đặt trong cài đặt mặc định của Notepad ++, nếu không, hãy tải xuống và cài đặt tiện ích bổ sung này). Xem ảnh chụp màn hình để biết nơi bạn phải đánh dấu vào "Chế độ xem XML" trong notepad ++. trong bước trước đó.
Bước 3:
Nếu bạn nhìn vào tệp chips.xml trong thư mục dữ liệu nơi eXtreme Burner được cài đặt và cuộn xuống bộ mô tả phần cho thiết bị Attiny44A của bạn hoặc bất kỳ chip nào bạn đang gặp sự cố, bạn sẽ nhận thấy Kích thước trang sai i (64 byte thay vì 32 byte như được cung cấp trong bảng dữ liệu của nó) trong tệp XML trong phần Attiny44, điều này gây ra lỗi và không thể flash tệp Chương trình / hex của chúng tôi vào Bộ vi điều khiển của chúng tôi bằng USB-ASP. Đôi khi dòng chữ ký có thể chứa thông tin không chính xác. Bạn phải đọc phần này và đảm bảo rằng nó chứa thông tin hợp lệ và chính xác cho chip của bạn bằng cách so sánh với biểu dữ liệu chính thức của nó.
Tệp XML này chỉ có thể được đọc bằng trình chỉnh sửa tệp XML.
Ngoài ra, Bất cứ khi nào bạn gặp BẤT KỲ loại lỗi nào khi sử dụng ổ ghi cực cao, chỉ cần nhấp vào "THÔNG TIN CHIP" trong Menu của công cụ ghi của bạn và xem thông tin chip hiển thị có chính xác không (sau khi bạn đã đặt chip trong menu bên dưới Chip (xem ảnh chụp màn hình 1 và 2). Khi bạn nhận thấy sự khác biệt này trong thông tin hiển thị về chip bạn đã chọn và bảng dữ liệu của chip (hoặc thậm chí trong trường hợp chip bạn đang cố gắng flash không được hiển thị trong hộp thoại chọn chip trong eXtreme Burner), bạn phải sửa đổi XML theo cách được mô tả trong tài liệu hướng dẫn của chúng tôi. Bạn có thể thực hiện việc này trước tiên mà không cần sử dụng bất kỳ trình chỉnh sửa xml nào hoặc mở chip.xml!
Bước 4: Thực hiện chỉnh sửa trong tệp XML Chips.xml
Sử dụng cửa sổ Notepad ++, bạn sẽ thực hiện các chỉnh sửa này, chủ yếu là Kích thước trang được đặt thành 32 byte như được cung cấp trong bảng dữ liệu cho Attiny44). Bạn sẽ gặp phải sự cố khi sử dụng chip khác, nhưng các bước đều giống nhau.
Bây giờ bạn sẽ cần thêm một phần khác bên dưới phần này, cho MCU Attiny44A cụ thể của bạn. Vì chip này giống hệt nhau về thanh ghi, kích thước bộ nhớ và mọi thứ, chúng tôi chỉ cần sao chép và dán phần 44A bên dưới nó, trong phần mới này, đổi tên chip thành ATTINY44A thay cho ATTINY44. Chỉ để lấy lại, chúng tôi đã không xóa phần ATTINY44, chúng tôi chỉ thay đổi dòng Kích thước trang trong đó! Chúng tôi chỉ thêm một phần nữa bên dưới nó cho Bộ vi điều khiển 44A của chúng tôi.
Xem các bức ảnh.
Bước 5: Phần mới cho Attiny44A được thêm vào
Bạn chỉ cần sao chép phần trước cho ATTINY44 (sau khi sửa kích thước trang thành 32 byte trong phần XML của nó) và thay đổi tên chip trong dòng XML thành "ATTINY44A", tức là chỉ cần gõ "A"! Tất cả các dòng còn lại đều giống nhau. Hãy cẩn thận để không mắc bất kỳ lỗi đánh máy nào trong XML và không bỏ sót bất kỳ ký tự nào trong dấu ngoặc kép! Nếu bạn làm điều đó là một câu chuyện khác, bạn sẽ tìm hiểu điều gì sẽ xảy ra trong lần tiếp theo khi bạn mở "Xtreme Burner", nó sẽ thông báo "lỗi khi tải tệp XML chip.xml ở dòng số ----", vì vậy bạn sẽ biết và sau đó bạn có thể mở lại tệp XML và kiểm tra xem bạn đã mắc lỗi nào! Lưu tệp của bạn trong Notepad ++ và thoát. Công việc của bạn đã hoàn thành!
Bước 6: Kiểm tra công việc của bạn
Bây giờ chúng ta phải nếm thử Pie hoặc Pudding như bạn muốn gọi nó!
Mở ổ ghi eXtreme và nhìn vào Chip bên dưới Menu, chip Attiny44A mới của bạn sẽ xuất hiện! chọn nó.
nhấp vào Thông tin chip và xác minh các chi tiết là chính xác! Nhìn những bức tranh.
Kết nối bộ lập trình USBASP của bạn với cổng USB và bảng Phát triển của bạn với USBASP và đợi cho đến khi trình điều khiển nhận ra nó, nó sẽ xuất hiện trong "Thiết bị & Máy in". Bây giờ đưa ra "Đọc TẤT CẢ" từ Burner. Bạn sẽ thấy Flash, EEPROM và cầu chì đã đọc thành công, nếu tất cả đều ổn! Các thông báo chẩn đoán sẽ được hiển thị như trong hình.
Bước 7: Ghi vào tệp chương trình / tệp Hex của bạn
Bây giờ, hãy mở bất kỳ tệp hex nào trên máy tính xách tay của bạn từ thư mục dự án AVR của bạn và xem nó nhấp nháy bằng cách cho "Viết Flash" từ Trình đơn Burner.
Xem các thông báo cho biết ghi cho Chip và các hoạt động xác minh đã diễn ra OK!
Nếu không, hãy kiểm tra dây và kết nối từ bảng phát triển của bạn lưu trữ chip và bộ lập trình USBasp của bạn. Đó là nó !
Bài tiếp theo tôi sẽ cho bạn biết cách hack các tệp XML khác! và cách đặt hình ảnh tùy chỉnh của bạn (tôi đã đặt hình ảnh chú chó Tom trung thành của tôi trong menu, cuối cùng trừ một biểu tượng ở bên phải, để tùy chỉnh ổ ghi eXtreme của tôi, được hiển thị trong hình cuối cùng ở trên) trong thanh Menu để đảm bảo với bạn rằng đây là phiên bản được sửa đổi phù hợp với nhu cầu của bạn mà bạn đang sử dụng chứ không phải phiên bản có sẵn! Hãy xem ảnh chụp nhanh của thanh menu với ảnh trong đó (cuối cùng trừ một biểu tượng).
Đối với Cầu chì, bạn có đang sử dụng máy tính cầu chì trực tuyến không? Bạn cũng có thể làm điều đó trong Extreme burner, có một máy tính cầu chì trong tab FUSES để thiết lập tốc độ đồng hồ và các tùy chọn cầu chì! Đôi khi nó không hoạt động với chip của bạn, tôi cũng sẽ cho bạn biết cách hack nó, nó khá đơn giản, bằng cách sử dụng các tệp fuselayout.xml và clocksystems.xml.
Chúc bạn lập trình MCU vui vẻ! Nếu bạn muốn thêm bất kỳ mẹo nào về cách sử dụng eXtreme burner, hãy đăng nó trong phần nhận xét và tôi sẽ rất vui khi đưa ra ý kiến và đề xuất của mình. Hãy chia sẻ ý tưởng của bạn quá!