Programming |  PIC's |  16F84A |  I/O Port A


Maximum current sourced50 mA
Maximum current sunk80 mA

Port B Hardware

PinNameInputOutputDescription
17RA0TTLTTLBi-directional I/O Port A
18RA1TTLTTLBi-directional I/O Port A
1RA2TTLTTLBi-directional I/O Port A
2RA3TTLTTLBi-directional I/O Port A
3RA4TTLTTLBi-directional I/O Port A
T0CKISTODclock input to the TMR0 timer/counter.

Port A Register

Bit Kind Name Description Pwr Other
bit 7 U-0   Unimplemented bit - -
bit 6 U-0   Unimplemented bit - -
bit 5 U-0   Unimplemented bit - -
bit 4 R/W-X RA4 General Purpose I/O bit
1 = pin is > Vih.
0 = pin is < Vil.
x u
bit 3 R/W-X RA3 x u
bit 2 R/W-X RA2 x u
bit 1 R/W-X RA1 x u
bit 0 R/W-X RA0 x u

TRISA Register

BitKindNameDescription Pwr Other
bit 7U-0 Unimplemented bit--
bit 6U-0 Unimplemented bit--
bit 5U-0 Unimplemented bit--
bit 4R/W-1TRISA41 = pin is configured as an input.
0 = pin is configured as an output.
11
bit 3R-1TRISA311
bit 2R/W-1TRISA211
bit 1R/W-1TRISA111
bit 0R/W-1TRISA011

Sample code to initialize PORT A

        BCF     STATUS, RP0         ; select bank 0
        CLRF    PORTA               ; Initialize PORTA by
                                    ; clearing output
                                    ; data latches
        BSF     STATUS, RP0         ; Select Bank 1
        MOVLW   0x0F                ; Value used to
                                    ; initialize data
                                    ; direction
        MOVWF   TRISA               ; Set RA3 through RA0 as inputs, RA4 as output
                                    ; TRISA bits 7 through 5 are always read as 0.