programming avr on read b
TRANSCRIPT
PROGRAMMING AVR ON BREAD
BOARD
Jatinder Singh Chhabra(200601120)
Digvijay Singh (200601128)
PROGRAMMING AVR ON BREADBOARD
Programmer Circuit
Circuit which is used to program a micro controller
There are various techniques in practice and all of
them have their own advantages and
disadvantages
INDEX
LVP – Low Voltage Programming
HVSP – High Voltage System Programming
JTAG – Joint Test Action Group
LOW VOLTAGE PROGRAMMING
Also called - In System Programming
Program micro-controller on chip along with all
peripheral devices
Via SPI at working voltage of 2.7-6 V
Needs VCC, GND, RESET and 3pin for SPI
LOW VOLTAGE PROGRAMMING
Advantages:
Less chance of accidental damage
No need for separate power supply
Dis-advantages:
If fuse bits like reset when disabled than LVP cannot be
done
LOW VOLTAGE PROGRAMMING
Note:
Accidentally fuse bits changed and than high
voltage programming is needed
JTAG
Joint Test Action Group
Standard Test Access Port
Boundary-Scan Architecture
method for testing interconnection (wire lines) on printed
circuit boards
Used as an IC debug or probing port
JTAGEN Fuse needs to be enabled
JTAG
Break and step in functions for extensive on-chip
debugging
HIGH VOLTAGE PROGRAMMING
12V is applied to the RESET pin
All AVR devices can be programmed
The device is taken out of the system
HIGH VOLTAGE PROGRAMMING
Advantages
Work even if fuse bits are set
Some devices can only be programmed using HVSP
Disadvantages
Need two different power supplies
12V can damage if there is current leakage
Need to remove all peripheral devices
COMPUTER INTERFACE
USB
Serial Port(RS232)
Parallel Port
SERIAL
Can be connected to SPI or USART
High Voltage circuit is complex and shown only for
completeness
http://electrons.psychogenic.com/modules/arms/art/5/AVRInSystemProgrammer.php
SERIAL LOW VOLTAGE PROGRAMMING
CIRCUIT
SERIAL LOW VOLTAGE PROGRAMMING
CIRCUIT
http://www.scienceprog.com/avr-serial-and-parallel-high-voltage-programmer/
DAPA
Programming done through SPI
Parallel port is easily available on most of Systems
Pros and cons
Very simple circuit and cheap implementation
Keep parallel port cable short because clock is also
transmitted(SPI)
Command to check if circuit is ready
# uisp -dprog=dapa
Output : - Atmel AVR ATmega32 is found.
100 Ω resisters are used to protect uC from voltage
spikes
DAPA CIRCUIT
http://www.captain.at/electronics/atmel-programmer/
USB PROGRAMMER
Latest Generation of Programming Circuits.
Support for Universal Serial Bus (USB).
Programming done through SPI interface.
USB PROGRAMMER
http://www.ladyada.net/make/usbtinyisp/parts.html
USART
Programming possible with Boot loader
Fuse bits cannot be changed
Useful for program upgrades
USART PROGRAMMERS
Some Programmers come bundled with
microcontrollers which have bootloader installed on
them.
Their Programming circuit could be made extremely
simple.
Example is a microcontroller with USART
bootloader preinstalled can be programmed with 4
wires Vcc, gnd, Tx, Rx.
Negative point here will be that bundling software
on pc will also have to be constructed as default
programming softwares like avrdude or uisp may
not understand the underlying protocol.
SOFTWARE
With all the above circuit one requires a software on
computer.
Linux
Uisp
avr-gcc
Windows
Avr-studio
ponyprog
NOTE
Accidental changing fuse bits
Need to take care fuse bits get changed by mistake
Voltage Spike protection
High Baud rate need Crystal oscillators
Do not push an IC forcefully into the breadboard
REFERENCES
http://www.lancos.com/prog.html
http://electrons.psychogenic.com/modules/arms/art/
5/AVRInSystemProgrammer.php
http://www.scienceprog.com/avr-serial-and-parallel-
high-voltage-programmer/
http://support.atmel.no/bin/customer?=&action=vie
wKbEntry&id=343
http://www.captain.at/electronics/atmel-
programmer/