How to Read from Input/Output Ports: PIC Tutorial 5

So far, we have been composing to Port A in order that we are able to switch an LED on and off. At this point, we will see how we are going to read the I/O pins on the ports.

PIC Tutorial - 4.........................................PIC Tutorial - 6

Reading Input/Output Ports

This is exactly to ensure that we are able to link an external circuit, and influence any specific outputs it offers.

Should you memorize from our earlier courses, if you want to establish the I/O ports, we needed to jump from Bank 0 to Bank 1. We will accomplish that initially:




At this point we have fixed bit 0 of Port A to input. we must now examine if the pin is high or low. To accomplish this, one can utilize just one of two instructions:


The BTFSC instruction signifies ‘Do a bit test on the register as well as bit we designate.

In case it is a 0, in that case we omit the subsequent instruction’. BTFSS implies ‘Do a bit test in the register and bit we establish. In case it is set to a 1, then we bypass the subsequent instruction.

Which one we utilize, is determined by precisely how we wish our program to respond while we study the input. As an illustration, in case we are just awaiting the input to be a 1, then we might be able to utilize the BTFSS instruction in the following manner:


Code here:

BTFSS               PortA,0Goto startCarry on here:


The program would just shift onto ‘Carry on here’ provided that bit 0 on PortA is scheduled to a 1.

We will currently write a program which could prompt an LED at one rate, however if a switch is confined it would flash the LED two times as slower.

It is possible to perhaps exercise this program out for on your own, still We have incorporated the listing somehow.

You could attempt and author the entire program, in order to check if in case you have understood the principles. We will be using the equivalent circuit as before, with the inclusion of a switch attached RA0 of the PIC and the positive rail of our supply.





What We have accomplished here is to switch the LED on. I subsequently determine if the switch is closed off.

In case it is confined, next I connect to our delay subroutine. This provides us the equivalent delay as before, however we are at this point contacting it two times.

The same thing applies to whenever the LED is off. In case the switch is not shut, then we have our previousy recorded on and off periods.

Have you been following these lessons from the beginning, you might be seeking to grasp that you have currently discovered ten of the 35 instructions for the PIC 16F84! And every bit of these happen to be learned merely by switching an LED on and off.

Leave a Comment