View Single Post
Old 28-11-2006, 08:40 PM   #22
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
Ồ, xin lỗi bạn chinhha nhé, không hiểu sao hai post vừa rồi tôi lại nghĩ là bạn muốn dùng RAM để lưu các số thực. Nếu dùng Flash thì không có vấn đề gì khi bạn muốn dùng 128 phần tử trong một mảng.

Tôi nói thêm một ít về RAM và ROM thôi, không cần phải dài dòng. Chúng ta dùng RAM trong trường hợp cần biến để tính toán khi chương trình thực thi, chúng ta thường dùng ROM để lưu trữ các hằng (số, chuỗi, ký tự, ...). Chúng ta vẫn có thể dùng RAM để lưu trữ các hằng, nhưng như vậy là lãng phí, vì dung lượng RAM thường nhỏ hơn dung lương ROM khá nhiều lần.

Đối với PIC nói chung, và PIC16 nói riêng, việc lưu dữ liệu trong ROM đòi hỏi một phương pháp truy cập dữ liệu khác với phương pháp dùng cho RAM, vì kiến trúc RISC của PIC. Tuy nhiên, các trình biên dịch cấp cao (như CCS chẳng hạn) có thể xử lý những thao tác đó cho chúng ta, do vậy, điều chúng ta cần quan tâm chỉ là khai báo cho đúng cú pháp để trình biên dịch hiểu được chúng ta muốn lưu dữ liệu vào đâu. Với một số PIC có khả năng tự ghi vào bộ nhớ chương trình thì dữ liệu hằng không nhất thiết là không thể thay đổi, nghĩa là chúng ta có thể cập nhật các hằng đó khi chương trình thực thi, hay thông qua một firmware tương tự như bootloader chẳng hạn. Với các PIC không có khả năng tự ghi vào bộ nhớ chương trình, chúng ta vẫn có giải pháp cho việc cập nhật các dữ liệu hằng, đó là EEPROM của PIC. Tuy nhiên, EEPROM thường có dung lượng nhỏ hơn RAM (trong các PIC), và cũng đòi hỏi một phương pháp truy cập khác với RAM.

Hy vọng đã đáp ứng được yêu cầu của bạn.

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