View Single Post
Old 23-07-2008, 02:45 AM   #8
namqn
Trưởng lão PIC bang
 
Tham gia ngày: Feb 2006
Nơi Cư Ngụ: Tp. HCM, Việt Nam
Bài gửi: 3,025
:
Send a message via Yahoo to namqn
Trích:
There are two types of bootloaders, some that require that the user reallocate his code and others that by themselves reallocate the first 4 instructions of the user program to another location and execute them when the bootloader exits
Đoạn văn bản trên nên được dịch như sau:
Trích:
Có hai loại bootloader, một loại yêu cầu người dùng phải tái định vị code của anh ta, và loại kia tự tái định vị 4 lệnh đầu tiên của chương trình ứng dụng của người dùng vào một vị trí khác và thực thi chúng (4 lệnh đã được tái định vị) khi bootloader thoát.
Tiny Bootloader thuộc loại sau. Do đó tôi mới nói rằng bạn không cần phải chỉnh sửa gì trong code, mà chỉ phải thiết lập lại linker script để tránh việc bootloader bị ghi đè lên.

Các lệnh của dsPIC dùng 2 đơn vị PC. Do đó, nếu chương trình bootloader chiếm 100 lệnh thì linker script của bạn phải dành ra 2*100 địa chỉ cho bootloader. Làm chính xác việc này thì bạn sẽ mô tả phần program trong linker script như sau (cho dsPIC30F4011 mà bạn đang nói đến):
Code:
program (xr) : ORIGIN = 0x100,    LENGTH = ((16K * 2) - 100 * 2)
Lỗi bạn đang gặp cho thấy bạn chưa ghi vào dsPIC được, hoặc ghi vào được nhưng phần mềm trên host PC không nhận được thông tin phản hồi như vậy.

Vì bạn muốn dùng bộ dao động nội của dsPIC, tôi muốn hỏi bạn đã đọc luồng này chưa:
http://www.picvietnam.com/forum/showthread.php?t=326

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
namqn vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn