View Single Post
Old 25-04-2009, 11:26 PM   #2
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 now_nev View Post
Mình đang viết chương trình nhận một mảng các dữ liệu từ pc vào vđk qua rs232.
nếu khai báo trong cblock:

cblock 0x20
array: 16
endc

thì khi mún truy cập phần tử thứ i phải dùng kiểu: array+i
có cách nào để truy cập phần tử thứ i mà i đc lưu trong một thanh ghi ko?
hic, các bạn giúp mình với!!
thx
Bạn đọc mục 2.5 - Indirect Addressing trong datasheet của PIC16F877A để biết cách thực hiện điều trên. Nói vắn tắt, bạn khởi tạo thanh ghi FSR bằng địa chỉ của array, sau đó dùng thanh ghi INDF để truy xuất dữ liệu do thanh ghi FSR trỏ đến. Để truy xuất phần tử thứ i của array, bạn sẽ thay đổi giá trị thanh ghi FSR để nó trỏ đến phần tử đó.

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