How to use PIC16F84A pin as input (Code+Proteus simulation)

This post provides an example code to use PIC16F84A pins as inputs. After going through this example, you will understand how to make PIC16F84A pins as inputs and how to read their value in the code. This code is written in C language using MPLAB with HI-TECH C compiler.You can download this code from the ‘Downloads‘ section at the bottom of this page.

Use PIC16F84A pin as input

It is assumed that you know how to blink an LED with PIC16F84A microcontroller. If you don’t then please read this page first, before proceeding with this article.

Following figure shows the circuit used to demonstrate how to get input in PIC16F84A micro-controller.

In this figure, PIC16F84A is running on external crystal of 20MHz[1]. RA0 pin is being used as the input pin. When the push button is in the pushed state then, RA0 pin is high, otherwise RA0 pin is low. Whenever RA0 pin is high, then RB0 pin (Attached with the LED) is also made high just to indicate correct reading of RA0 pin status in the micro-controller.


The code for reading the status of RA0 pin is shown below.

Use PIC16F84A pin as input schematic


Input pin code using PIC16F84A was compiled in MPLAB v8.85 with HI-TECH C v9.83 compiler and simulation was made in Proteus v7.10. To download code and Proteus simulation click here.


For more detail: How to use PIC16F84A pin as input (Code+Proteus simulation)

Current Project / Post can also be found using:

  • pic18f4520 led blinking

Leave a Comment

= 4 + 2

Read previous post:
A Cheap Ultrasonic Range Finder

HOW DOES IT WORK & CIRCUIT SCHEMATIC Everybody knows the speed of the sound in the dry air is around 340...

Scroll to top