View Single Post
Old 17-05-2008, 09:05 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 doremino View Post
các anh ơi !em đang làm bài tập với pic16f877A trên Mikro C
em muốn lấy dữ liệu từ một chân nào đó chẳng hạn như RB2 của portB gán cho biến ktr0
thì chỉ cần ghi :
Code:
ktr0= PortB,2;
nhưng không biết sao khi thực thi chương trình nó cứ lấy dữ liệu từ chân RB0 miết à!!!(mở mã assemlly ra thì thấy đoạn code đó ứng với PortB,0 không phải là portB,2)!!! em thử với các chân khác cũng vậy!!liệu có phải em viết code sai ko?
Theo tài liệu hướng dẫn đi kèm với mikroC (gọi lên bằng cách bấm phím F1), trong đoạn mikroC Specifics, mục 'Accessing Individual Bits', để truy xuất chân RB2 của port B, bạn sẽ viết như sau:
Code:
ktr0 = PORTB.F2
Cú pháp chính xác là dùng dấu chấm chứ không dùng dấu phẩy như bạn.

Chuyện bạn đã nêu không có gì kỳ lạ cả, phần ",2" phía sau lệnh mà bạn đã viết không có ý nghĩa đối với mikroC, do đó đã bị bỏ qua. Khi gán PORTB cho một biến kiểu bit, mikroC sẽ tự động hiểu là bạn muốn dùng bit thấp nhất của thanh ghi PORTB.

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