Trích:
Nguyên văn bởi dvnccbmacbt
Vâng em dùng CCS để lập trình cho PIC! Nhưng em vẫn chưa hiểu rõ lắm! Nếu ko có Set_tris thì sao? "chuẩn logic 3 trạng thái" là gì vậy? Em còn mù mờ lắm, mong các bác thông cảm giúp. Nếu thấy em mất căn bản quá các bác giúp em một cuốn sách nhé. Em tìm mãi mà không sao giải thích được chỗ này.
|
Nếu bạn không dùng set_tris thì bạn sẽ không đảm bảo được bit tương ứng trong thanh ghi TRIS sẽ mang giá trị mà bạn mong muốn. Do đó, giả sử bạn định xuất thông tin ra chân RB1 chẳng hạn, nhưng bit tương ứng của nó trong thanh ghi TRISB (bit 1) lại được thiết lập là 1, khi đó thông tin mà bạn xuất ra có khả năng không xuất hiện tại chân này (vì nó đang được thả nổi để đọc tín hiệu vào).
Logic 3 trạng thái dùng để giao tiếp giữa các vi mạch nối chung vào 1 bus. Đơn giản là khi muốn dùng một chân nào đó của vi mạch làm ngõ vào thì dùng trạng thái thứ ba, tức là thả nổi nó, không kéo lên Vdd hay kéo xuống Vss như khi dùng làm ngõ ra. Lúc đó trạng thái của chân sẽ do mạch ngoài quyết định, và như vậy chúng ta có thể đọc được trạng thái logic do mạch ngoài thiết lập.
Nếu bạn có học điện tử thì đọc lại phần high-Z, hay tri-state, nếu không học điện tử thì hãy chấp nhận quy định trên: nếu dùng làm ngõ vào thì bit tương ứng trong thanh ghi TRIS tương ứng là '1', nếu dùng làm ngõ ra thì bit đó là '0'.
Thân,