Skip to main content

Setting Up

     Before moving to actual tutorials, I will list out few basic hardware and software that will be required. I will also tell the need of these items in this post. I will also provide the links of the software and datasheets.

      Following is the list of the required hardware:
  1. Breadboard for mounting any circuit
  2. Connecting Wires: You can use standard single stranded wires or jumper cables
  3. Atmel's Atmega328-PU or Atmega328P-PU: This is a 28 PIN 8 bit micro-controller, you can get those easily in the market. You can also use any other 8 Bit micro-controller from Atmel, like Atmega8, Atmega168, Atmega16, etc. Since my tutorials will be mostly first conducted on Arduino Board and then standalone micro-controller I will suggest anyone from Atmega328/328P. I will be using Amega328-PU.
  4. Arduino Development Board: This hardware is totally optional. I will be using arduino hardware just to demonstrate the program difference between Arduino & Atmel Studio. You can use Arduino UNO, Nano, Mini, or Pro Mini. I will be using Arduino Nano.
    Arduino UNO
  5. A Programmer: There are many different programmers available for Atmel's Atmega series. In my case I will be using USBasp Programmer to upload the compiled program on to the chip. You can use other programmer like JTAG or ICE with onboard debugging capabilities.
    USBasp Programmer
     Now moving to the software that will be require. Here are some of the basic software and drivers that will be required for initial set up.
  1.  Atmel Studio: This is the Development Environment I will be using for writing and compiling codes for Atmega chip. This is the official IDE provided by Atmel that supports different micro-controllers manufactured by Atmel till the date. I am using Atmel Studio 7.
    Atmel Studio 7
  2. Arduino IDE: Like Arduino hardware even this piece of software is optional. The benefit of Arduino is that if you are a complete beginner you can easily learn with Arduino also you can upload Arduino program in a standalone Atmega. It is developed by Arduino team.
    Arduino IDE
  3. Zadig: Zadig is an application software written by Pete Batard that helps to install different USB drivers easily. This will be required to install USBasp driver.
    Zadig
  4. WinAVR: WinAVR is a collection opensource tools including C/C++ compiler, debugger and AVRDude for uploading the code to chip targeted at AVR series. In our case we will be using WinAVR for uploading the hex file using USBasp.
    WinAVR
  5. AVRDUDESS: AVRDUDESS is the Graphical User Interface for using with AVRDUDE to upload the hex file to your micro-controller. This program was developed by Zak Kemble.
    AVRDUDESS
This completes all the basic requirements for getting started with your new adventure. Last but not least I will provide the download links for the software tools I just mentioned. 

Comments

Popular Post

Atmega328/P: Basic Circuit and Configuring Fuse Bits

     Now that you have probably installed the driver for USBasp , it's time that we move on to mount the basic circuit for Atmega328 and get it running on the breadboard. You can get a new Atmega328/P micro-controller or just scavenge one from an Arduino UNO lying around. Before we mount the circuit on breadboard here's the of components that are required. Atmega328/P (28 PIN DIP package) 22pf Ceramic Capacitors Qty 2 nos. 16MHz crystal Qty 1 nos. [have 2-3 in spare just in case the one in use is damaged] Tactile Switch/Push Button Qty 1 nos. Resistor 10K Ohm Qty 1 nos. LED 1 nos. Breadboard Connecting Wires       The schematic below shows how to configure Atmega328/P on breadboard. I have posted a hand drawn schematic as well as an eagle schematic. Before you mount the circuit lets understand functions of pin that we are using to make a basic circuit of Atmega328/P. Configuring Atmega328/P [Click to Open) Pin 1 [PC6(RE...