- Giới thiệu
- Port A có 8 bit. Các bit của thanh ghi TRISA và ANSEL sẽ điều khiển các chân của PortA.
- Tất cả các chân của PORTA điều có chức năng digital I/O.
- 5 chân trong PortA có chức năng analog Input (ký hiệu bằng An).
- 5 chân có chức năng analog PortA là:
- RA0=AN0 ( Bit quyết định là ANS0 của thanh ghi ANSEL)
- RA1=AN1 ( Bit quyết định là ANS1 của thanh ghi ANSEL)
- RA2=AN2 ( Bit quyết định là ANS2 của thanh ghi ANSEL)
- RA3=AN3 ( Bit quyết định là ANS3 của thanh ghi ANSEL)
- RA5=AN4 ( Bit quyết định là ANS4 của thanh ghi ANSEL)
Thanh ghi ANSEL và ANSELH

Sơ đồ cấu hình chân VĐK
2. Cấu hình:
- Nhìn sơ đồ để muốn VĐK thực hiện chức năng Digital PORTA thì các bit tương ứng thanh ghi ANSEL phải ở mức 0.
- Làm cách nào để khai báo chức năng Digital outputs của PORTA.
// The PORTA.2 pin is configured as a digital input.
// All other PORTA pins are digital outputsANSEL = ANSELH = 0; // All I/O pins are configured as digitalPORTA = 0; // All PORTA pins are clearedTRISA = 0b00000100; // All PORTA pins except PORTA.2 are configured as outputs…
Trong lệnh trên ta gán TRISA = 0b00000100; là đang thực hiện gán mã nhị phân, chúng ta có thể gán câu lệnh tương đương: TRISA = 4; hay TRISA = 0X04; (để hiểu thêm các bạn xem tài liệu về lập trình C hay Kỹ thuật số hay lên mạng tìm tài liệu chuyển đổi các cơ số).
3. Ví dụ:
- Thực hiện chương trình chớp tắt PORTA với thời gian 500ms.
- Phần cứng:

- Code chương trình:
/*
*Program name: Blink Led at Port.
*Copyright: Nguyen Huu Luan (nvnnhl.wordpress.com)
*Description:
*Configuration:
Microcontroller: PIC16F887
Oscillator: HS, 20.000MHz
SW: miKro C V7.20
*Note:
*/void main() {
ANSEL =0; // All I/O pins are configured as digital
TRISA = 0; //All PORTA pins are configured as outputs
PORTA= 0; //All PORTA pins are clearedwhile(1){
PORTA = 0; //ALL Led PORTA ON
delay_ms(500); //Waiting 500ms
PORTA=0XFF; //ALL Led PORTA ON
delay_ms(500); //Waiting 500ms}
}
- Các bạn tải Project (viết bằng phân mềm Mikroc7.2 + file mô phỏng (mô phỏng proteus 8.6 trở lên)
- Tải file hướng dẫn vẽ mạch trên phần mềm Proteus + code tại đây: https://nvnnhl.wordpress.com/2018/11/09/bai-1-pic-vs-mikroc-huong-dan-mo-phong-lap-trinh-chop-tat-porta/
Đăng nhận xét