Introduction to PIC18F4520

Hi Friends! Hope you are doing well. In this platform we mainly cover information related to engineering and technology, no matter if you are a newbie or experts, you'll find something handy that may resonate with your field of interest. Today, I'll unlock the details on the Introduction to PIC18F4520. It is an 8-bit enhanced flash PIC microcontroller that comes with nanoWatt technology and is based on RISC architecture. Many electronic applications house this controller and cover wide areas ranging from home appliances, industrial automation, security system and end-user products. This microcontroller has made a renowned place in the market and becomes a major concern for university students for designing their projects, setting them free from the use of a plethora of components for a specific purpose, as this controller comes with inbuilt peripheral with the ability to perform multiple functions on a single chip. In this tutorial, I'll cover each and everything related to PIC18F4520, its pinout, main features, block diagram, and applications. Let's dive right in and nail down everything you need to know.

Introduction to PIC18F4520

  • PIC18F4520 is a PIC microcontroller, introduced Microchip, and mainly used in automation and embedded systems. It comes in three packages known as PDIP, QFN, and TQFP where the first one is 40-pin (mostly used) while other two come with a 44-pin interface.
  • This microcontroller version comes with CPU, timers, 10-Bit ADC and other peripherals that are mainly used to develop a connection with external devices.
  • This PIC version, like other models in the PIC community, contains everything that is required to make an embedded system and drive automation.
  • The PIC18F4520 contains 256 bytes of EEPROM data memory, 1536 bytes of RAM, and program memory of 32K.
  • It also incorporates 2 Comparators,10-bit Analog-to-Digital (A/D) converter with 13 channels, and houses decent memory endurance around 1,000,000 for EEPROM and 100,000 for program memory.
  • The Enhanced Universal Asynchronous Receiver Transmitter (EUSART) feature is useful for developing the serial communication with other devices.
  • The asynchronous serial port is added on the chip that can be interfaced both ways i.e. 3-wire Serial Peripheral Interface (SPI™) or the 2-wire Inter-Integrated Circuit (I²C™) Bus.
The functions that make this device unique in terms of functionality and ease of use include
  • Wide operating voltage range (2.0V-5.5V)
  • Multiplexed Master Clear with pull-up/input pin
  • In-Circuit Serial Programming™ (ICSP™) via two pins
  • Power-Saving Sleep mode
  • C compiler optimized architecture
  • Industrial and Extended Temperature range
  • Power-up Timer (PWRT) and Oscillator Start-up Timer (OST)
  • Power-on Reset (POR)
  • In-Circuit Debug (ICD) via two pins
  • Brown-out Reset (BOR) with software control option
  • Watchdog Timer (WDT)

1. PIC18F4520 Pinout and Description

You have got a clear idea about this PIC18F4520 model. In this section, we jot down the pinout of the controller and cover a detailed description of each pin.
PIC18F4520 Pinout
Following figure shows the pinout of PIC18F4520.
  • The PDIP module comes with 40-pin interface while other two QFN and TQFP contain 44-pin on each module.
  • The former module is mainly used for developing individual projects while the other two are incorporated in industrial electronic devices.
Pin Description
Every pin on the module comes with a unique function, used as per the requirement of the project. And some pins incorporate multiple functions. The following figure shows the complete pinout description of this tiny PIC module.
Pin# Pin Name Pin Description
2 RA0/AN0 RA0 AN0 Digital I/O Pin Analog Input 0 Pin
3 RA1/AN1 RA1 AN1 Digital I/O Pin Analog Input 1 Pin
4 RA2/AN/VREF- RA2 AN2 VREF- Digital I/O Pin Analog Input 2 Pin ADC Reference Input Voltage (low)
5 RA3/AN/VREF+ RA3 AN3 VREF+ Digital I/O Pin Analog Input 3 Pin ADC Reference Input Voltage (high)
6 RA4/T0CKI/C1OUT RA4 T0CKI C1OUT Digital I/O Pin External clock input for Timer0 Output Comparator 1
7 RA5/AN4/SS/HLVDIN/C2OUT RA5 AN4 SS HLVDIN C2OUT Digital I/O Pin Analog Input 4 Pin Slave Select input for SPI (High, Low) Detect Input for Low Voltage Output Comparator 2
33 RB0/INT0/FLT0/AN12 RB0 INT0 FLT0 AN12 PORTB can be programmed with software Digital I/O Pin External Interrupt 0 Fault Input for Enhanced CCP1 Analog Input
34 RB1/INT1/AN10 RB1 INT1 AN10 Digital I/O Pin External Interrupt 1 Analog input 10
35 RB2/INT2/AN8 RB2 INT2 AN8 Digital I/O Pin External Interrupt 2 Analog input 8
36 RB3/CCP2 RB3 AN9 CCP2 Digital I/O Pin Analog input 9 Output for Compare2 and PWM2, and Input for Capture2
37 RB4/KBI0/AN11 RB4 KBI0 AN11 Digital I/O Pin Interrupt-on-change pin Analog input 11
38 RB5/KBI1/PGM RB5 KBI1 PGM Digital I/O Pin Interrupt-on-change pin ICSP programming enable pin for low voltage  
39 RB6/KBI2/PGC RB6 KBI2 PGC Digital I/O Pin Interrupt-on-change pin ICSP programming clock and In-Circuit Debugger pin
40 RB7/KBI3/PGD RB7 KBI3 PGD Digital I/O Pin Interrupt-on-change pin ICSP programming data and In-Circuit Debugger pin
15 RC0/T1OSO/T13CKI RC0 T1OSO T13CKI Digital I/O Pin Oscillator output for Timer1 External clock input for Timer1/Timer3
16 RC1/T1OSI/CCP2 RC1 T1OSI CCP2 Digital I/O Pin Oscillator input for Timer1 Output for Compare2 and PWM2, Input for Capture2
17 RC2/CCP1/P1A RC2 CCP1 P1A Digital I/O Pin Output for Compare1 and PWM1, Input for Capture1 Enhanced CCP1 Output
18 RC3/SCK/SCL RC3 SCK SCL Digital I/O Pin SPI Module Synchronous serial clock input/output I2C Module Synchronous serial clock input/output
23 RC4/SDI/SDA RC4 SDI SDA Digital I/O Pin SPI Data-In Pin I2C Data I/O Pin
24 RC5/SDO RC5 SDO Digital I/O Pin SPI Data-Out Pin
25 RC6/TX/CK RC6 TX CK Digital I/O Pin Asynchronous Transmit (USART) Synchronous Clock (USART)
26 RC7/RX/DT RC7 RX DT Digital I/O Pin Asynchronous Receive (USART) Synchronous Data (USART)
19 RD0/PSP0 Digital I/O Pin Parallel Slave Port (PSP) for D0 with TTL input buffers
20 RD1/PSP1 Digital I/O Pin Parallel Slave Port for D1 with TTL input buffers
21 RD2/PSP2 Digital I/O Pin Parallel Slave Port for D2 with TTL input buffers
22 RD3/PSP3 Digital I/O Pin Parallel Slave Port for D3 with TTL input buffers
27 RD4/PSP4 Digital I/O Pin Parallel Slave Port for D4 with TTL input buffers
28 RD5/PSP5 Digital I/O Pin Parallel Slave Port for D5 with TTL input buffers
29 RD6/PSP6 Digital I/O Pin Parallel Slave Port for D6 with TTL input buffers
30 RD7/PSP7 Digital I/O Pin Parallel Slave Port for D7 with TTL input buffers
8 RE0/RD/AN5 RE0 RD AN5 Digital I/O Pin PSP Read Control Analog input 5 Pin
9 RE1/WR/AN6 RE1 WR AN6 Digital I/O Pin PSP Write Control Analog input 6 Pin
10 RE2/CS/AN7 RE2 CS AN7 Digital I/O Pin PSP Chip Select Control Analog input 7 Pin
1 MCLR/VPP MCLR VPP ICSP Programming Enable Pin Master Clear Active Low Reset Pin
13 OSC1/CLKI OSC1 CLKI Crystal Oscillator Input Pin
14 OSC2/CLKO/RA6 OSC2 CLKO RA6 Crystal Oscillator Output Pin
12,31 VSS Ground pin
11,32 VDD Voltage pin
  • This table will help you understand the function associated with each pin.

2. PIC18F4520 Features

Features are very important for any device that makes it unique from its counterparts. The following figure shows the complete features of PIC18F4520.
PIC18F4520 Features
No. of Pins 40
CPU 8-Bit PIC
Operating Voltage 2 to 5.5 V
Program Memory 32K
Program Memory (Instructions) 16384
RAM 1536 Bytes
EEPROM 256 Bytes
ADC Number of Channels 10-Bit 13
I/O Ports (5) I/O Pins A,B,C,D,E 36
Packages 40-pin PDIP 44-pin QFN 44-pin TQFP
External Oscillator up to 40 MHz
Timer (4) 16-Bit Timer (3) 8-Bit Timer (1)
USART Protocol 1
I2C Protocol Yes
SPI Protocol Yes
Brown-out Reset Yes
Watchdog Timer Yes
Comparators 2
Master Synchronous Serial Port (MSSP) module 1
Capture/Compare/PWM 16bit/16bit/10bit
Power Saving Sleep Mode Yes
Selectable Oscillator Option Yes
Operating High-current sink/source Each pin 25mA
Programmable High/Low-Voltage Detect -Yes
Oscillator Start-up Timer Yes
  • These features help you identify the main characteristics of the controller that are appropriate for designing and developing for the certain project.

3. PIC18F4520 Functions

This PIC model is capable of performing many functions similar to other controllers in the PIC community. Following are the main functions of PIC18F4520.
Timer
PIC18F4520 comes with three 16-bit and one 8-bit timer that can be used as a timer as well as a counter. All three timers contain internal and external clock select capability. The timer mode mainly increments the instruction cycle while the counter mode is used to increment the rising and falling edge of the pin.
Brown Out Reset (BOR)
The BOR is a very useful function that allows this controller to reset once the Vdd (voltage supply) drops below a brownout threshold voltage. The multiple voltage ranges are used and provided to protect the chip once the power drops at the voltage supply line. The Power Up Timer must be kept enabled, in order to put the delay in returning the device from a BOR function, t The BOR mode can be configured both ways i.e. through BOREN settings in a register as well through programming.
In-Circuit Serial Programming
In-circuit serial programming (ICSP), also called In-system programming (ISP), is a feature added to this device that makes it enable to be programmed in the required system after installation, setting it free from programming the device before making it compatible with the certain project.
USART
This controller version comes with USART module, that stands for Universal Synchronous and Asynchronous Receiver and Transmitter, and is mainly used for setting up the serial communication with external devices. There are two parts of this module called TX and RX where former is known as transmitting component that is used for transmitting serial data while later is known as receiving component, used for receiving the serial data across the attached devices.
Watchdog Timer
PIC18F4520 contains a built-in watchdog timer that brings the controller in reset position if the program hangs up during compilation or gets stuck in the infinite loop. It is worth mentioning here, this timer must be reset to the initial value after every 3 instructions in order to avoid it going to zero value in normal conditions. The watchdog timer is more or less a countdown timer that starts from 1000 and ultimately goes down to zero.
Power On Reset
Power On Reset function is very helpful and resets the controller and starts it from scratch when Vdd raises above a certain threshold value. This function is very useful to prevent the device from malfunctioning.
Power Managed Modes
PIC18F4520 provides total 7 operating modes that help in more efficient power management. These modes offer multiple options for selective power conservation in a variety of applications. The power managed modes are mainly divided into three main categories called:
  • Run modes
  • Sleep mode
  • Idle modes
These categories help in identifying the areas of the device that are clocked at a specific speed. The Idle and Run modes can operate in any of three clock sources named primary, secondary, and internal oscillator block while Sleep mode is not involved in any clock source. The switching feature is added in the power managed modes that use the Timer1 oscillator as a replacement of a primary oscillator. All clocks will be cleared and stopped working in the Sleep mode.
Master Clear Reset (MCLR)
The MCLR pin is used for calling the external reset for the chip. The reset is triggered by keeping this pin at a LOW value and is not dependent on the internal resets. The noise filter is added in the MCLR executing process that helps in detecting and removing the small pulses. The MCLRE configuration bit can also be used to disable MCLR input.

4. PIC Compiler

  • Microchip comes with its own standard compiler for the PIC controller called MPLAB C18 Compiler. You can get this compiler online from the Official Microchip Site.
  •  MikroC Pro For PIC is a third party software mainly used as a replacement of Microchip standard compiler.
  • These Top 3 PIC C Compilers give you many options to choose from to pick any compiler as per your needs and demands.
  • The code written in the compiler generates a hex file which is then uploaded to the microcontroller to execute the number of instructions.
  • The PICKit3 is a standard PIC burner, mainly used for burning the code in the controller. There are other burners also available in the market but PICKit3 is mostly used and preferred for the PIC controllers.

5. PIC18F4520 Memory Layout and Working

The memory of the module is very useful for storing a number of instruction which can be divided into three major types: Program Memory Data EEPROM Data RAM Let's discuss each memory one by one and highlight the main functions associated with them.
Program Memory
The Program memory, also known as ROM memory or Non-Volatile memory, stores the running program permanently. It doesn't depend on the power supply i.e. stores the program in the absence of the main power supply.  The ROM memory is about 32K and is made with FLASH Technology.
Data EEPROM
This memory is similar to ROM memory in one way or the other and stores running program permanently with one limitation i.e. the instructions in EEPROM can be controlled and modified during the controller operation. The EEPROM comes with memory space around 256 bytes and can be accessed and addressed by multiple control registers.
Data RAM
RAM memory, also known as volatile memory, stores the program temporarily and removes the stored program once the power supply is removed. It is classified into two main parts called General-purpose registers (GPR) Special-function registers (SFR) This memory is volatile in nature as it stores the program temporarily and is power dependent i.e. once the power supply is turned off the instructions stored in the RAM will be removed. The RAM memory registers are the data holding places that can hold instruction, storage address, and any kind of data ranging from an individual character to bit sequence. The data memory can be employed as static RAM where each register comes with a 12-bit address. This memory is comprised of a total 16 banks and each bank contains a memory space of around 256 bytes. Let’s discuss few registers in details. STATUS Register. This register is mainly used to switch between the mentioned banks. Setting the fifth bit of this register indicates the performance of bank1 while resetting it will address bank 0. TRISA. This register plays a vital role to configure PORTA as an input or output. The value 1 describes it as an output and value 0 shows input. TRISB. This register is similar to TRISA and used for deciding the pins as an input or output of PORTB. W Register. This register is a GPR while all other described above belong to SFR. It is not associated with any register bank and is addressed by the program only. The required values are written on W register and moved to the target register before writing them down on the available ports.

6. PIC18F4520 Block Diagram

You have got a brief overview of pinout, its description and main features of the controller. In this section, we discuss the main block diagram of the microcontroller so you can get an idea how each function in the controller is related and connected to each other.
  • PIC18F4520 comes with five ports where each port contains 8 pins except the E port that comes with 4 pins which also include MCLR (master clear pin).
  • This device can be configured using 10 different oscillator modes where different capacitor values are required to generate acceptable oscillator operation. The user must test oscillator performance with the suitable VDD and temperature range for the required project.

7. PIC18F4520 Projects and Applications

  • PIC18F4520 is widely used in home and industrial automation
  • Student projects for motor controlling and sensor interfacing
  • GPS and security systems
  • Gas sensor projects
  • Production of temperature data logger
  • Serial Communication
  • Central heating projects
  • Embedded system

8. Why Use PIC MicroControllers

  • PIC microcontrollers are widely used in multiple applications as they come with user-friendly interface and easy onboard architecture that requires little or no prior skills before getting familiar with the chip.
  • They can perform a number of functions using minimum circuitry and are cheap in price as compared to other modules available in the market.
  • Minimum power consumption is another ability that makes this controller an ideal choice for the projects where power limitation is a major concern.
  • PIC controllers stay ahead of other Atmel controller like 8051 in terms of their higher processing speed and efficiency.
That's all for today. I hope this article has helped you got a complete overview of PIC18F4520 and the main functions associated with it. If you are unsure or feeling skeptical, you can ask me in the comment section below. I'd love to assist you in any way I can. Feel free to give your feedback and suggestions that help us provide you quality work based on your needs and requirements. Thanks for reading the article.

Sheer Influence of Robotics on Employment Reduction

Hi Friends! Hope you are doing fine. I am back to give you have a daily dose of useful information. Today, I'll cover the Sheer Influence of Robotics on Employment Reduction.  Technology has been working for the betterment of the human race quite a while now, but we cannot brush off its negative impact in real time. Technology covers almost everything from medical, engineering, economic, automotive industry to transportation. Bank cashiers are widely replaced by smart machines. Glass bottler industries use sensors for checking half-filled bottles - a job previously reserved for a common operator. Nevertheless, writers also feel the heat and face a severe threat produced by the automatic content creators over the web. Apart from getting exorbitant benefits from the valuable use of technology, no one is spared from the wrath it is imposing and penetrating our lives. In this tutorial, I'll cover how robotics and technology influence our surrounding and reduce job opportunities. Let's jump right in and explore everything you need to know.

Sheer Influence of Robotics on Employment Reduction

The idea of robotics influencing the job reduction is quite daunting and scares the hell out of most of the middle-class employees as robots are better in terms of efficiency and precision. International Federation of Robotics has concluded in their research  "overall paid employment has risen in most countries including Brazil, China, Republic of Korea, Germany, and the USA, but not Japan, which has seen a decline." The reason is quite clear. Japan stays ahead of other countries in terms of producing robots that create ease (if not for employees) and make human life convenient.
How Robots Work
Artificial Intelligence (AI) experts had done research back in 1980 that robots find easy things difficult and difficult things easy. Suppose, we take an example of Google crawlers who are quite efficient and strive to bring more relevant information when someone looks for a specific query over the internet. They work best to read pages and written text, but they fail to visualize and analyze the image like a naked eye. The Alt Text that we put in the image as we upload the image in our blog post, help crawlers anticipate what the image is about and how it is relevant to the particular solution a visitor is looking for.
Benefits and Limitations of Robotics
National Bureau of Economic Research uncovers that every new robot introduced in the industry almost reduces 3 to 5 jobs in the local area. Researchers and Economist have also concluded that Robots only replace the middle-class jobs that require logic and algebra. On the other hand, they fail to replace the jobs that require human interference like mobility and perception. The benefits that make robots preferrable over human beings include their ability to store current information for a maximum period of time, minimum maintenance requirement and they don't get bored by repeating a single task multiple times. With that being said, robots cannot beat the human mind in terms of the ability to think and incorporate ideas based on the previous knowledge. Also, robots don't evolve with the passage of time like a human being. They just work on the instructions and commands given by the experts.
More Room for Skilled People
There is a huge gap between the people who are doing average jobs manually and the skills required to operate, manage and study the whole robotic system. It is true, robotics have reduced the jobs significantly but, on the other hand, it has also created more jobs for the people who are interested in technology and come with appropriate skills pertaining to robotics and automation.
Things Required to Design Robot
You can design the robot and allows it to perform tasks as per your instructions. Robots contain both mechanical structure and electronic components on a single body. If you intend to make a robot by yourself, you need a number of Printed Circuit Boards (PCB) which handle and control the robotic function on a single chip. We have tried a number of companies to get PCBs and incorporate our ideas in real time. PCBWay is the best manufacturer when it comes to producing quality PCB without losing the bit of accuracy. They not only assist their customers in selecting required PCB, but they also come out of their way to help in the development of your project and pick the best PCB layout. Every PCB they produce comes with a thick copper layer that removes the chance of any broken layers that may cause a problem during the execution of your project. They also keep you quite in line with their production process and do a proper follow so you don't feel you are left out in the process. In case, the product you get doesn't resonate with your requirement, they feel no hesitation to replace the board at first place. In order to avoid any hassle, be sure to select the right PCB and give clear instruction so the right board is dispatched to your place. That’s all for today. I hope you have enjoyed the article. However, if you are feeling skeptical or have any question, you can approach me in the comment section below. I’d love to help you in any way I can. Feel free to keep us updated with your valuable feedback and suggestions; they help us provide you relevant content as per your demands. Thanks for reading the article.

Introduction to PIC16F887

Hey Guys! Hope you are doing well. This is a platform where we keep you updated with valuable information so you keep coming back for what we have to offer. Today, I'll uncover the details on the Introduction to PIC16F887. It is a 40-pin PIC microcontroller, introduced by Microchip, and is a successor of PIC16F877A. Microcontrollers have revitalized the technology by providing a flawless interface and an ability to perform numbers of functions on a single chip. Gone are days, when you had to rely on external components to develop your projects which might be time-consuming, covered more space, and required a number of prior skills before making your project in real time. Microcontrollers have made things easy by covering each and every aspect of the projects that are directly or remotely related to automation. In this tutorial, I'll discuss each and everything related to PIC16F887 including its main features, working, pinout and applications. Let's jump right in and nail down everything you need to know.

Introduction to PIC16F887

  • PIC16F887 is a 40-pin (for PDIP package) and 8-bit CMOS PIC Microcontroller that comes with nanoWatt technology. Economical price and user-friendly architecture make this device easy to use and easy to configure.
  • It is available in three packages known as PDIP, QFN, and TQFP. The first one comes with a 40-pin layout design while remaining two contains 44 pins on each layout.
  • This PIC version, like other models in the PIC community, contains everything that is required to make an embedded system and drive automation.
  • The PIC16F887 incorporates 256 bytes of EEPROM data memory, 368 bytes of RAM, and program memory of 8K.
  • Apart from self-programming capability, it also contains 2 Comparators,10-bit Analog-to-Digital (A/D) converter with 14 channels, and capture, compare and PWM functions.
  • The asynchronous serial port is added on the chip that can be configured both ways i.e. the 2-wire Inter-Integrated Circuit (I²C™) Bus or 3-wire Serial Peripheral Interface (SPI™)
  • The Enhanced Universal Asynchronous Receiver Transmitter (EUSART) feature makes this chip compatible with the devices where serial communication is an integral part of the project.
  • The functions that make this device unique in terms of ease of use include
  1. Power-Saving Sleep mode
  2. Industrial and Extended Temperature range
  3. Wide operating voltage range (2.0V-5.5V)
  4. SR Latch mode
  5. Power-up Timer (PWRT) and Oscillator Start-up Timer (OST)
  6. Power-on Reset (POR)
  7. Ultra-Low-Power Wake-up (ULPWU)
  8. Multiplexed Master Clear with pull-up/input pin
  9. Individually programmable weak pull-ups
  10. Brown-out Reset (BOR) with software control option
  11. Enhanced low-current Watchdog Timer (WDT)
  • Needless to say, this PIC version is an ideal choice to drive A/D conversion in automotive, consumer, and industrial applications.

1. PIC16F887 Pinout & Description

Getting a hold of Pinout and Pin descriptions is mandatory to check the working of each pin on this tiny chip. If you are a newbie or an expert, you need to know the function associated with each pin for a better understanding of the chip.
Pinout
The following figure shows the complete pinout of all three packages called PDIP, QFN, and TQFP.

  • As described earlier, the PDIP package contains 40-pin while other two come with 44 pins.
Pin Description
PIC16F887 is widely used in many electronic applications. Some pins in the controller are capable of doing more than one functions that allow us to use the pin according to the needs and demands of the project. I have listed the function of each pin in the following table.
Pin# Pin Name Pin Description
2 RA0 AN0/ULPWU C12IN0- Digital I/O Pin Analog Input 0 Pin Comparator
3 RA1 AN1/ULPWU C12IN1- Digital I/O Pin Analog Input 1 Pin Comparator
4 RA2 AN2 C2IN+ VREF-/CVREF Digital I/O Pin Analog Input 2 Pin Comparator ADC Reference Input Voltage (low)
5 RA3 AN3 C1IN+ VREF+ Digital I/O Pin Analog Input 3 Pin Comparator ADC Reference Input Voltage (high)
6 RA4 C1OUT T0CKI Digital I/O Pin Comparator External clock input for Timer0
7 RA5 AN4 C2OUT SS Digital I/O Pin Analog Input 4 Pin Comparator Slave Select input for SPI
33 RB0 AN12 IOC/INT Digital I/O Pin Analog Pin Interrupt-on-change
34 RB1 AN10 C12IN3- IOC Digital I/O Pin Analog Pin Comparator Interrupt-on-change
35 RB2 AN8 IOC Digital I/O Pin Analog Pin Interrupt-on-change
36 RB3 AN9 C12IN2- IOC PGM Digital I/O Pin Analog Pin Comparator Interrupt-on-change Basic
37 RB4 AN11 IOC Digital I/O Pin Analog Pin Interrupt-on-change
38 RB5 AN13 T1G IOC Digital I/O Pin Analog Pin Timer Interrupt-on-change
39 RB6 IOC ICSPCLK Digital I/O Pin Interrupt-on-change pin Basic
40 RB7 IOC ICSPDAT Digital I/O Pin Interrupt-on-change pin Basic
15 RC0 T1OSO/T1CKI Digital I/O Pin Timer
16 RC1 T1OSI CCP2 Digital I/O Pin Timer ECCP
17 RC2 CCP1/P1A Digital I/O Pin ECCP
18 RC3 SCK/SCL Digital I/O Pin MSSP
23 RC5/SDO RC5 SDO Digital I/O Pin SPI Data-Out Pin
24 RC5 SD0 Digital I/O Pin MSSP
25 RC6 TX/CK Digital I/O Pin USART
26 RC7 RX/DT Digital I/O Pin USART
19 RD0 Digital I/O Pin
20 RD1 Digital I/O Pin
21 RD2 Digital I/O Pin
22 RD3 Digital I/O Pin
27 RD4 Digital I/O Pin
28 RD5 P1B Digital I/O Pin ECCP
29 RD6 P1C Digital I/O Pin ECCP
30 RD7 P1D Digital I/O Pin ECCP
8 RE0 AN5 Digital I/O Pin Analog Pin
9 RE1 AN6 Digital I/O Pin Analog Pin
10 RE2 AN7 Digital I/O Pin Analog Pin
13 RA7 OSC1 CLKIN Crystal Oscillator Input Pin
14 RA6 OSC2 CLKOUT Crystal Oscillator Output Pin
1 RE3 MCLR VPP ICSP Programming Enable Pin Master Clear Active Low Reset Pin
11,32 VDD Voltage Supply Pin
12,31 VSS Ground Pin

2. PIC16F887 Features

You can anticipate the nature of any device by looking at its main features. Following table shows the complete features of PIC16F887.
PIC16F887 Features
No. of Pins 40
CPU 8-Bit PIC
Operating Voltage 2 to 5.5 V
Program Memory 8K
Program Memory (Instructions) 8192
RAM 368 Bytes
EEPROM 256 Bytes
ADC 10-Bit
I/O Ports (5) I/O Pins A,B,C,D,E 35
Packages 40-pin PDIP 44-pin QFN 44-pin TQFP
External Oscillator up to 20 MHz
Timer (3) 16-Bit Timer (1) 8-Bit Timer (2)
USART Protocol 1
I2C Protocol Yes
SPI Protocol Yes
Brown-out Reset Yes
Watchdog Timer Yes
Comparators 2
Master Synchronous Serial Port (MSSP) module 1
Capture/Compare/PWM 16bit/16bit/10bit
Power Saving Sleep Mode Yes
Selectable Oscillator Option Yes
Operating Current 11uA at 32 kHz, 2.0 V 220uA at 4 MHz, 2.0 V
Temperature Range -40 to 125
Oscillator Start-up Timer Yes
  • Checking main features before purchasing of the controller will help you analyze and develop your required project.
  • Power on reset and selectable oscillator options are some unique features included in the chip.

3. PIC16F887 Functions

This PIC model performs many functions that are quite similar to the function in other controllers of the PIC community. Following are the main functions of PIC16F887.
Timer
PIC16F887 contains one 16-bit timer and two 8-bit timers that can be used in both ways i.e. timer and counter and comes with internal and external clock select capability. The timer mode is used to increment the instruction cycle while counter mode increments the rising and falling edge of the pin. When the bit T0CS (OPTION_REG<5>) is set, the counter mode will be selected and when it is cleared, the timer mode will be selected.
Brown Out Reset (BOR)
The BOR is a function that brings the controller to reset once the Vdd (voltage supply) drops below a brownout threshold voltage. There is a fine line between a BOR and Power On Reset, where the whole range of voltages is provided to protect the chip once the power drops at the voltage supply line. In order to put the delay, mostly recommended, in returning from a BOR function, the Power Up Timer must be kept enabled. Apart from controlling through software, the BOR mode can also be handled and configured through BOREN settings in a register.
USART
PIC16F887 comes with enhanced USART module. This module consists of TX - A transmission pin used for transmitting serial data to other devices and RX - A receive pin used for receiving serial data.
Watchdog Timer
PIC16F887 comes with built-in watchdog timer that is mainly used to reset the controller when a program hangs up during compilation or gets stuck in the infinite loop of the program. It is important to note the timer must be reset to the initial value after every 3 instructions in order to avoid it going to zero value in normal conditions. The watchdog timer is nothing but a countdown timer and starts from 1000 and gradually goes down to zero.
Power On Reset
Power On Reset function resets the controller when it is powered on. If there comes unknown error in the chip, powering on the device will exclude it from the loop of running program and saves the device from malfunctioning.
Sleep Mode
Power saving sleep function generates a low current power down mode. This sleep mode can be terminated using an interrupt, watchdog timer or external reset.

4. PIC Compiler

  • Microchip has introduced its own standard compiler for the PIC controller called MPLAB C18 Compiler. You can download this compiler online from the Microchip Official Site.
  • The code written in the compiler creates a hex file that is transferred to the microcontroller to execute the certain function.
  • Third party softwares are also available for compiling the program and MikroC Pro For PIC is mainly used for this purpose.
  • These Top 3 PIC C Compilers give you the flexibility to pick any compiler based on your needs and requirements.
  • The PICKit3 is mainly used for burning the code in the controller which is a standard PIC burner. There are other unofficial burners also available but PICKit3 is mostly preferred for the PIC controllers.

5. PIC16F887 Memory Layout and Working

The whole memory in this controller is distributed into three main types known as EEPROM, RAM and ROM Memory. All of them plays a vital role in the controller in terms of executing and calling instructions with some exceptions. Let's discuss each of them one by one.
ROM Memory
ROM memory, also known as Non-Volatile memory, which stores the running program permanently and is not dependent on the power supply i.e. has an ability to retain the program if the power supply is removed. The ROM memory is about 8K made with FLASH Technology.
EEPROM Memory
This memory is quite similar to ROM memory in one way or the other in terms of storing running program permanently with the exception i.e. the instructions in EEPROM can be modified during the operation of the controller. It contains memory space around 256 bytes, quite less than ROM memory, but enough to store the program permanently.
RAM Memory
RAM memory, also known as volatile memory, is divided into two main parts known as general-purpose registers (GPR) and special-function registers (SFR). This memory is volatile in nature as it stores the program temporarily and is power dependent i.e. once the power supply is turned off the instructions stored in the RAM will be removed.
  • Registers in the RAM memory are the data holding places in the controller. A single register can hold instruction, storage address, and any kind of data including bit sequence or individual characters.
Registers are classified into two banks called Bank 1 and Bank 2 where registers from 00H to 0BH and 80H to 8BH fall under the category of SFRs and remaining are GPRs.
  • Each bank contains128 bytes of memory space where first 12 locations are reserved for SFR while remaining are reserved for GPR.
Let’s discuss few registers in details. STATUS. This register plays a role to switch between the banks. Setting fifth bit of this register shows we are discussing bank 1 while resetting it will indicate we are discussing bank 0. TRISA. This register is used to configure PORTA as an input or output. The value 1 shows output and value 0 shows input. TRISB. This register is identical to the TRISA in terms of deciding the pins as an input or output and used for PORTB. W Register. All registers mentioned above are SFRs while W register is a GPR. It is not a part of any register bank and is accessible by the program only. The desired values are written on W register and transferred to the target register before writing them on the PORTA or PORTB.

6. PIC16F887 Block Diagram

The following figure shows the block diagram of PIC16F887.
  • The program memory comes with 8K memory space which can configure 8192 words.
  • Some pins can be interfaced with other functions of multiple devices including external interrupt, Timer0 clock input and Change on PORTB interrupt.

7. PIC16F887 Projects and Applications

  • PIC16F887 is mainly used in students project i.e. controlling motors and sensor interfacing.
  • Used in Central heating projects
  • Production of temperature data logger
  • Serial Communication
  • Used in health and security systems
  • Gas sensor projects
  • Embedded system
  • Used in industrial automation

8. Why Use PIC MicroControllers

PIC microcontrollers are widely used in most of the electronic applications because they offer easy to use interface that requires no prior skills for getting a hands-on experience with the module. These controllers are cheap and come with an ability to perform a number of functions using minimum circuitry. PIC controllers have outperformed Atmel controller like 8051 in terms of their efficiency and higher processing speed. More often than not, automation industries prefer and use these controllers for carrying out different operations as they offer very little power consumption. That’s all for today. I hope I have given you everything related to PIC16F887. If you are unsure or have any query, you can ask me in the comment section below. I’d love to help you in any way I can. You are most welcome to give your feedback and suggestions, they help us provide you quality work as per your needs and demands. Thanks for reading the article.

ESP8266 Pinout, Datasheet, Features & Applications

Hello friends! Hope you are doing well. Today, we will have a look at the detailed Introduction to ESP8266 WiFi module. ESP8266 is a very low-cost & user-friendly WiFi module, which develops a simple TCP/IP connection and can easily be interfaced with microcontrollers via Serial Port. The first chip in this series was ESP-01 which gained sheer attention in the market. In this tutorial, we will discuss the ESP8266 WiFi module along with its pinout, features, specifications, applications and datasheet. Let's dive in and nail down everything related to this device.

ESP8266 WiFi Module

  • ESP8266 (also called ESP8266 Wireless Transceiver) is a cost-effective, easy-to-operate, compact-sized & low-powered WiFi module, designed by Espressif Systems, that supports both TCP/IP and Serial Protocol.
  • It's normally used in IOT cloud-based embedded projects and is considered the most widely used WiFi module because of its low cost and small size.
  • It runs at an operating voltage of 3V and can handle a maximum voltage of around 3.6 V, so an external logic level converter is required if you are using 5V supply.
  • ESP8266 WiFi module can easily be interfaced with microcontrollers board (i.e. Arduino UNO) via Serial Port.
  • There are numerous breakout boards available based on ESP8266 WiFi Module (i.e. ESP8266 NodeMCU V3).
  • Beause of its compact size, its mostly used in autonomous projects (i.e. Robotics).
  • Other than ESP8266, "Espressif Systems" has designed many other ESP WiFi modules, few of them are shown in below figure:
Now let's have a look at the ESP8266 Pinout, necessary for interfacing with microcontrollers.

ESP8266 Pinout

  • ESP8266 Pinout consists of 8 pins in total, which are given in below table along with their operation:
ESP8266 Pinout
No. Pin Name Working
1 RX Serial Receiver Pin
2 Vcc Power Pin (+3.3 V; can handle up to 3.6 V)
3 GPIO 0 General-purpose I/O No. 0
4 RST Reset
5 CH_PD Chip power-down
6 GPIO 2 General-purpose I/O No. 2
7 TX Serial Transmitter Pin
8 GND Ground
  • Each pin comes with a specific function associated with it where Vcc and GND are voltage source and ground respectively.
  • RX and TX are used for communication where TX is dedicated for data transmission and RX is used receiving data.

ESP8266 Datasheet

  • You can download ESP8266 Datasheet by clicking the below button:
Download ESP8266 Datasheet

ESP8266 Features

  • It is also known as a system-on-chip (SoC) and comes with a 32-bit Tensilica microcontroller, antenna switches, RF balun, power amplifier, standard digital peripheral interfaces, low noise receive amplifier, power management module and filter capability.
  • The processor is based on Tensilica Xtensa Diamond Standard 106Micro and runs at 80 MHz.
  • It incorporates 64 KiB boot ROM, 80 KiB user data RAM and 32 KiB instruction RAM.
  • It supports Wi-Fi 802.11 b/g/n around 2.4 GHz and other features including 16 GPIO, Inter-Integrated Circuit (I²C), Serial Peripheral Interface (SPI), 10-bit ADC, and I²S interfaces with DMA.
  • External QSPI flash memory is accessed through SPI and supports up to 16 MiB and 512 KiB to 4 MiB is initially included in the module.
  • It is a major development in terms of wireless communication with little circuitry. and contains onboard regulator that helps in providing 3.3V consistent power to the board.
  • It supports APSD which makes it an ideal choice for VoIP applications and Bluetooth interfaces.

How to Power Up the Module

  • You can power up the device with PC port using USB to Serial adaptor. The 2 AA  and LIPO batteries are equally handy for powering up the device.
  • It is advised to not power this device directly with 5V dev board. Doing so can severely affect the quality and overall performance of the device.

ESP8266 NodeMCU

  • There are numerous breakout boards designed by different companies, based on this ESP8266 WiFi module.
  • Among these breakout boards, ESP8266 NodeMCU is the most popular one.
  • Here's the Pinout Diagram of ESP8266 NodeMCU:

ESP8266 Projects & Applications

ESP8266 WiFi module is widely used in embedded projects and thus brings WiFi capability. Here's few ESP8266 Projects & Applications:
  • Wireless Web Server
  • Geolocation using ESP8266
  • Pressure Sensors on Railway Tracks
  • Air Pollution Meter
  • Temperature logging system
  • World’s smallest IoT project
  • Wi-Fi controlled robot
  • Humidity and temperature monitoring
  • M2M using ESP8266
That's all for today. I hope I have given you everything you needed to know regarding this WiFi module. If you are unsure or have any question, you can ask me in the comment section below. I'd love to help you in any way I can. You are most welcome to keep us updated with your suggestions so we keep providing quality work that resonates with your needs and demands. Thanks for reading the article.

Introduction to PIC16F84a

Hi Friends! Hope you are doing well. We welcome you on board. Today, I'll highlight and explain the details on the Introduction to PIC16F84a. It is an 18-pin PIC microcontroller, introduced by Microchip Technology, that comes with serial programming algorithm. It contains one 8-bit timer and 13 I/O bidirectional pins. Microcontrollers have always been a great choice for experts since their inception long while ago. They are widely used for the embedded system, industrial automation, and robotics as they contain an onboard chip that requires no external components for making it work like an automatic system and reduces the space required for the development of the project. In this tutorial, I'll discuss each and everything related to PIC16F84a, so you don't have to wrestle your mind for browsing the internet and find all information in one place. Let's jump right in and nail down everything you need to know. Note:
  • Following is the link to download PIC16F84a datasheet, produced by Microchip.
  • Moreover, I have also shared the link of a reliable online source from where you can buy it easily.

[dt_default_button link="http://ww1.microchip.com/downloads/en/devicedoc/35007b.pdf" button_alignment="default" animation="fadeIn" size="medium" default_btn_bg_color="" bg_hover_color="" text_color="" text_hover_color="" icon="fa fa-chevron-circle-right" icon_align="left"]Download Datasheet[/dt_default_button]

Introduction to PIC16F84a

  • PIC16F84a is an 8-bit PIC Microcontroller that comes with enhanced EEPROM and is a successor of PIC16C84 that was introduced back in 1993 by Microchip Technology with the intention of making electronic tasks easy that require no or minimum skills to get the hands-on experience working with them.
  • PIC16F84a has an 8-bit timer and comes with an ability of serial programming interface that proves to be very handy for laying out serial communication with other devices.
  • It contains 64 bytes  EEPROM (mainly used for storing data), 1K program memory (indicates the capacity of code you can burn inside the controller), 68 bytes of data memory (RAM) and stays ahead of its predecessor in terms of compatibility and program security.
  • Clock speed around 20MHz is very handy to execute the instruction with greater pace.
  • Both PIC16F84a and PIC16C84 come with identical programming hardware and feature similar characteristics in one way or the other, however, programming software is different for both of them.
  • There are 13 I/O pins present on the PIC16F84a, that hold enough power to control LED but they don't seem feasible for controlling DC motors, and we require external PMIC (power management integrated circuits) for this purpose that can be easily configured and interfaced with the controller.

1. PIC16F84a Pinout with Description

You have got a brief overview of this PIC16F84a version. Now, we move to the next step and mention the pinout of the controller with detailed description of each pin.
PIC16F84a Pinout
Following figure shows the pinout of PIC16F84a
  • The PIC16F84a comes with two packages called PDIP and SSOP and both contain 18 and 20 pins respectively.
  • SSOP contains extra ground and voltage supply pins.
PIC16F84a Pin Description
Pin #5. It is a ground pin labeled as Vss that is connected to a negative terminal of the 5V battery. Pin #14. It is the voltage supply pin of the controller that is connected to the positive terminal of the battery. Pin #4. A memory clear pin, labeled as MCLR. It is an active low pin - clears the RAM memory when this pin is kept low. Pin #15 & Pin #16. are used for connection with crystal oscillator which provides the required clock frequency for executing the number of instructions with greater pace. Maximum clock frequency it can sustain is 20MHz.  It comes with an ability to execute 20,000,000 instructions per second. I/O Pins. There are 13 I/O pins incorporated on the chip marked from 6 to 13 and 1,2,3,17&18. They are bidirectional pins and can be used either way i.e. input or as an output. There are two ports on the board named Port A and Port B where pins 17,18,1,2&3 fall under Port A and 6,7,8,9,10,11,12&13 fall under Port B which is software programmed for targeting internal weak pull-up on all inputs. Clock Input. Four Pins in the PORTA named as RA0 to RA4 are used for clock input to the timer0/counter where the output is an open drain type. In the following table, I have compiled the function of each pin
Pin# Pin Name Pin Description
17 RA0 I/O Bidirectional pin
18 RA1 I/O Bidirectional pin
1 RA2 I/O Bidirectional pin
2 RA3 I/O Bidirectional pin
3 RA4 Used for clock input to the timer0
4 MCLR This is a master clear low reset pin
15 OSC2/CLKOUT This pin is connected to a crystal oscillator and acts as a crystal oscillator output pin. In RC mode, this pin has a 1/4 frequency of OSC1
16 OSC1/CLKIIN This pin is connected to a crystal oscillator and acts as a crystal oscillator input pin
6 RB0 used as an external interrupt pin
7 RB1 All PORTB Pins are software programmed
8 RB2 I/O Bidirectional pin
9 RB3 I/O Bidirectional pin
10 RB4 Interrupt-on-change pin
11 RB5 Interrupt-on-change pin
12 RB6 Serial Programming Clock/Interrupt-on-change pin
13 RB7 Serial Programming Data/Interrupt-on-change pin
5 Vss Ground Pin
14 Vdd Voltage Supply Pin

2. PIC16F84a Features

In the previous section we highlight the basic functions of microcontroller pins. Now, we discuss the main features of PIC16F84a so you get a clear idea of what this chip is capable of doing before you make a final decision to install it in the relevant project. Following table shows the complete features of PIC16F84a.
PIC16F84a Features
No. of Pins 18
CPU 8-Bit PIC
Operating Voltage 2 to 5.5 V
No. of I/O Pins 13
Program Memory 1K or 1024 words
RAM 68 Bytes
EEPROM 64 Bytes
Internal Oscillator NiL
External Oscillator 20 MHz
Timer 8-Bit Timer (1)
USART Protocol 1
I2C Protocol NiL
SPI Protocol NiL
No. of Special Function Registers 15
Watchdog Timer Yes
Power-on Reset Yes
Design Static
Segment LED No
Power Saving Sleep Mode Yes
Selectable Oscillator Option Yes
Maximum Current Drawn Each Pin 25mA
Data Retention Capability 40 Years
Oscillator Start-up Timer Yes

3. PIC16F84a Functions

This PIC model performs many functions that are quite similar to the function in other controllers of the PIC community. Following are the main functions of PIC16F84a.
Timer
PIC16F84a contains one 8-bit timer that can be used in both ways i.e. timer and counter. and comes with internal and external clock select capability. When the bit T0CS (OPTION_REG<5>) is cleared, the timer mode will be selected and when this bit is set, the counter mode will be selected. The timer mode increments the instruction cycle while counter mode will increment the rising and falling edge of the pin.
In-Circuit Serial Programming
PIC16F84a is widely used for in-circuit programming as it contains USART module. This module consists of Tx which is a transmission pin used for transmitting serial data to other devices and Rx is a receive pin used for receiving serial data.
Watchdog Timer
PIC16F84a comes with built-in timer called watchdog timer that can be configured with programming. This timer is mainly used to reset the controller when a program hangs up during compilation or gets stuck in infinite loop of the program. More or less, watchdog timer works like a countdown timer and starts from 1000 and gradually goes down to zero. It must be reset to initial value after every 3 instructions in order to avoid reaching it to zero value in normal conditions.
Sleep Mode
Power saving sleep mode is added in the chip that generates a low current power down mode. The sleep mode can be removed using an interrupt, watchdog timer or external reset.
Power On Reset
This feature is included in most of the PIC controllers that resets the controller when it is powered on. If there comes a glitch in the chip, powering on the device will exclude it from the loop of any malfunctioning in the device.

4. PIC Compiler

  • MPLAB C18 Compiler is mainly used for PIC microcontrollers which is a standard compiler introduced by Microchip.  You can download this compiler online from the Microchip Official Site.
  • Third party software are also used for compiling the program and MikroC Pro For PIC is readily available for this purpose.
  • You must check this list of Top 3 PIC C Compilers where you can choose any compiler based on your needs and requirements.
  • The code written in the compiler generates a hex file that is uploaded on the PIC Microcontroller.
  • You can use PICKit3, a standard PIC burner, for burning the code in the controller. There are other unofficial burners used for burning the code, however, PICKit3 is mostly preferred and stays ahead of other burners in terms of efficiency and performance.

5. PIC16F84a Memory Layout and Working

Registers play a vital role in the controller. They are the data holding places in the processor of the controller. A single register can hold storage address, instruction and any kind of data ranging from bit sequence to individual characters. Registers are divided into two types General Purpose Registers Special Function Registers Both are used for holding specific data. General purpose registers are used for storing any modified or random value in the processor. While Special function registers monitor and control the various aspect of the processor functions. Registers are divided into two banks known as Bank 1 and Bank 2 where registers ranging from 00H to 0BH and 80H to 8BH are SFRs and remaining are GPRs. Each bank comes with 128 bytes of memory space where first 12 locations are allocated to special function registers while remaining are reserved for general purpose registers that are used as static RAM. Though we cannot write off the importance of GFRs, however, SFRs always stay ahead of GPR in terms of functionality. Let's discuss few registers in details so you can get a hold of what they are mainly used for. STATUS. This register is mainly used for switching between the banks. Setting fifth bit of this register indicates we targeting bank 1 while resetting it will indicate we are targeting bank 0. TRISA. This register decides the possibility if the Port A pins are used as input or output. The value 1 indicates output and value 0 indicates input. Suppose, Port A holds the value 0010, it represents RA0 and RA1 as an input and RA2 as an output, and similarly RA3 again as an input. TRISB. This register works similar to the TRISA and is mainly used to address the PORTB and decides its pins as an input or output. W Register. This register falls under the category of GPRs while all registers mentioned above are SFRs. It is accessible by a program and is not a part of any register bank. The desired values must be written on W register and moved to the target register before defining them for PORTA or TRISA.

6. PIC16F84a Block Diagram

Following figure shows the block diagram of PIC16F84a.
  • This model version falls under the family of mid-range microcontroller devices.
  • The program memory comes with 1K words of memory space which can configure 1024 instructions.
  • Some pins in the controller can be interfaced with other device functions including external interrupt, Timer0 clock input and Change on PORTB interrupt.

7. PIC16F84a Projects and Applications

  • This PIC version is mainly used in students project where automation is the main concern.
  • Central heating projects
  • Production of temperature data logger
  • Used in security systems
  • Gas sensor projects
  • Main part of the embedded system
  • Used in industrial automation
  • Setting up serial communication with other devices

8. Why Use PIC MicroControllers

Playing with circuits seems quite daunting for some people. They don't like to get involved in electronics with the illusion they need to be highly skilled and professional before working on electric circuits. Watching other people proceed and developing many projects with the same interest as yours put you in high inferiority complex. However, with the invention PIC controllers, and similar compact chips, things are not the same as they were a long while ago. PIC controllers are easy to configure and require no or minimum prior skills to get familiar with the complete working of the device. What makes them useful is their ease of use and economical price. You don't need a cluster of external components, as PIC circuits provide you everything in a single compact chip required for developing the electronic projects using minimum circuit layout. Timers, counters, serial communication interface, and so many identical functions can be performed using a single chip. That's all for today. I hope I have given you everything you needed to know about PIC16F84a. However, if you are feeling skeptical or have any question you can ask me in the comment section below. I'd love to assist you in any way I can. You are most welcome to give us your suggestions, they help us provide you quality work so you keep coming back for what we have to offer. Thanks for reading the article.

Tips on working and completing college homework

Hi Fellas! Hope you are doing well. I am back to give you a daily dose of useful information. Today, I'll highlight and cover the Tips on working and completing college homework. Students starting their college are asked to write a report and particular topics and technicality and involved in writing report and more complicated for students. Not exactly as unfortunately and lack to write a good report due to lack of effective writing tips and skills that is amazing is best. Actually, homework assignment writing and which need so much concentration and depth knowledge and the information are better to complete the homework assignment. If are experiencing problems and homework and would be as prudent to allow homework support is best.

Tips on working and completing college homework

If you want to get prominent college homework help then it will be a fantastic choice for you to make and here you will get the better homework tips and suggestions is to click right here.
Online homework help and support
Sometimes great to buy as assignments and online or hiring professionals from applicable writing services to support to do it is fine. Now it cannot compare the homework professional does with average students and would o and relying on professional services beneficial smoothly. Online writing services are efficient and reliable for students and there is absolutely no requirement while support is available as online. Some of the notable advantages and suggestions help is their operation and whenever have a homework task to accomplish at odd hours of the night and can reach out to service trust and ask for support. If a student wants quick and accurate support homework and hesitates to reach out reliable online homework writing services for help and assistance. The one strong and powerful and strong method for managing the study load that is systematically broken up reading and is studying into the carefully proportioned sections.
Planning for completing homework assignment
As before starting can help to create a basic assignment planning and structure. This can also be detailed like but the basic structure and should contain the details and introduction points and key arguments and point for an attractive conclusion. Homework will be easier to get it complete and online writing services providers solve each and every problem you may have.
Trustworthy college homework support
Effective writing and based on the trust and transparency and students want to trust and with their assignment only if they prove to be as with the completely quality and education is valuable and cannot risk trusting and writing services beautifully. It is best as to why required to take some perfect things about writing the homework assignments. It is absolutely a method so much as a necessary reminder and then is studying working complete things and going to get crazy.
Must improve the reading speed
Perhaps and greatest challenging as studying and working complete and keeping up along with the reading and also not as uncommon to be loaded and down along lots of pages each and every week. It is so as education and the career for preparing student and suddenly stops feeling at work and then just think of it doing against assignment and clocking the time management perfectly. That's all for today. I hope you have enjoyed the article. If you are unsure or have any question, you can ask me in the comment section below. I'd love to help you in any way I can. Thanks for reading the article.

Introduction to Power Management Integrated Circuits (PMIC)

Hey Friends! Hope you are doing well. I always strive to keep you updated with valuable information related to engineering and technology. Today, I'll uncover the details on the Introduction to Power Management Integrated Circuits (PMIC). These are the integrated circuits, commonly known as power management ICs or power management unit, used for managing and controlling the power of the host system.
  • They are mainly used in Consumer Electronics, Automotive Industry, Telecom, and Networking.
Integrated circuits are the part and parcel of some Electronics Projects. If you are a newbie or an expert, you require plenty of ICs every now and then. Apart from time management other factors that can highly influence the nature of your project include team expertise, working environment and most importantly the quality of products. In this tutorial, I'll discuss Introduction to Power Management Integrated Circuits and the best online platform from where you can buy quality integrated circuits. Let's dive right in and nail down everything you need to know.

Power Management Integrated Circuits (PMIC)

PMIC, as the name suggests, are integrated circuits mainly used for power management of the host system. They are highly efficient in nature and most of the versions can easily perform 95% voltage conversion. A single PMIC can use both PWM (Pulse Width Modulation) and PFM (Pulse Frequency Modulation).
  • Generally, they are used for individual power conversion, however, more than one function can be employed on the single IC based on the nature and quality of the product they are going to be installed in.
These power management ICs come in variety and range from Motor Control IC, Voltage Regulators, Battery Management IC, Microprocessor Supervisory IC, Integrated ASSP Power Management IC.
  • They are highly compact, cover less space and are suitable for hard to reach places. Most of the battery operated devices including smartphone and media players include these integrated circuits.
These ICs help in reducing the number of components required for the project as they can perform a number of functions on a single chip, helping you get rid of the cluster of components on board.
  • Heat dissipation is another feature that makes these ICs suitable for the projects that are subjected to high temperature and pressure.
 
Basic Functions
  • Power ICs are mainly termed as solid-state devices that play an important role in controlling the direction and flow of electric power with the ability to perform some basic electrical functions including voltage conversion, voltage scaling, power source selection and power sequencing.
  • It is equally suitable for DC-to-DC conversion that provides dynamic voltage conversion on board without losing the bit of accuracy and quality of the signal.
  • Most of the versions are created using BiCMOS process with some models come with the interface of serial bus communication.
Best Place to Buy PMIC
When you are working on your projects, you need to streamline everything right from the start of the project that may be time-consuming and put you in difficulty to pick the right platform for purchasing components. There are a lot of online platforms you can browse on the internet, some are better than others, and most likely all of them claim to provide top-notch service. However, you can't predict and anticipate the quality of products unless you have a hands-on experience working with a certain company. You can Buy PMIC on WinSource, which stays ahead of its competitors in terms of quality and highly economical rates. They will provide you hard to find integrated circuits with the flexibility of in-stock inventory, datasheets, and online purchasing. We bought integrated circuits from this platform a couple of times and they never failed to satisfy us every single time. Competitive Pricing Price is a major concern when you intend to buy any product. This platform will provide you a competitive price without losing the cent of quality. Support You can get support anytime that is readily available on their website. They not only help you find the required product but also assist and refer the suitable ICs based on the nature of the project you are working on.
Applications
  • Consumer Electronics
  • Automotive Industry
  • Telecom, and Networking
  • Voltage Conversion and Voltage Scaling
  • Battery Management Applications
  • Power Source Selection
That's all for today. I hope I have provided you everything you need to know about PMIC. If you are unsure or have any question, you can ask me in the comment section below. I'd love to help you in any way I can. You are most welcome to keep us updated with your valuable feedback and suggestions, they help us provide you quality work based on your needs and requirements. Thanks for reading the article.

Introduction to PIC16F628a

Hi Fellas! I am back to give you have a daily dose of valuable information so you keep coming back for what we have to offer. Today, I will discuss the details on the Introduction to PIC16F628a. It is defined as a self-contained 18-pin PIC Microcontroller that comes with memory, processor, peripherals and mainly used for embedded systems and applications. Microcontrollers always remain a top priority for experts where automation is the main concern. Before the invention of microcontrollers, microprocessors were widely used for carrying out different functions related to industrial automation and processing applications. Both of them work identical in one way or the other, however, there are some exceptions i.e. microprocessors don't come with ROM, RAM, and other peripherals, we need to add them externally to make them function like a microcontroller, however, microcontroller comes with all peripherals on the single chip, we don't need to add them externally; that is what makes it compact as compared to a microprocessor that is bulky. I this tutorial, I'll discuss each and everything related to PIC16F628a, its main features, pinout, working, and applications. Let's jump right in and nail down everything you need to know.

Introduction to PIC16F628a

  • PIC16F628a is an 18-pin tiny chip that contains processor, memory, I/O pins, other peripherals and mainly used for the embedded system, and in the applications that have a remote or direct connection with the automation.
  • It is a low cost, high performance, CMOS Flash-based 8-bit microcontroller and is equally compatible with PIC16F628, PIC16C5X, PIC16C62XA and PIC12CXXX devices.
  • The PIC16F628a comes with 128 bytes of EEPROM data memory, 4MHz internal oscillator, two 8-bit and one 16-bit timer, USART, PWM, two comparators and programmable low voltage reference that make it suitable for appliances, automotive, industrial and consumer applications.
  • The PIC processor is based on advanced RISC architecture and comes with 35 instruction set that is simple to use and easy to configure.
  • Like some controllers in the PIC community, the PIC16F628a features operating range around 2 to 5.5 V where the temperature range is -40 to 125 °C.
  • Programmable memory size is 3.5 KB and SRAM is 224 bytes.
  • This PIC model is capable of storing 2048 words of program memory so maximum program length can't exceed from 2048 instructions where each word defines a single instruction.
  • Four clock cycles are needed to execute each instruction except jump and conditional instructions that may require 8 clock cycles.
PIC16F628a Pinout
Following figure shows the pinout of PIC16F628a.
  • Looking at the pinout of the controller above, you can clearly anticipate most of the pins on the left side can be used for multiple purposes, however, specifying any pin for particular function rules out the use of that pin for another purpose.
  • There are two ports in this model known as Port A and Port B.
  • All these pins are bidirectional I/O pins except Pin # 14 & Pin # 5 that are supply voltage and ground pins respectively.
  • Pin # 7 & Pin # 8 are used for a serial communication where Rx is a USART receive pin, used for receiving the serial data while Tx is a USART transmit pin, used for sending the serial data.
  • Pin # 4 can be used in three ways.e. MCLR (Master Clear) that requires a constant supply of 5V and must not exceed Vdd. When configured as MCLR, this pin behaves as an active low Reset to the device. It is also used as an input port and programming voltage input.
  • Pin # 15 & 16 are known as OSC2 (Oscillator 2) and OSC1 (Oscillator 1), where we can attach an external oscillator of around 20MHz. The Pin # 16 is an input for the crystal oscillator and Pin # 15 acts like an output for the oscillator.
  • Both Pin # 2 and Pin # 3 are the analog comparator pins where Pin # 3 is also used as a clock input for Timer0.
  • Pin # 6 is a bidirectional I/O pin that can be used for an external interrupt.
  • Pin # 9 is used for capture, compare and PWM and can be software programmed.
  • Pin#10 is a low voltage programming input pin and can also be used for interrupt-on-pin change. It is important to note that when low voltage programming is configured, then both "weak pull-up resistors and interrupt-on-pin change" are disabled.
  • If you are new to microcontrollers and feel difficulty in finding the right approach to get the hands-on experience with controller then you can have a look at Introduction to Microcontrollers where I have laid out everything you need to know and with little effort you can become pretty nifty about controller and streamline real-time projects as per your needs and requirements.
Memory Layout  
  • The memory layout is a little bit different where each memory location is considered as a register that can be accessed by its address.
  • It is important to note that, not all register are available all the time, and memory is laid out in four banks that come with 128 registers and only one back can be accessed at a given time.
  • The first 32 registers in each bank are known as special purpose registers that can be used to control the processor and I/O pins. The last 16 registers available in each bank are shared across all banks whose values can be accessed any time without depending on the specific bank being used.
  • There exists a single working register known as "W" that is mainly used to store the modified values of the different function being used in the controller.
  • The memory capacity of this model is little less than other controllers available in the market, however, you can compile a function that requires minimum instructions and processing speed. If you intend to work with high processing speed and more memory, then you need to consider working with PIC16F877a.

Main Features

This model of PIC controller is very useful for embedded projects and comes with some valuable features that put this advice ahead of many controllers in the PIC community.
Special Microcontroller Features
  • Low voltage programming that programs the chip using the operating voltage of the device
  • Low-speed Clock mode
  • Programmable Brown-Out Reset (BOR)
  • Power-on Reset
  • Watchdog Timer with an independent Oscillator for reliable operation
  • Selectable Oscillator Options
  • Programmable code protection
  • Multiplexed Master Clear/Input-pin
  • Industrial temperature range
I/O and Packages
  • 15 I/O pins with individual direction control
  • 18-pin DIP & SMD Package
High-Performance RISC CPU
  • Only 35 single word instructions to learn
  • All instructions are a single cycle (1µs) except for program branches
  • Operate at 20MHz with an external oscillator
  • 4MHz internal oscillator that gives a clock at a certain frequency using constant voltage. It can be made to work at 48 KHz for power saving and debugging purpose
  • 2 KB Flash Program Memory
  • 224 Byte RAM Memory
  • 128 Bytes of EEPROM
  • In-circuit Serial Programming
  • 1,000,000 write EEPROM endurance
  • 100,000 write Flash Endurance
  • Oscillator Start-up and Power-up Timer
  • Wide operating voltage range around 2 to 5.5 V
Peripheral Features
  • Universal Synchronous/Asynchronous Receiver/Transmitter (USART)
  • One 16 bit timer/counter
  • Two 8-bit timer/counter(TMR0,TMR2)
  • Capture/Compare PWM (CCP) Module
  • High current source/sink for direct LED drive
  • Two Analog Comparators
  • Programmable weak pull-ups on PORTB
CMOS Technology
  • High-speed CMOS FLASH technology
  • Fully Static Design
  • Power-saving Sleep Mode
  • 40-year Data Retention
  • High-Endurance Flash Cell
  • Programmable VREF
PIC16F628a Compiler
  •  MPLAB C18 Compiler is the standard compiler used for PIC microcontrollers. You can get this compiler online from the Microchip Official Site.
  • Third party applications are also available for compiling the program where MikroC Pro For PIC stays ahead from other compilers available in the market.
  • You must check this list of Top 3 PIC C Compilers where you can pick any compiler based on your needs and requirements.
  • The code is written in PIC Compiler that compiles the code and generates a hex file that is uploaded on the PIC Microcontroller.
Applications
  • Mainly used in embedded system
  • Industrial automation and processing applications
  • Home automation and security systems
  • Data Processing Units
  • Robotics
That's all for today, I hope I have provided you everything you need to know related to this controller. If you are unsure or have any question, you can ask me in the comment section below. I'd love to help you in any way I can. Feel free to keep us updated with your valuable suggestion, they help us provide you a quality work. Thanks for reading the article.

Introduction to RJ45

Hi Guys! Hope you are doing well. We always strive to give the most relevant information as per your needs and demands. Today, I'll discuss the details on the Introduction to RJ45. It is a type of standard connector mainly used for data transmission. Almost all ethernet cables come with this connector on each end, and they, sometimes, known as RJ cables. The RJ in the connector stands for registered jack while 45 defines the number of interface standard. In this post, I'll cover each and everything related to RJ45, why it used, features, and main applications. Let's dive right in and nail down everything you need to know.

Introduction to RJ45

  • RJ45 is a type of connector, mainly used for Ethernet networking including connection with PC network cards, data switches, WiFi access points, and routers.
  • It is connected to each end of Ethernet cables and acts as the main source for transferring data. RJ stands for registered jack and ethernet cables are also known as RJ cables.
  • The most common standard for RJ cables is known as CAT5 (Category 5)
  • In simple words, connectors at the end of ethernet cables are known as RJ45 connectors which also indicate how the cables are wired, while ethernet cables are termed as CAT5 (also RJ cables) which show the maximum speed the cable can attain.
  • RJ connector comes with eight pins which indicate it can house eight wires inside. All these wires come in different colors i.e four are in solid color while the remaining four are stripped. These wires are combined in twisted pairs that help in reducing the crosstalk and canceling EMI.
  • These cables are not shielded and are merely twisted for noise reduction.
  • CAT cables are mostly used in networking and can handle bandwidth around 100mbps.
  • These cables fail to work in high-speed environments, in that case, CAT5 is widely replaced by CAT6.
  • RJ45 cables deem feasible for both long and short distance, and apart from supporting ethernet protocol, they also work for ATM and serial ISDN T1 and E1.
  • RJ45 come with 8 wires and only 4 of them take part in the communication where pin 1 and 2 are used for data transmission while pin 3 and 4 are used for receiving data. (only in ethernet interface)
  • In serial and ISDN protocols, all pins take part in the communication and are wired in a straight through configuration.
  • Don't get confused between RJ connectors and RJ ports. Both are the part of RJ protocol where connectors serve as a (male) connector and port that receives the connector is known as (female) port.
 RJ45 Pinout and Wiring Standards
RJ cables are wired in two ways named T-568A and T-568B. Wiring standards in both of them are different and listed below.
  • Both wiring schemes are equally practiced and commonly supported by most of the devices, however, T-568A is preferred over other.
Following figure shows the pinout of RJ45 (T-568A). Following figure shows the pinout of the RJ45 (T-568B).
  • In some networking applications, crossover ethernet cable is a prerequisite which contains T-568B at one end and T-568A on the other end.
  • This cable is mainly used in computer-to-computer connections.
Difference between RJ45 and RJ11
  • Both connectors are different in terms of size, wires, and applications.
  • RJ45 is relatively large as compared to RJ11 and mainly used to build a connection with routers, computers, XBoxes, hardware firewalls and play stations. It comes with 8 wires.
  • While RJ11 is smaller in size, comes with 4 wires and mainly used for connection with telephone, modem, and fax machine.
  • Although RJ11 comes in smaller size and can fit in the RJ45 slot, however, it is not recommended to use this practice. Doing so can damage the slot and affect the overall working of the device in which it is plugged in.

Types of Ethernet Cables

Ethernet cables are widely used for telecommunication and networking purpose. They come in different types based on nature and data transmission speed they can carry along the length of the wire. RJ45 connectors are connected on both sides of the cables that act as a source of data transmission. Following are the main types of Ethernet cables used for networking and telecommunication purpose. CAT-1. It stands for category 1 that doesn't support TIA (telecommunication industries association). It is mainly used for standard telephone wiring and ISDN. CAT-2. Similar to CAT-1, this type of wiring is not recognized by TIA. It is mainly used for token ring wiring and capable of carrying data at the rate of 4Mbit/s. This is the old version of cable wiring and widely abandoned by advanced cable categories. CAT-3. This cable wiring is widely supported and recognized by TIA/EIA. It is mainly used for data networks and can carry data at the rate of 100Mbit/s. However, this type of wiring is also becoming obsolete because of less data transmission speed and frequency for carrying out different functions at the decent pace. CAT-4. This type of cable wiring is not supported by TIA. It is widely used for token ring networks with the capability of supporting frequency up to 20MHz. CAT-5. Category 5 cables were introduced with the intention of providing more speed as compared to their predecessors. They can transmit frequency up to 100MHz and are not recognized by TIA. This cable wiring uses two twisted pair and is not recognized by TIA. The CAT-5 cable is not recommended for recent applications, however, it is useful for 100Base-T and 1000Base-T networks as it provides suitable speed and frequency for the data networks. CAT-5e. This cable wiring is almost similar to CAT-5 with some exemptions in terms of data transmission speed and TIA recognition. It is preferred for applications where speed is a major concern as it can support speed up to 125 Mbps. The physical appearance of this wiring is similar to CAT-5 and widely used for 100Base-T and 1000Base-T networks. CAT-6. This cable wiring is recognized by TIA and stays ahead of other ethernet cables in terms of performance and speed i.e. supports up to 10Gbps. They come with an outer foil or braided shielding and cover less space as they are tightly wound as compared to CAT-5 and CAT-5e. The shielding minimizes the crosstalk and noise and protects the twisted pair of wires inside the cable. They can work and cover a distance of around 55 meters. CAT-6a. It stands for Category 6 Augmented cable. They come with higher transmission speed, encompass maximum bandwidth and are less flexible than CAT-6 cables. They can carry more data along the length of the cable as compared to their predecessors and cover more distance without losing the bit of accuracy. The shielding is added in the wiring that protects the cable and helps in removing the crosstalk. CAT-7. It supports frequency up to 600 Mbps and comes with four individually shielded pairs. It works best in many applications for carrying out data transmission at a decent pace. They are introduced for rated speed of around 10 Gigabit. CAT-7a. These cables are used for augmented specifications that can support speed around 10 Gigabit. They cover frequency up to 1000 MHz and are quite identical to CAT-7 cables in terms of physical appearance and performance capability.

How to Connect Two Computers Using Ethernet Cables

It is very easy to connect two computers for data transmission using ethernet cables. The CAT-5 or CAT-5e crossover cables are widely used for this purpose and prevent from losing any data during transmission. These cables are quite identical to straight through cables but come with twisted wires on both ends. You can use the following steps to connect two computers using ethernet cables.
  • Connect one end of the cable with RJ45 connector into the ethernet port of the computer. Plug the other end of the cable into another computer.
  • Log in to one of the computers.
  • Go to the search box at the bottom left of the computer and type "Network and Sharing Center" and click it.
  • Then go to the "Change Adaptor Settings" on the top left side.
  • Right click on the "Ethernet" and go to properties.
  • Then select "Internet Protocol version 4 TCP/IPv4" and click properties.
  • Select the IP address and subnet mask at the two computers as mentioned below.
To check the connection, restart both PC and use the below instructions.
  • ping 192.168.0.2 -t: from the second PC
  • ping 192.168.0.1 -t: from the first PC
Right click on this PC option and click on "Change Settings" option.
  • The "Workgroup" name should be identical in both PC, otherwise, ethernet connection won't work.
  • If you want to share whole drive, just right click on the drive you want to share and select share with "Advanced Sharing Options" and check the box beside share this folder option and click "OK" to apply changes.
Applications
  • RJ45 are mainly used in ethernet cables for data transmission. They come in two types i.e. T-568A and T-568B.
  • As compared to the RJ11 connector, RJ45 comes with more applications including ethernet networking, industrial automation, and telecommunications.
That's all for today. I hope I have given you everything you need to know about RJ45. However, if you are feeling skeptical or have any question, you can approach me in the comment section below. I'd love to help you in any way I can. Feel free to keep us updated with your valuable feedback and suggestions, they help us provide you quality work so you keep coming back for what we have to offer. Thanks for reading the article.

What is Big Data? How it Helps for Business Growth

Hi Guys! This is a platform where we keep you updated with the relevant information that resonates with your needs and requirements. Today, I'll discuss the details on What is Big Data? How it Helps for Business Growth. 

Big data is defined as a number of data sets that come with complex and advanced computing capabilities and can handle, analyze, store and process data in large volume without losing a bit of accuracy. Implementing embedded analytics dashboards can be highly beneficial, since companies that successfully monetize their data can see up to 20% of total revenue generated by analytics-based offerings.

It stays ahead of traditional data processing applications in terms of accuracy and advancement.

With the sheer progress in technology, every business strives to progress in both online and offline fields and provides an easy pathway for the customers to search and analyze the most relevant information based on their demands.

With a lot of information spread across the web, only those businesses survive and excel who tailor their marketing strategies based on the visitor's interest.

Big data plays a vital role, not only in keeping the user information intact but also predict, analyze and providing accurate information that helps visitors keep coming back on your platform every now and then.

What is Big Data?

Big data contains data sets that deal with a large amount of complex data where traditional data processing applications fail to deliver.

  • When customers come to visit your platform quite often, it is very difficult to use traditional software for making all the information intact, streamlined and documented on your system. This is where Big Data Analytics comes into play.

There are many parameters that help your business grow in no time, and Big Data is one of them that proves to be very handy for processing complex data. There are four terms widely used for Big Data named as volume, variety, velocity, and veracity.

Big Data for Business Growth and Progress

Following are the main benefit you can leverage using Big Data.

Maintain Customers Relationship

Customers are the bread and butter of any business. The more you keep visitors' demands on top with flawless service, the more you come with a chance of growth and staying ahead of your competitors. Big data is very useful in retaining the customers' relationship with the business.

When visitors are searching for some information on the internet and find some site useful, they are more likely to click the webpage. Big data not only helps in providing useful information but also helps and anticipates the information that has a remote connection and seems feasible for the user's interest.

Storing Customers' Data

Custom Big Data Development assists in providing the previous information that visitors did a long time before and helps them make a final decision.

  • When any system stores information, privacy is highly concerned. Only those businesses grow that give their customers peace of mind that their information won't be spread around or shared for their personal gains, instead it is mainly used for the retention of user interest, so they feel no hesitation in searching and scrolling the information that they did before on the same platform.

Most companies make their business plan and future decisions based on the visitors' information stored on the system.

Health and Safety

Some people are worried about their health and find difficulty in collecting the suitable calories ratio that their bodies require. But, don't worry, where there is a little room for progress and growth in human development, technology comes in handy every time.

  • Apple company has introduced an app called ResearchKit - A research device mainly used for storing your regular activities on the device.

Phone devices can now analyze the user actions that help experts predict the data and use it for health studies and come with a relevant solution for certain health diseases.

  • Smart Yoga Mat is a major development for storing your pose and health activities. It comes with a sensor that stores the pose and gives feedback on your activities on the mat and helps for streamlining and tailoring body movements based on the feedback.

We can not write off the importance of Big Data for making our machines and cars autonomous. Toyota Prius comes with cameras, GPS and powerful computing abilities that help you drive the car without human interference.

Final Thought

  • Big Data is imperative for consistent business progress. Customers are more inclined to your business if they feel no hesitation in finding the relevant information on your platform.
  • Companies who leverage Big Data always stay ahead of their competitors in terms of ease of use and hassle-free service.
  • Big Data helps in streamlining the strategies around the customers' needs based on the data collected and stored on the system. It covers almost every field ranging from health, safety, automobiles, science, medical, to logistics.

That's all for today. I hope I have provided you quick read related to Big Data and how it helps your business grow skyrocket. Feel free to keep us updated with your feedback and suggestions, they help us provide you with quality work. Thanks for reading the article.

Syed Zain Nasir

I am Syed Zain Nasir, the founder of <a href=https://www.TheEngineeringProjects.com/>The Engineering Projects</a> (TEP). I am a programmer since 2009 before that I just search things, make small projects and now I am sharing my knowledge through this platform.I also work as a freelancer and did many projects related to programming and electrical circuitry. <a href=https://plus.google.com/+SyedZainNasir/>My Google Profile+</a>

Share
Published by
Syed Zain Nasir