Monday, December 26, 2011

16x2 Serial LCD (Two Wire) with PIC12F675

           The General purpose 16x2 or 16x1 char LCD are very easy to interface with any microcontroller , and these lcd are really very cheap and thoroughly available in the whole world, but the only problem with these lcd is they require 4 or 8 data lines + 2 or 3 control line to at minimum 6 line and maximum 11 lines are required. that not good because many small package microcontroller like PIC10 ,PIC12,PIC16 from microchip ,MSP430 Texas Instrument and Attiney from Atmel there all microcontroller have either 6 to 15 I/O lines. in this condition this technique will save you many I/O line because in this we use only 2 wires to connect the lcd with any microcontroller.

             Most of these 16x2 ,16x1,8x1,8x2 ,8x4 ,20x4 and so on use stranded 8 line data and three control signal EN :- enable ,,RS- Register Select(data/command) ,, RW - read write

for futher details how these lcd works , pin configuration and command other things please visit my previouse post CLICK HERE :- 16x2 LCD with MCU



Thursday, December 1, 2011

16x2 Char LCD with TI MSP430 Launch Pad


      what we are gonna do is  interfacing MSP430 with an LCD module. In this case a typical 16x2 parallel LCD module with the Texas Instruments' MSP430G2211 on Launchpad development board. i will not cover much on the LCD side because i have already explained the working of HD44780 LCD in my previous post.


if you are new to LCD and have no idea how to make them work. checkout my previous post 

Wednesday, November 30, 2011

Nokia 1100 LCD Interfacing with Microcontroller

 Displaying content on a normal alphanumeric display is very limited ,we have to be limited with the font size and we can't draw any graphics also. but convention Graphics lcd are really very expensive so here is the solution, you can use Nokia 1100 monochrome  LCD to display your large font text and graphics . the reason behind using this LCD is ,it is really very cheap and can be powered with 3 volts supply. so it is really good for battery powered application.

      Driver IC on this LCD panel is PCF8814 which even though has I2C protocol support - doesn't use it. Instead it uses simple bit-banging mechanism for communication.


Project Description 

       however you can use almost any microcontroller (need a little bit extra circuit to work with mcu who doesn't support 3v) do display content on this LCD, may be that micro controller is PIC , AVR or MSP 430 ,8051 but in this demonstration we will be using Microchip PIC 18F458 Microcontroller.

    The software program for this project will be written in C with MPLAB IDE , This LCD has a resolution of 96 x 65 pixels

Thursday, November 10, 2011

Beginning MSP430 Microcontroller with Launch Pad


 introduction to the TI MSP430 low-power microcontrollers

Overview

The MSP430 is a very clean 16-bit byte-addressed processor with a 64K unified address space, and memory-mapped peripherals. The current family includes a variety of on-chip peripherals, and ranges from a 20-pin package with 1K of ROM and 128 bytes of RAM to 100-pin packages with 60K of ROM and 2K of RAM. Devices with greater RAM and ROM, and additional peripheral blocks are in development.

The MSP430 excels where low power consumption is important. Many applications, such as water meters, are currently achieving more than 10 years operation from a single button cell battery. If low power is not critical, well, the MSP430 is a nice elegant device to use, anyway. It programs very well in C, making assembly language programming unnecessary. There is no memory bank switching to make the compiler's life difficult; it uses normal RAM for its stack; it has a clean 16 bit instruction set. In fact, it is somewhat like an ordinary desktop RISC processor, but requires very little power.


Flashing the two on board led alternately  :- the adventure begin 

Thursday, November 3, 2011

Nokia 3315 LCD Based Temperature Meter

Introduction


 This is General purpose Temperature  meter for measuring Temperature  from -55 ºC  to 150 ºC ..It is a very useful bench test equipment for testing and finding out the temperature of various devices with unknown temperature  such as room temperature , cpucabinet, etc. The meter provides very stable readings and has excellent input sensitivity thanks to LM 35 Temperature sensor from National Semiconductor , so it can even measure small temperature change.

   The LM35 is three terminal temperature sensor which gives output in the form of analog voltage. LM35 linear to the whole temperature range it generate 10 mV/ºC. this analog voltage is feed to the internal 10 bit analog to digital convertor of the PIC 18F458 which convert it into temperature and then display to the NOKIA 3315/3310 LCD.




Tuesday, September 13, 2011

PIC 18F4550 USB IO (Input / Output) Board with Analog


USB Interface Board Using PIC18F4550






USB IO Board Schematic


Wednesday, August 31, 2011

HD44780 16x2 Char LCD Interfacing with microcontroller

    An alphanumeric low cost LCD Display is very essential for may small and big projects to Display various type of information. Hitachi HD44780  Chipset based 16x2 char LCD is Really very cheap and easily available in the local market.

Project Description:-


  In this project we are going to learn various things about this chip set and displaying text on this LCD. The HD44780 16x2 char LCD screen Use 8bit and 4 bit parallel interface with backlight.

This Primary Objective in this project are:-


1.  Displaying  "Hello Word!! LCD " message on the scree.
2.   Interfacing The LCD to the Microcontroller Using 8bit  Mode and 4 Bit Mode.
3.  Generating and Displaying Custom Char on the LCD Screen. clik here for custom char

Nokia 3315 / 3310 LCD interfacing with Microcontroller

    Displaying content on a normal alphanumeric display is very limited ,we have to be limited with the font size and we can't draw any graphics also. but convention Graphics lcd are really very expensive so here is the solution, you can use Nokia 3315 / 3310 monochrome  LCD to display your large font text and graphics . the reason behind using this LCD is ,it is really very cheap and can be powered with 3 volts supply. so it is really good for battery powered application.

Project Description 

       however you can use almost any microcontroller (with capability to work on 3v ) do display content on this LCD, may be that micro controller is PIC , AVR or MSP 430 , but in this demonstration we will be using Microchip PIC 18F458 Microcontroller.

    The software program for this project will be written in C with MPLAB IDE , This LCD has a resolution of 84x48 pixel.

Circuit Description

Circuit Diagram of  Nokia 3315/3310 interface with micro controller

Accurate LC inductance /Capacitance Meter

About The Project 

This is accurate home made LC inductance/capacitance meter built with very common components which are very easy to find all around . The range of this LC Meter is extremely good at measuring very low value of capacitance and inductance.

LC Meter's Inductance Measurement Ranges:
- 10nH - 1000nH
- 1uH - 1000uH
- 1mH - 100mH

LC Meter's Capacitance Measurement Ranges:
- 0.1pF - 1000pF
- 1nF - 900nF


it auto calibrate when power up , so there is no chances of human error in calibration. we can also re calibrate at any instance of time by pressing the reset button.this meter is completely auto range.

Components.

  • No particularly accurate components are required, except for one (or more) accurately known "external" capacitors used to calibrate the meter.
  • The two 1000pF capacitors should be fairly good quality. Polystyrene are preferred. MKT are fine. Greencaps tend to drift in value too much. Avoid ceramic capacitors. Some of these can have high losses (and it is hard to tell).
  • The two 10uF capacitors in the oscillator should be tantalum (for low series resistance/inductance).
  • The 4MHz crystal should be a genuine 4.000MHz one, not something approximate to 4MHz. Every 1% error in crystal frequency adds 2% error to the indicated inductance value.
  • The relay should be a low current one. The PIC can only provide about 30mA of drive current.
  • Don't forget the "catch" diode across the relay coil!


Microchip SPI Basics Tutorial For PIC18

Introduction 
             The Serial Peripheral Interface (SPI) is one of the popular embedded serial communications widely supported by many of today’s chip manufacture and it considered as one of the fastest serial data transfer interface for the embedded system. Because of its special in/out register configuration, the SPI master device could transfer its data and at the same time it receive a data from the SPI slave device with the clock speed as high as 10 MHz. Beside its superior data transfer speed; SPI also use a very simple data transfer protocol compared to the other serial data transfer methods. When the SPI master device want to send the data to the SPI slave device then the SPI master will just simply shifting its own data through a special 8-bits register and at the same time the SPI master will receive the data from the SPI slave into the same register as shown on this following picture.

           With this circular shift register connection between the SPI master and the SPI slave devices, the complete data transfer from both devices will be accomplished in just 8 clock cycles. This means the SPI devices only need about 0.8 us to complete transfer the 8-bit data if we use 10 MHz clock. One of the drawbacks using the SPI especially when we use multiple SPI slave device is the SPI slave could not initiate sending its own data to the SPI master device, all the data transfer initiation is always come from the SPI master. The SPI master device has to poll each of the SPI slave devices to know whether the SPI slave device has a data to be sent to the SPI master device or not.

           Polling the entire SPI slave devices will eventually consumed the SPI master resources when the SPI slave devices to be polled increase, therefore some of the SPI slave device is equipped with the interrupt pin to notify the SPI master device that it has a data to be read.

Monday, July 18, 2011

60 Mhz Frequency Meter / counter

Introduction


 This is 60 MHz frequency meter / counter for measuring frequency from 10 Hz to 60 MHz with 10 Hz resolution. The meter provides very stable readings and has excellent input sensitivity thanks to on board amplifier and TTL converter, so it can even measure weak signals from crystal oscillators. With the addition of prescaller it is possible to measure the frequency of 1GHz and above. 

           The basic idea comes from the AN592 Microchip application note: "Frequency counter using PIC16C5x" where you may find a simple software wich implements a frequency counter using a PIC microcontroller.I wrote a specifically designed software to improve the counter resolution, to handle the IF mode and value by means of an operating menu, to decode and edit the read frequency on an LCD display. The result was a simple and effective device. 


Sunday, July 17, 2011

Two-Channel PC Based Oscilloscope USB

Inroduction

More and more experiments are now ‘PC-assisted.’ Also conventional acquisition systems are very expensive. Since portable  PCs are today common and a USB link is a better solutionhere we present an oscilloscope using USB port of the PC that operates at up to 10 kHz with ±16V input voltage. It has much more improved features than the PC-based oscilloscope . The oscilloscope uses IC PIC18F2550 from  Microchip as the main controller, which makes the oscilloscope compact as there is no need of additional power supply for the entire circuit board.


Circuit description

     At the heart of this oscilloscope is USB2.0-compliant microcontroller PIC18F2550 from Microchip. You can also use  IC18F2445 in place of PIC18F2550. Specifications of this microcontroller are:-
Features of 18F2550
Programming
1. Up to 32 kB of flash memory, 2kB RAM and 256-byte EEPROM
2. Extended instruction set (optimised for ‘C’ compiler)
3. 8x8 single-cycle multiplier
4. Single-supply serial programming and easy debugging
USB transceiver
1. USB1.1 and 2.0 from 1.5 MB/s to 12 MB/s
2. Isochronous, bulk and interrupt transfer modes
3. 1 kB of access RAM usable with 32 endpoints (64 bytes each)
Multiple oscillator and power modes
1. From internal 31 kHz to external 48 MHz with PLL
2. Possible software switching between ‘run,’ ‘idle’ and sleep
modes. In sleep mode, current is down to 0.1 μA.
3. Wide operating voltage range (2.0V to 5.5V). Useful for battery
operations.
Complete set of classical peripherals
1. Several input/output (I/O) ports, four timers with capture/
compares
2. Synchronous and asynchronous enhanced modules
3. Streaming parallel port
4. 10-bit ADC module with up to 13-channel multiplexer.

This microcontroller has a USB2.0-compliant transceiver and a CPU running up to 12 MIPS.



Pickit 2 clone The Universal Microchip PIC Programmer /Debugger

About The programmer


        The PICkit™ 2  Programmer/Debugger is a low-cost development tool with an easy to use interface for programming and debugging Microchip’s Flash families of microcontrollers. The full featured Windows programming interface supports baseline, mid-range, PIC18,8-bit, 16-bit, and 32-bit microcontrollers, and many Microchip Serial EEPROM products. With Microchip’s powerful MPLAB Integrated Development Environment (IDE) the PICkit 2 enables in circuit debugging on most PIC microcontrollers. In-Circuit-Debugging runs, halts and single steps the program while the PIC microcontroller is embedded in the application. When halted at a breakpoint, the file registers can be examined and modified.


Features
1. This device will work like the normal pickit2.
2. This wll work for any pic (5 and 3.3V devices)

3. No mosfets no complex, only one voltage boost circuit.
4. you can program the target without PC.





Simple Steps to made This programmer

Step 1:- 
Download:Firmware and circuit
T
he following packages include circuit and firmware.
Firmware is the software which going to be burn into programmer's microcontroller, this firmware have code to enable the programmer to communicate with pc via usb and target microcontroller.
Click This link to dwonload the Firware and circuit 
Pickit 2 clone files 

you can also download the firmware form the microchip web site.
For Supported device list Please refer to Readme.txt and pickit 2 user manual for details on building, installing and using Pickit 2.

Tuesday, June 28, 2011

USB 8051 (89 series) & AVR Microcontroller Programmer

About the programmer

         This simple microcontroller programmer can progam most of  the 89 like Atmel's AT89S51, AT89S52, AT89S53, AT89S8252, AT89S8253  including the Atmel AVR series of microcontroller , it does not support 89C series . It simply consists of an ATMega8 and a couple of passive components. The programmer uses a firmware-only USB driver, no special USB controller is needed.

Features
  • Works under multiple platforms. Linux, Mac OS X and Windows are tested.
  • No special controllers or smd components are needed.
  • Programming speed is up to 5kBytes/sec.
  • SCK option to support targets with low clock speed (< 1,5MHz).
if you have all ready have your USBasp programmer, which is previously posted on my blog as USB AVR PROGRAMMER then there is no need build new hardware you just need to change the firmware of the programmer microcontroller.

Simple Steps to made This programmer

Step 1:-
 Step 1:-

Download:Firmware and circuit
The following packages include circuit and firmware.
Firmware is the software which going to be burn into programmer's microcontroller, this firmware have code to enable the programmer to communicate with pc via usb and target microcontroller

Click This link to download the Firmware and circuit
usbasp8051(4 kB )


Please refer to Readme.txt for details on building, installing and using USBasp.

Schematic USB 8051 & AVR Mircrocontroller progammer

Sunday, May 1, 2011

Microchip PIC Serial Port Programmer

About the Programmer

  This is a Simple com port based Microchip PIC microcontroller Programmer,This Programmer is based on JDM programmer.The entire programmer is built around commonly available components

Features

  • Does not support the usb to serial converter.
  • Works with most of PIC mcu.
  • Works with 18F2550 and other 18F series mcu.
NEED A USB PIC PROGRAMMER ( PICkit 2)
To make your own PICKit 2 PIC Programmer
Click Here To Go My new post


Schematic and Hardware




Saturday, April 30, 2011

USBasp - USB programmer for Atmel AVR controllers


About The Programmer
USBasp is a USB in-circuit programmer for Atmel AVR controllers. It simply consists of an ATMega48 and ATMega88 an ATMega8 and a couple of passive components. The programmer uses a firmware-only USB driver, no special USB controller is needed.

Features

  • Works under multiple platforms. Linux, Mac OS X and Windows are tested.
  • No special controllers or smd components are needed.
  • Programming speed is up to 5kBytes/sec.
  • SCK option to support targets with low clock speed (< 1,5MHz).

NOTE:- I have posted a new porgammer with same hardware as this but capable to program 8051 and avr both  with changing the firmware only.
click here to see USB 8051 & avr programmer'

Simple Steps to made This programmer

Step 1:-

Download:Firmware and circuit
The following packages include circuit and firmware.
Firmware is the software which going to be burn into programmer's microcontroller, this firmware have code to enable the programmer to communicate with pc via usb and target microcontroller

Click This link to dwonload the Firware and circuit      
usbasp.2011-05-28.tar.gz (519 kB )      UPDATED

Please refer to Readme.txt for details on building, installing and using USBasp.
Schematic USB AVR Mircrocontroller progammer

Step 2:-

Buy The parts You need
Part                   Descirption           Qty
ATMEGA8             Microcontroller           1
3.6 Volts              Zeaner Diode                 2
22pf                      Capacitor                       2             
100nf                    Capacitor                       1    
4.7uf                     capacitor                        1
12Mhz                  Crystal                             1 
10K                        Resistance                      1
1K                           Resistance                     3
68ohm                  Resistance                      2
2.2K                       Resistance                      1
LED                        Led  (Red & Geen)        2
USB connector                                             1
USB Cable                                                     1    
3 Way dip switch                                         1       


Friday, April 29, 2011

AVR Serial Port Programmer

About AVR Programmer




This simple COM PORT based  AVR atmega Programmer will allow you to painlessly transfer hex programs to most ATMEL AVR microcontrollers
without sacrificing your budget and time. It is more reliable than most other simple AVR programmers available out

there and can be built in very short amount of time.

AVR programmer consists of in-circuit serial programmer (dongle) and small pcb with a DIP socket where you can fit
your microcontroller and have it quickly programmed.

You may also use this programmer as a stand alone in-circuit serial programmer that can be used to conveniently
program AVR microcontrollers without removing them from the target circuit.

Entire AVR programmer has been build with using common parts and fits in the case of the serial connector. The socket pcb has been created to fit a 28-DIP AVR ATmega8 microcontroller, but you can build a socket pcb for any other AVR microcontroller out there. This AVR programmer is compatible with a popular PonyProg software that shows you a status bar of the programming progress.



AVR In-Circuit Serial Programmer Schematic