View Single Post
Old 01-12-2008, 06:32 PM   #6
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:
Nguyên văn bởi lequocbao View Post
Đúng cái em cần rồi đây!
Vậy anh Namqn ơi nếu mình lưu con số >=256D vào eeromp thì sao anh (em đang dùng pic8).Em đoán như vậy là bị tràn phải không anh?(khi bị tràn thì ô nhớ đó sẽ chứa dữ liệu gì vậy anh?)
Tại vì write_eeprom(addr,value); thì addr chỉ là 01 ô nhớ (dài 8 bit) không thể chứa được con số >=256D.
Vậy với pic8 thì mình có cách nào để lưu số >=256D không anh?
Dựa vào một luồng khác tôi biết bạn đang dùng CCS C. Trình dịch này cung cấp 2 hàm itoa() và atoi() để chuyển đổi giữa dạng số nguyên và chuỗi ký tự thể hiện giá trị số nguyên đó. Bạn đọc tài liệu hướng dẫn của CCS C về cách dùng các hàm này.

Để lưu số nguyên 32-bit (4 byte) vào EEPROM, bạn có thể dùng hàm itoa() để chuyển nó thành một chuỗi ký tự, sau đó bạn có thể lưu từng ký tự này vào EEPROM. Để lấy lại giá trị số nguyên từ EEPROM, bạn có thể dùng hàm itoa(). Nếu chỉ cần hiển thị số nguyên đó thì có thể dùng thẳng chuỗi trong EEPROM.

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