Pulse Width Modulation – What is it?

Anish August 17, 2013 5 Comments
The good definition of Pulse Width Modulation (PWM) is in the name itself. It means modulating/varying the width of the pulse (Not the frequency). To best understand what PWM is, let us first see some basic terminologies. Microcontrollers are intelligent digital components which live on binary signals. Best representation of a binary signal is a square wave. The following diagram explains the basic terminologies associated with a square wave signal. As the shown in the above diagram, the important...
read more

Bit rate Vs Baud rate – the common misconception

Anish September 17, 2012 17 Comments
The two most common/confused words in digital communication – Bit rate and Baud rate. Generally, communication is concerned with transmission of data. In digital communication, there are two entities that are needed to carry out communication – the data to be transmitted and the signal over which the data is transmitted. Now, we have two entities to be worried about – the data and the signal. The most common misconception is that most people think both travel at the...
read more

Transmitting data from PC to LCD using UART of PIC16F628A

Anish July 17, 2012 12 Comments
Our world relies upon Communication. In today’s world, we can make almost anything communicate with everything! How about communication between a PC and a microcontroller (PIC)? Now, before making a PC and a PIC talk, if you are not sure about USART module and LCD, here are some good articles about them to just refresh: 1. PIC USART module – CT 2. A note on character LCD displays – CT In layman terms, a USART module in a PIC...
read more

Working with MPLAB IDE

Anish June 5, 2012 No Comments
Introduction to MPLAB IDE – What is it and how to install it? The above link takes you to the article about introduction to MPLAB IDE, in case if you have missed it. Having installed MPLAB IDE and one or more compiler suite, this article describes how to compile a program and extract the .hex file to program our chip. I will be using C language in this tutorial as it is requested by one of our CT readers...
read more

Introduction to MPLAB IDE

Anish June 5, 2012 No Comments
Similar to Atmel’s AVR studio, Microchip MPLAB is a feature rich IDE which integrates compiler tool-chains into the IDE itself and also supports proprietary programming devices and debuggers for the Microchip’s Controller family. Just if you have a microchip programmer such as Pickit2 or ICD2, then just plug it to the computer and all you need is to prepare your code in the MPLAB IDE and then straight away build and download the code into your controller. Downloading MPLAB...
read more

Timers and Interrupts (PIC16F84A)

Anish June 5, 2012 1 Comment
Timer Module: A Timer is a simple module included along with almost most of the microcontrollers. A timer can be used as a timer/counter. The size of the timer varies from controller to controller. The PIC16F84A has one 8 bit timer module. The very basic operation of a timer is to count and nothing else!. In the timer mode, the module will increment automatically for every instruction cycle (instruction cycle is not same as the clock cycle) and in...
read more

Arduino (For beginners)

Anish February 4, 2016 13 Comments
We have developed this article as a beginners guide for Arduino.  We have compiled many of our arduino articles to help you understand the board better and begin your first serious project using Arduino. So let’s begin. Ever thought of working with microcontrollers, but resisted due to lack of knowledge about them? Ever made a futile attempt of reading a whole microcontroller datasheet? Ever found hard learning (memorizing) the assembly syntax and keywords? Can’t afford to buy the costly USB...
read more

PIC16F84A – Instruction Set (Continued)

Anish June 5, 2012 1 Comment
Having known about the byte oriented file register operation, only two categories are remaining – the bit oriented file register operations and the control operations. Bit-oriented file register operations: Here these instructions are used when a single bit needs to be affected/changed/checked. There are only four bit-oriented instruction for the 16F84A Mnemonics & Operands Description BCF f,b Bit clear f (b represents the bit to be cleared in the specified register) BSF f,b Bit set f BTFSC f,b Bit...
read more

PIC16F84A – Instruction Set

Anish June 5, 2012 1 Comment
The instruction set of PIC16F84A has 35 instructions .These instructions are otherwise called Mnemonics. While introducing about the PIC16F84A till the hello world program,  7 instructions are introduced to you which were, BSF – bit set f BCF- bit clear f MOVLW – move literal value to W-register MOVWF – move contents of W-register to file GOTO – go to the address BTFSS –  Bit test f, skip if set DECFSZ...
read more

PIC16F84A – The Hello World program.

Anish June 5, 2012 2 Comments
The previous posts about PIC16F84A explained about controlling the GPIO(General Purpose I/O) pins of the IC. Previously laid circuits explained only about how to switch on or off an LED. You just simply set the desired pin to output and then send a high/low signal to switch on/off the LED. Now, in this post, let us implement the blinking of LED – “The hello world program of embedded electronics” . So what do you do to make an LED...
read more

PIC16F84A – Working with Inputs

Anish June 5, 2012 2 Comments
I hope everyone who read the post about programming the PIC16F84A will now be savvy with downloading the program to the controller, and also check the working of the controller. In the previous post, we discussed about producing an output (switching on an led) using PIC16F84A. Here, I will tell you how to work with inputs – How will you provide inputs to your PIC and how to develop a response to it. As you all know, the controller...
read more

Introduction to Microcontrollers – Programming the PIC16F84A

Anish February 24, 2012 12 Comments
Having known about the architecture of the PIC16F84A, lets dive into learning how to actually program the controller. As you all know(If you have read the post about getting started with PIC16F84A) the port B pins RB6 and RB7 along with the MCLR pin will be used to program the  controller(To quote again, RB6 is pin 12, RB7 is pin 13 and MCLR is pin 4 of the microcontroller). So, whats the big deal about programming? It just this...
read more

Introduction to Microcontrollers – Getting Started with PIC16F84A

Anish December 26, 2011 11 Comments
As introduce in the article, introduction to embedded systems, Microcontrollers are the brain of an embedded system. So, In this article, I will be explaining PIC16F84A – an eight bit microcontroller from Microchip. You may now ask, “Why do we start with this particular microcontroller, aren’t there any other?” Well, it is obvious that an entity discussed at introduction will be easy to understand. Apart from this, there are some strong reasons that I chose to introduce PIC16F84A such...
read more

Embedded Systems – An Introduction

Anish December 19, 2011 7 Comments
Hi everyone, We are introducing a new author to CircuitsToday 🙂 Well, here meet Anish.K, a student in engineering from Anna university. He will cover topics on Embedded systems and Robotics mainly. You can read about Anish in his bio page. Anish will publish his articles on every Tuesday. So stay tuned for your Tuesday column every week. Introduction to Embedded systems: Hai, this article pictures the very basics of embedded system for a beginner. Embedded System – What is it?...
read more