|
Tài trợ cho PIC Vietnam |
Tiny Bootloader Mọi vấn đề liên quan tinybootloader sẽ được tổng hợp ở đây. |
|
Ðiều Chỉnh | Xếp Bài |
|
03-09-2005, 09:51 PM | #1 |
Nhập môn đệ tử
Tham gia ngày: Sep 2005
Bài gửi: 1
: |
Cơ bản về bootloader & tiny bootloader
Chào tất cả mọi người!
Tôi là một người mới tham gia diễn đàn này. Tôi rất muốn tìm hiểu một số khái niệm căn bản, VD như BOOTLOADER, SECTOR, DEVICE ID.... Rất mong nhận được sự hướng dẫn của tất cả mọi người. Mong tin. |
13-10-2005, 05:47 PM | #2 |
PIC Bang chủ
|
Hướng dẫn về tiny bootloader
Đây là bootloader cho các vi điều khiển Microchip PIC
* Nó là bootloader có kích thước nhỏ nhất, ít hơn 100 word bộ nhớ chương trình * Nó là bootloader duy nhất hỗ trợ tất cả các dòng PIC: 16F, 18F, dsPIC (những dòng có hỗ trợ chế độ self-programming - tự nạp lại). Đặc điểm của firmware: * Kích thước chỉ có khoảng 100word (cho tất cả các dòng 16F, 18F, dsPIC, thực ra là nó ít hơn 100 word); * Có thể ghi vào flash, eeprom, và có thể ghi vào các bytes cài đăt (configuration bytes) của dòng 18F * Khi reset, đợi 1 giây để nhận chương trình nạp, nếu không nhận được thì chuyển qua chạy chương trình * File .asm của bootloader rất dễ để chỉnh sửa lại, cho phù hợp với từng loại chip, từng tốc độ truyền nhận. Đặc điểm của phần mềm trên máy tính * Có thể tải chương trình vào flash (trong phiên bản này của bootloader, cho phép cài đặt các byte cài đặt (configuration bytes) và có thể thay đổi dễ dàng theo từng loại PIC) * Làm việc với tất cả các dòng PIC đã nêu trên; tự động nhận ra nội dung file HEX và dòng PIC * Ghi nhớ cài đặt cuối (thuận tiện cho người dùng khi thao tác với một loại PIC) * Trong trường hợp lỗi, nó sẽ truyền một tín hiệu ngược lại cho máy tính để tái đồng bộ giữa máy tính và PIC; * Chế độ giao tiếp có thể được thay đổi, có thể dùng bất kỳ cổng COM nào với tốc độ baud nào Khái niệm chung về bootloader Một bootloader là một chương trình nằm trong vi điều khiển, và giao tiếp với máy tính (thông qua giao tiếp nối tiếp). Bootloader nhận một chương trình (đã được dịch ra thành file HEX) từ máy tính và ghi nó vào bộ nhớ flash của vi điều khiển thông qua một phần mềm trên máy tính, sau đó chạy chương trình đó trên vi điều khiển. Bootloader chỉ có thể được dùng với những vi điều khiển nào cho phép ghi vào bộ nhớ flash thông qua phần mềm trên máy tính. Bản thân bootloader phải được ghi vào trong bộ nhớ flash bằng một mạch nạp khác. Để bootloader hoạt động, sau khi nhấn reset, một lệnh "goto bootloader" phải nằm ở địa chỉ đầu tiên của chương trình vi điều khiển. Có 2 loại bootloader, một số loại đôi khi cần người dùng đặt lại địa chỉ các dòng lệnh đầu, một số khác thì tự bản thân nó đặt những dòng lệnh đầu của người dùng vào một địa chỉ khác khi mà bootloader đã nằm sẵn ở đó, và quay trở lại chương trình của người dùng khi kết thúc đoạn chương trình bootloader. Trong trường hợp này, tiny bootloader tự động đem các vị trí đầu của chương trình người viết, và đặt ở phía dưới cùng với chương trình bootloader (thực ra đoạn chương trình này chỉ tối đa có 4 dòng lệnh). Các bạn lưu ý rằng địa chỉ 0x0004 đã là địa chỉ bắt đầu ngắt. Chính vì vậy, nếu các bạn lập trình từ vị trí 0x0000 thì cũng chỉ viết được tối đa 4 dòng lệnh, sau đó phải nhảy đến chương trình chính. Như vậy, tiny bootloader sẽ thực hiện thao tác, cắt 4 dòng đầu tiên từ 0x0000 đến 0x0003 của các bạn, thay bằng dòng lệnh GOTO BOOTLOADER. Và nó tự động đặt 4 dòng lệnh của các bạn nằm ngay phía trên chương trình bootloader (xem hình trên).Sau đó, chạy chương trình tinybootloader phía bên dưới. Rồi nó quay lên chạy 4 dòng lệnh của các bạn. Kết thúc 4 dòng này, nó lại trở về vị trí chương trình chạy bình thường của các bạn ở bên trên. Trong bài viết sau, tôi sẽ đề cập tới việc cài đặt và sử dụng tiny bootloader. Thú thực với các bạn rằng, tôi dùng tiny bootloader từ lâu, nhưng một năm trở lại đây, thấy tính năng của nó quá tốt, cũng ngỡ ngàng. Nó nạp được cho cả dsPIC luôn rồi thì không vấn đề gì mà không dùng nó. Nội việc viết đoạn chương trình giao tiếp RS232 mà tôi nghĩ lúc nào cũng cần thiết, thôi thì dùng bootloader luôn cho tiện. 2 đoạn cuối là nhận xét cá nhân, các bạn không cần quan tâm chi tiết. Chúc vui.
__________________
Công ty TNHH Thương mại và Giao nhận R&P store.hn@rpc.vn - store.hcm@rpc.vn Học PIC như thế nào? thay đổi nội dung bởi: falleaf, 13-10-2005 lúc 05:55 PM. |
13-10-2005, 06:12 PM | #3 |
PIC Bang chủ
|
Phần cứng của tiny bootloader các bạn làm theo sơ đồ sau:
Phần mềm, các bạn có thể down load tại đây: http://www.etc.ugal.ro/cchiculita/so.../tinybld19.zip Đây là phiên bản tinybld19
__________________
Công ty TNHH Thương mại và Giao nhận R&P store.hn@rpc.vn - store.hcm@rpc.vn Học PIC như thế nào? |
05-12-2005, 03:32 AM | #4 |
PIC Bang chủ
|
Trên đây là danh sách những chip đã được kiểm tra là nạp được với tiny bootloader. Những chip được đánh dấu màu xanh đậm là những chip đã được tác giả test và dùng thường xuyên. Những chip màu xanh là những chip đã được test và verify. Còn những chip màu xanh tối là những chip đã được phản hồi là nạp được. Riêng cá nhân tôi, đã sử dụng tiny bootloader nạp cho các dòng PIC sau: 16F876, 16F876A, 16F88, 16F877, 16F877A Tất cả đều hoạt động tốt, và chưa bị một lỗi nào, ngoại trừ quên bấm nút reset. Nhưng nay, phiên bản mới này đã cho phép reset bằng chương trình, vì thế, tôi tin rằng phiên bản mới này sẽ không gây bất kỳ trở ngại nào cho người dùng. Chúc vui.
__________________
Công ty TNHH Thương mại và Giao nhận R&P store.hn@rpc.vn - store.hcm@rpc.vn Học PIC như thế nào? |
05-12-2005, 03:37 AM | #5 |
PIC Bang chủ
|
Các bạn lưu ý nút reset bằng phần mềm, nếu đường dây các bạn nối quá dài, cần nối một con điện trở kéo lên 1K và một diode (trong hình màu xanh mờ). Nhưng điện trở 4K7 nối vào chân MCLR và VDD thực chất khi thiết kế mạch reset bằng tay các bạn đã có rồi. Chính vì vậy không cần thêm vào.
Còn lại tất cả mạch đều đơn giản giống như mạch giao tiếp RS232 bình thường. Các bạn vẫn có thể dùng bootloader để giao tiếp RS232 rất tốt, không cần làm bất kỳ điều gì khác. Chúc vui.
__________________
Công ty TNHH Thương mại và Giao nhận R&P store.hn@rpc.vn - store.hcm@rpc.vn Học PIC như thế nào? |
16-03-2024, 01:58 PM | #6 |
Nhập môn đệ tử
|
Adult games: dating for spicy meetups
A unique encounter, with an emphasis on safety
Actual Women
__________________
Womans from your town |
Hôm qua, 07:31 PM | #7 |
Đệ tử 1 túi
|
8yo GIRLS PHOTO 18yo GIRLS FILE SHARING
KIDS TANGO LIVE ARCHIVE OMEGLE FILES CLOUD
WEBSITE: OPEN IN AN ANONYMOUS BROWSER (the link does not work in other browsers) http://torx5mtxatfovjmdizm27tsqusa4b...pl5xzsad.onion LINK 218GB VIDEOS FOR TORRENT CLIENT: magnet:?xt=urn:btih:abd5aaed52b5994fe54136701c4c18 156bd28415
__________________
Womans from your town |
25-02-2006, 08:20 PM | #8 |
Nhập môn đệ tử
Tham gia ngày: Jun 2005
Bài gửi: 6
: |
Em đã test và chạy tốt cho dsPIC4012, bản này còn có thêm tính năng kiểm tra: Check PIC hay hơn so với các phiên bản trước đó. -> Bản tinybootloader này rất tuyệt.
thay đổi nội dung bởi: 4MD, 25-02-2006 lúc 08:23 PM. |
28-02-2006, 09:32 PM | #9 | |
Đệ tử 4 túi
Tham gia ngày: May 2005
Bài gửi: 83
: |
Trích:
|
|
09-03-2006, 05:38 PM | #10 | |
Trưởng lão PIC bang
|
Trích:
__________________
Biển học mênh mông, sức người có hạn. Đang gặp vấn đề cần được giúp đỡ? Hãy dành ra vài phút đọc luồng sau: http://www.picvietnam.com/forum/showthread.php?t=1263 |
|
21-03-2006, 06:51 PM | #11 | |
Đệ tử 3 túi
Tham gia ngày: Jun 2005
Bài gửi: 56
: |
Trích:
Tiny Bootloader có nhược điểm là nó cần lệnh goto trong 4 word đầu tiên của file hex. Vì vậy nó không làm việc với một số trình dịch. Đáng tiếc nhất trong đó có hai phiên bản mới nhất của HTPIC là HTPICC9.50 PL3 và HTPICC18 9.50. Nhưng với phiên bản 8.05PL2 và 8.35PL3 lại chạy rất tốt. Em hỏi trên forum của bọn HTPIC thì mod trả lời, em làm theo cũng chẳng chạy. Trên diễn đàn Microchipc.com có một chú người nhật đưa ra giải pháp khác phục nhưng chỉ chạy với bản 9.50Lite còn bản "xịn" thì không chạy |
|
22-03-2006, 06:50 PM | #12 | ||
Đệ tử 4 túi
Tham gia ngày: May 2005
Bài gửi: 83
: |
Trích:
Trích:
Có lẽ do bước 3 tôi đã làm sai , anh có thể cho 1 chương trình mẫu tham khảo đc ko , tôi dùng C30 |
||
22-03-2006, 07:32 PM | #13 | |
Trưởng lão PIC bang
|
Trích:
http://www.picvietnam.com/forum//showthread.php?t=333 Nếu đúng là bước 3 bạn làm không tốt thì tôi sẽ bàn tiếp về việc viết code trong C30 cho tiny bootloader. Thân,
__________________
Biển học mênh mông, sức người có hạn. Đang gặp vấn đề cần được giúp đỡ? Hãy dành ra vài phút đọc luồng sau: http://www.picvietnam.com/forum/showthread.php?t=1263 |
|
11-08-2008, 08:00 PM | #14 |
Đệ tử 5 túi
Tham gia ngày: Jan 2008
Bài gửi: 96
: |
Hình dung về Bootloader ?
Đọc xong phần bootloader, mình chợt nghĩ: Nó giống như là "hệ điều hành" của chip VĐK, tuỳ chọn cho VĐK nạp chương trình mới hay là chạy chương trình cũ đã nạp trước đó.
Việc hình dung nôm na như nhế có thể giúp bạn dể nắm bắt và dể nhớ về Bootloader. thay đổi nội dung bởi: minhsondaklak, 12-08-2008 lúc 09:22 AM. |
15-11-2013, 10:05 PM | #15 |
Nhập môn đệ tử
Tham gia ngày: Jul 2013
Bài gửi: 4
: |
Xin code tiny bootloader cho pic16f877a qua giao tiếp RS485
mình mới tìm hiểu về tiny bootloader và đã thử thành công qua giao tiếp RS232, hiện tại mình đang sử dụng giao tiếp RS485 và có ý tường là dùng tiny bootloader qua RS485 (mình kết nối max485 với chân RX, TX của pic, chân điều khiển Max485 là RC5, thạch anh 20M, tốc độ 9600) mình ko biết nhiều về lập trình asm nên ko biết sửa code trong tiny bootloader cho phù hợp, mong các bạn giúp đỡ
|
|
|
Similar Threads | ||||
Ðề tài | Người gửi | Chuyên mục | Trả lời | Bài mới |
Microchip Bootloader | falleaf | Bootloaders - Programmers - Debuggers - Emulators | 2 | 20-05-2017 11:43 AM |
Pvn Tiny Bootloader | ntc | Tiny Bootloader | 52 | 31-10-2012 01:27 PM |
xin bootloader của pic18f4331 | hoangminh1234 | Tiny Bootloader | 30 | 24-12-2011 02:38 PM |
Tiny bootloaders | falleaf | Tiny Bootloader | 15 | 01-02-2010 03:13 PM |
Xin file hex bootloader của PIC16F84A | hanhluckyly | Tiny Bootloader | 1 | 18-10-2006 09:36 PM |