Hướng dẫn về IO trong họ PIC18Fxx

Đây là thao tác cơ bản nhất của IC lập trình PIC so với những họ IC lập trình khác có thao tác I/O rất mạnh , mức độ chống nhiễu cao . Có rất nhiều ứng dụng sử dụng thao tác I/O : điều khiển thiết bị , điều xung , LCD , | Các thao tác I/O 1/ Giới thiệu : Đây là thao tác cơ bản nhất của IC lập trình PIC so với những họ IC lập trình khác có thao tác I/O rất mạnh , mức độ chống nhiễu cao . Có rất nhiều ứng dụng sử dụng thao tác I/O : điều khiển thiết bị , điều xung , LCD , 2/ Các thanh ghi tham gia vào thao tác I/O : Có 3 họ thanh ghi tham gia vào thao tác I/O : TRISx , PORTx , LATx a/ TRISx : Đây là một thanh ghi cho phép một chân I/O nào đó là input hay output. Cấu trúc thanh ghi TRISx : VD : TRISB B7 B6 B5 B4 B3 B2 B1 B0 - Là một thanh ghi 8 bit , mỗi bit tương ứng cho một pin. - Một bit như vậy có hai trạng thái : o 0 : pin tương ứng là output o 1 : pin tương ứng là input - Nhờ có thanh ghi này mà ta tường minh được việc IN / OUT dữ liệu , đồng thời chống được nhiễu tín hiệu. b/ PORTx : Đây là thanh ghi quan trọng trong việc IN/OUT dữ liệu , nó chứa trạng thái của các chân I/O. - Cách hoạt động : thanh ghi này phụ thuộc hoàn toàn vào trạng thái của TRISx. o Nếu TRISx là IN thì PORTx chỉ có thể là trạng thái từ bên ngoài tác động vào. Mọi thao tác gán giá trị cho thanh ghi PORTx là vô nghĩa. o Nếu TRISx là OUT thì PORTx chỉ được gán giá trị bằng chương trình. Mọi hành động dùng điện thế bên ngoài nhằm ép buộc mức logic cho pin đều không tác dụng lên PORTx. - Cấu trúc thanh ghi PORTx : VD : PORTx B7 B6 B5 B4 B3 B2 B1 B0 o Thanh ghi có độ dài 8 bits o Mỗi bit đại diện cho một pin tương ứng. o Trong quá trình thao tác thanh ghi này các bạn cần nắm rõ các thao tác che bít , dịch bít nhằm hạn chế ảnh hưởng của nó. c/ LATx : Thanh ghi này cũng tương tự thanh ghi PORTx tuy nhiên chỉ sử dụng trong trạng thái các pin là output. Trong thực tế nếu các bạn muốn tách bạch việc nhập xuất thì có thể sử dụng thanh ghi này. Còn theo tôi thì chỉ cần thao tác tốt trên thanh ghi PORTx là đã đủ. 3/ Các hàm thao tác I/O : Để thao tác I/O ta có thể dùng các hàm có sẵn của CCS C tuy nhiên điều này là không khuyến khích do các hàm này không được linh động và sẽ làm cho ta khó khăn khi chuyển đổi sang các ngôn ngữ khác như MPLAB hay MIKRO C.

Bấm vào đây để xem trước nội dung
TỪ KHÓA LIÊN QUAN
TÀI LIỆU MỚI ĐĂNG
196    59    1    29-04-2024
Đã phát hiện trình chặn quảng cáo AdBlock
Trang web này phụ thuộc vào doanh thu từ số lần hiển thị quảng cáo để tồn tại. Vui lòng tắt trình chặn quảng cáo của bạn hoặc tạm dừng tính năng chặn quảng cáo cho trang web này.