Ðề tài: Pvn Tiny Bootloader
View Single Post
Old 16-05-2008, 09:04 AM   #48
Hard
Đệ tử 2 túi
 
Tham gia ngày: May 2006
Nơi Cư Ngụ: Huế
Bài gửi: 26
:
Send a message via Yahoo to Hard
Hi,
Đúng là ngôn ngữ bậc cao thì nó có làm một vài thao tác như vậy, nên tui muốn hỏi các bác là có cách nào để loại bỏ cái này không? Tui đã dùng cách như sau (xem đoạn code bên dưới) nhưng không được, khi biên dịch nó báo lỗi tùm lum, invalid org
#org 0x0003, 0x1f00 {} // Báo cho trình biên dich biết là khi biên dịch không được bỏ bất kỳ mã lệnh nào vào vùng địa chỉ này.
Nếu các bác để ý thì đó là phần bộ nhớ chương trình từ địa chỉ ngắt đầu tiên đến địa chỉ đầu tiên của BLD. Tuy nhiên, CCS chỉ cho phép bỏ trống từ địa chỉ 0x0033 trở đi thôi, xâm phạm vào vùng địa chỉ ngắt hay reset là không được. Có cách nào để giải quyết vấn đề này không nhỉ?
Theo cách làm của CCS thì BLD của nó đặt ở phần đầu bộ nhớ chương trình nên các chương trình ứng dụng mình viết để nạp bằng BLD phải khai báo lại:
#build(reset = BLD_END + 1, interrupt = BLD_END + 5)
Tui không thích kiểu như vậy vì nếu làm thế thì không thể viết chương trình ứng dụng trên các trình biên dịch khác để dùng BLD được (vì địa chỉ reset luôn là 0x0000).
Có ai có cao kiến nào không?

Thân ái.
Hard vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn