Introduction to the architecture of the PIC microcontroller
The architecture of the PIC microcontroller includes the CPU, I/O ports, memory organization, A/D converter, timers/counters, interrupts, serial communication, oscillator, and CCP module, which are discussed in depth below.
It is not distinct from other CPU microcontrollers and consists of the ALU, CU, MU and accumulator, etc., of the PIC microcontroller CPU. The logic unit of arithmetic is primarily used for arithmetic operations and for making logical decisions. Memory is used during processing for storing the instructions. Control units that are attached to the CPU are used to control the internal and external peripherals and the accumulator is used to store the effects and further operations.
The BUS is used to transfer data from one peripheral to another to receive it. It is categorized into two categories, such as bus and address data.
Data Bus: It is used for sending or receiving data only.
Address Bus: To relay the memory address from the peripherals to the CPU, the address bus is used. I/O pins are used to connect external peripherals; both UART and USART are serial networking protocols used to connect serial devices such as GSM, GPS, Bluetooth, IR, etc.
3. I/O Ports
Five ports, such as Port A, Port B, Port C, Port D & Port E, make up the PIC16 series.
Port A is a 16-bit port that, depending on the TRISA (Tradoc Intelligence Support Activity) register status, can be used as an input or output port.
Port B is an 8-bit port that can be used as an input port as well as an output port.
Port C is 8-bit and the state of the TRISC register specifies the input of the output operation.
Port D is an 8-bit port that serves as a slave port for microprocessor BUS connections.
Port E is a 3-bit port serving the additional purpose of analog to digital converter control signals.
4.Random Access Memory (RAM)
These registers, as the name suggests, are only used for general purposes. For instance, when using the PIC microcontroller, we want to multiply two numbers. Generally, to multiply and store the numbers in other registers, we use registers. The Processor can quickly access the data in the registers, so these registers do not have any special features.
5.Special Function Registers
As the term SFR suggests, these registers are used for special purposes only. These registers can operate according to the functions delegated to them and will not be used as ordinary registers. For example, if the STATUS register can not be used to store the data, these registers are used to represent the program's function or status. Thus, the SFR feature can not be changed by the user; the function is supported by the retailer at the time of development.
6.Read Only Memory (ROM)
Memory Read Only is a secure memory that is used to indefinitely store records. The architecture ROM holds the instructions or applications in the PIC microcontroller architecture, according to the application the microcontroller runs. The ROM is also called application memory, where the user writes the microcontroller program and stores it indefinitely, and the CPU eventually executes the program. The efficiency of the microcontrollers depends on the instructions that the CPU executes.
Oscillators are used for producing timing. External oscillators such as RC oscillators or crystal oscillators are part of the Pic microcontroller. The crystal oscillator is connected between the two pins of the oscillator. Each pin that determines the mode of the oscillator operation is attached to the value of the capacitor. Crystal mode, a high-speed mode, and the low-power mode are the settings. For RC oscillators, the clock frequency is calculated by the resistor & capacitor value and the clock frequency range is 30KHz to 4MHz.
The method of transmitting data one bit at a time sequentially over a transmission medium is serial communication.
USART: The USART name stands for Universal Synchronous and Asynchronous Receiver and Transmitter, which is a two-protocol serial contact. It is used with reference to clock pulses to send and receive the data bit by bit over a single cable. There are two TXD and RXD pins on the PIC microcontroller. To send and receive the data serially, these pins are used.
SPI Protocol: Serial Peripheral Interface stands for the word SPI. This protocol is used to transfer data to other peripherals, such as SD cards, sensors, and shift registers, between the PIC microcontroller. On a standard clock source, PIC microcontrollers allow three wire SPI communications between two machines. The SPI protocol data rate is greater than that of USART.
I2C Protocol: The term I2C stands for Inter-Integrated Circuit and is a serial protocol used to connect low-speed devices such as EEPROMS, microcontrollers, A/D converters, etc. Two-wire interface or I2C connectivity between two devices that can act as both Master and Slave devices is enabled by the PIC microcontroller.
9.Electrically Erasable Programmable Read Only Memory (EEPROM)
We can only write the software in the usual ROM until we can't use the microcontroller several times again. But, we can program the ROM several times in the EEPROM.
Flash memory is also programmable read-only memory (PROM) of which thousands of times we can read, write and delete the program. The PIC microcontroller typically uses this ROM form.
When an interrupt happens, the interrupt and the current process address must be executed first by the PIC microcontroller. This is then stored in the stack that is being executed. Upon completion of the interrupt execution, the microcontroller calls the process with the aid of the address that is stored in the stack and the process is executed.
The CCP module name stands for capture/compare/PWM where three modes are used, such as capture mode, compare mode and PWM mode.
Capture Mode: Capture mode captures the moment of the signal's arrival, or in other words, the value of the Timer1 is recorded when the CCP pin goes high.
Mode Compare: Mode Compare functions as an analog comparator. When a certain reference value is met by the timer1 value, it produces an output.
PWM Mode: PWM mode offers a 10-bit resolution and programmable service cycle modulated display with pulse frequency.
This analog to digital converter's key objective is to transform analog voltage values to digital voltage values. The PIC microcontroller A/D package consists of 5 28-pin device inputs and 8 40-pin device inputs. ADCON0 and ADCON1 special registers control the operation of an analog to digital converter. The upper bits of the converter are stored in the ADRESH register, and the lower bits are stored in the ADRESL register. It needs 5V of an analog reference voltage for this operation.
There are four timers/counters in the PIC microcontroller where one 8-bit timer and the other timers have the ability to choose 8 or 16-bit mode. For example, timers are used to create precise behavior, generating unique time delays between two operations.
The PIC microcontroller consists of 20 internal interrupts and three external sources of interrupts connected to various peripherals such as ADC, USART, Timers, etc.
What are the applications of PIC microcontroller?
Applications of microcontroller include industrial purpose. The advantages of using this microcontroller include low power consumption, high performance, supports hardware and software tools such as simulators, compilers, and debuggers.
What is a PIC microcontroller?
Programmable Interface Controllers. PIC microcontrollers ( Programmable Interface Controllers), are electronic circuits that can be programmed to carry out a vast range of tasks. They can be programmed to be timers or to control a production line and much more.
What language do PIC microcontrollers use?
PIC Microcontroller Programming Procedure. The PIC microcontrollers are programmed by the embedded C language or assembly language by using appropriate dedicated software. Before going to build a PIC microcontroller project, we must become aware of developing a basic microcontroller (like 8051) based project.