Get Free E-mail Updates

Enter your email address:

Delivered by FeedBurner

Search This Blog

Friday 10 August 2012

AVR - In System Programming

                         Almost all the AVR's support the ISP programming. ISP stands for In-system Programming which means that these microcontrollers can be programmed while they are with in the end circuit. This reduces cost and time for programming and also reduces the programming difficulty. In-System Programming allows programming and reprogramming of any AVR microcontroller positioned inside the end system. Using a simple Three-wire SPI interface, the In-System Programmer communicates serially with the AVR microcontroller, reprogramming all non-volatile memories on the chip.The info about the ISP programming is provided in the AVR doc0943.
                          
              For In-System Programming, the programmer is connected to the target using as few wires as possible. To program any AVR microcontroller in any target system, a simple Six-wire interface is used to connect the programmer to the target PCB.The Serial Peripheral Interface (SPI) consists of three wires: Serial ClocK (SCK), 
Master In – Slave Out (MISO) and 
Master Out – Slave In (MOSI). 
                In In-System Programming the programmer always operate as the Master, and the target system always operate as the Slave. The In-System Programmer (Master) provides the clock for the communication on the SCK Line. Each pulse on the SCK Line transfers one bit from the Programmer (Master) to the Target (Slave) on the Master Out – Slave In (MOSI) line. Simultaneously, each pulse on the SCK Line transfers one bit from the target (Slave) to the Programmer (Master) on the Master In – Slave Out (MISO) line.

Thursday 9 August 2012

AVR - Programming methods

There are many ways of programming the AVR family of Microcontrollers and these ways are described in this post of AVR Freaks.Thanks to Mr.abcminiuser for this post.The different methods are as follows.

METHOD 1: In System Programming (ISP)
Supported By: Vast majority of AVRs (see below posts)
Supported Programmers: AVRISP MKI/II, JTAG MKII, STK500, STK600, Dragon, AVRISP clones, AVR910 Programmers, AVRONE

    In System Programming is perhaps the most common method of programming the flash, EEPROM, fuse and lockbytes of the entire AVR line. ISP can program AVRs at extremely high clock rates (assuming the target AVR is running at a high frequency and the programmer supports it) and is the method of choice for almost all AVR hobbyists. There are many, many AVRISP clones and AVR910 programmers on the market in addition to simple do-it-yourself dongles which connect to your computer's parallel port.

    Recent new dongle designs may use the computer's serial port, however anecdotal evidence has said that this method is *extremely* slow due to technical limitations.

    ISP requires that the target AVR is running at a clock rate of at least four times that of the ISP clock. This is a common pitfall and a source of confusion to many new to AVRs.


METHOD 2: JTAG
Supported By: See AVRStudio Tools help for MKI and MKII device support
Supported Programmers: JTAG-ICE, JTAG-ICE MKII, Dragon, JTAG-ICE clones, AVRONE, STK600 (programming only)
    Technically JTAG is a debugging system, not a programming method. Still, the JTAG interface allows for the programming of an AVR which supports it.

Atmega32A - Architecture and Features


            The Atmel®AVR® ATmega32A is a low-power CMOS 8-bit microcontroller based on the AVR enhanced RISC architecture.As discussed earlier Atmega32A is a Mega AVR which has 32KB of Program memory and an Advanced AVR RISC Architecture. ATmega comes in two packages,DIP and TQFP packages.DIP package has 40 pins while TQFP's have 44 pins.DIP's are better used as it requires no soldering when used on a simple breadboard compared to TQFP which needs to be soldered to Targetboard. TQFP's are used in applications where the size of the board is to be decresaed and the board can be mass manufactured by standard PCB manufacturers only. RISC stands for Reduced Instruction Set Computing. A more detail of the RISC architecture is here. In short RISC architecture helps in fast execution of the instructions, by providing a separate space for instructions, called the FLASH Memory, thus separating the program instructions from the program data.
     

AVR Family Overview




ATmega32A is a microcontroller from ATmega series of AVR microcontrollers manufactured by Atmel manufacturers. The AVR was one of the first microcontroller families to use on-chip flash memory for program storage, as opposed to one-time programmable ROM, EPROM, or EEPROM used by other microcontrollers at the time.
       

             Another interesting fact is that AVR architecture was devised by two students at Norwegian Institute of Technology  Alf-Egil Bogen and Vegard Wollan.AVR is not an acronym but it is univeraslly accepted that it is named after it's designers as Alf (Egil Bogen) and Vegard (Wollan)'s Risc processor.The whole AVR family of Microcontrollers are categorised into six groups as follows
  • Tiny AVR's
  • Mega AVR's
  • Xmega AVR's
  • AVR's with FPGA
  • 32-bit AVR's and
  • Application specific AVR's

Wednesday 8 August 2012

Introduction

Isn't it exciting that a small chip doing excitingly extraordinary things. Most of us use Mobiles,laptops,etc which are indeed equipped with a large amount of tiny chips. Does it come to your genius brain any time that how these things work,what are they made of?,how they function and how they are made etc. Don't worry it isn't needed now because of the present fabrication technology.
But it is little exciting to look at how these tiny chips work. These chips are technically called the IC's which means Integrated Circuits. There are different classifications of these Integrated circuits. Broadly defined IC's may be digital or linear. Linear IC's are of better interest since they can be programmed to our requirement. Microprocessors and Microcontrollers belong to this category.
Microprocessors and Microcontrollers play an important role in most of the consumer electronics these days. Of the two Microcontrollers are better preferred since they are easy to handle and work with. On the otherhand microprocessors require a lot of additional elements like Memory,bus controllers,etc.So the simple way to build a small system is using Microcontroller.