Category Archives: Embedded Lessons


Overview of an Embedded System

Computer systems are everywhere. They fall into essentially two separate categories. The first and most obvious is that of the desktop computer. This is the machine that first comes in our mind when we talk about computers. Desktop computers are designed to be flexible and to meet a wide range of user needs. The end users can change the functionality of a desktop computer by simply changing the application program. One moment you may be using it as a word processor, the next you as an mp3 player or a game station. The second type of computer is the embedded computer

Read more

Timers and counters

Introduction Most microcontrollers are equipped with one or more precision timing systems that can be used to perform a variety of precision timer functions including generating events at specific times, determining the duration between two events, or counting events. Example applications that require generating events include generating an accurate 1 Hz signal in a digital watch, keeping a traffic light green for a specific duration, or communicating bits serially between devices at a specific rate, etc. Theory of operation The main component of such a timing system is a free running binary counter. The counter increments for each incoming timing

Read more

Lab 5: Analog-to-digital conversion (ADC)

Description Analog-to-digital conversion (ADC) is necessary because, while embedded systems deal with digital values, their surroundings typically involve many analog signals such as, temperature, speed, pressure, the output of a microphone, etc. They all need to be converted into digital data before being processed by the microcontroller. Today, we will see how to read an external analog signal using a PIC16F688 microcontroller, and display the conversion output (a digital number) on a LCD. The input analog signal will be a varying voltage between 0-5V derived using a potentiometer. Required Theory The PIC16F688 microcontroller has a built-in 10-bit ADC with eight

Read more

Choosing a PIC Programmer

If you are a beginner in the world of PIC microcontrollers then you will probably have this question in your mind: Which programmer should I buy? This is an obvious question because there are tons of PIC programmers available from various vendors and if you search on the various online technical discussion forums for their reviews, everybody has his own opinion. This will confuse you more, and you will be ended up with nothing. I would suggest, just buy one that you can afford and that fulfills your need. Having said that, I won’t recommend to buy one that requires

Read more

PIC16F688 breadboard module for quick prototyping

This module is based upon the basic setup circuit for PIC16F688 that I have described in one of my PIC lessons, Getting ready for the first lab. I thought of soldering this circuit on a general purpose ptototyping board and use male headers to access the power supply pins and I/O ports of the PIC16F688 microcontroller. This will free up a lot of space on the breadboard as the ICSP header and the reset switch are transferred from the breadboard to the module. This will make prototyping on the breadboard easier and quicker. The general layout of the module is shown

Read more
« Older Entries Recent Entries »