Get to know about PIC Microcontroller - Black keyhole

welcome to our keyhole, we provide you various knowledge from various sources such as Electric&Electronic, Health, Arduino, IOT, Diy projects, A/l past paper and model paper, Even though you can keep in touch with current technology

Get to know about PIC Microcontroller

Share This

The computer or digital controller has three main elements: input and output devices,
which communicate with the outside world; a processor, to make calculations and handle
data operations; and memory, to store programs and data.The range of microcontrollers available is expanding rapidly. The first to be widely used,the Intel 8051, was developed alongside the early Intel PC processors, such as the 8086.This device dominated the field for some time; others emerged only slowly, mainlyin the form of complex processors for applications such as engine management systems.
These devices were relatively expensive, so they were justified only in high-value
products. The potential of microcontrollers seems to have been realized only slowly.

The development of flash ROM helped open up the market, and Microchip was among
the first to take advantage. The cheap and reprogrammable PIC16F84 became the most
widely known, rapidly becoming the number one device for students and hobbyists.

The range of microcontrollers now available developed because the features of the MCU
used in any particular circuit must be as closely matched as possible to the actual needs of
the application. Some of the main features to consider are

● Number of inputs and outputs.

● Program memory size.

● Data RAM size.

● Nonvolatile data memory.

● Maximum clock speed.

● Range of interfaces.

● Development system support.

● Cost and availability.

You can make Bussiness queries by using the business queries section. You can find that at the bottom of this page

  • You can make queries related to place ads, product placement, and advertising
  • make project queries related to DIY project section (college and school students for their projects) 

The most significant variation among PIC chips is the instruction size, which can be
12, 14, or 16 bits. The A suffix indicates that the chip has a maximum clock speed of
20 MHz, the main upgrade from the original 16F877 device. These chips can otherwise be
regarded as identical, the suffix being optional for most purposes. Most of the Time this Microcontroler is programed using MPLABX IDE.

Every PIC microcontroller has a set of registers that also function as RAM (random access memory). Special purpose control registers for on-chip hardware resources are also mapped into the data space. Every PIC has a stack that saves return addresses. The stack was not software-accessible on the earlier versions of the PIC, but this limitation was removed in later devices. 

Key features of PIC includes wide availability, low cost, ease of reprogramming with built-in EEPROM (electrically erasable programmable read-only memory), an extensive collection of free application notes, abundant development tools, and a great deal of information available on the Internet. The PIC microcontrollers often appear under the brand name PICmicro.

PIC Pin configuration

When programming the PIC microcontroller, certain operational modes must be set
prior to the main program download. These are controlled by individual bits in a special configuration register separated from the main memory block. The main options are as
     ● Clock oscillator types

● Watchdog, power-up, brown-out timers

● Low-voltage programming

● Code protection

● In-circuit debug mode

PIC16F877 MCU Block Diagram

The PIC architecture consists of two memories: Program memory and Data memory.


Program Memory:

        This is a 4K*14 memory space. It is used to store 13-bit instructions or the program code. The        program memory data is accessed by the program counter register that holds the address of the program memory. The address 0000H is used as reset memory space and 0004H is used as interrupt memory space.

Data Memory:

           The data memory consists of the 368 bytes of RAM and 256 bytes of EEPROM. The 368 bytes of RAM consists of multiple banks. Each bank consists of general-purpose registers and special function registers.

The special function registers consist of control registers to control different operations of the chip resources like Timers, Analog to Digital Converters, Serial ports, I/O ports, etc. For example, the TRISA register whose bits can be changed to alter the input or output operations of the port A.

The general-purpose registers consist of registers that are used to store temporary data and processing results of the data. These general-purpose registers are each 8-bit registers.

Working Register:

   It consists of a memory space that stores the operands for each instruction. It also stores the results of each execution.

Status Register:

      The bits of the status register denotes the status of the ALU (arithmetic logic unit) after every execution of the instruction. It is also used to select any one of the 4 banks of the RAM.

File Selection Register:

       It acts as a pointer to any other general-purpose register. It consists of a register file address, and it is used in indirect addressing.

Another general-purpose register is the program counter register, which is a 13-bit register. The 5 upper bits are used as PCLATH (Program Counter Latch) to independently function as any other register, and the lower 8-bits are used as the program counter bits. The program counter acts as a pointer to the instructions stored in the program memory.


     It consists of 256 bytes of memory space. It is a permanent memory like ROM, but its contents can    be erased and changed during the operation of the microcontroller. The contents into EEPROM can be read from or written to, using special function registers like EECON1, EECON, etc.

If you would like to get started with MicroPython click here

If you would like to do Websserver IOT project click here to dust out the project

No comments:

Post a Comment

business queries