AVR Studio Tutorial

Download as pdf or txt
Download as pdf or txt
You are on page 1of 8

AVR Studio Assembler/Simulator

Tutorial

AVR Studio 4 is a professional Integrated Development Environment (IDE) for writing and
debugging AVR applications in Windows 9x/NT/2000/XP environments. This tutorial assumes
that you have installed AVR Studio 4 on your computer. If you do not have AVR Studio yet, you
may obtain a copy of AVR Studio 4 from one of 3 places:
1. Atmel Corporation: http://www.atmel.com
2. AVR Freaks: http://www.avrfreaks.net
3. Borrow a CD from your instructor

This tutorial will guide you through the steps required for:
1. Executing the AVR Studio 4 Integrated Development Environment (IDE),
2. Typing in a program,
3. Assembling the program, and
4. Simulating a program

The first program you will enter is shown below (Figure 1). This program will initialize the B
and D ports on the ATMega128 AVR processor and then turn on a single LED connected to
PortB, pin 0.

;========================================================
;Project #1
;Written by: Steve Kuyath
;Date: 5/21/2007
;ver: 1.0
;file: C:\Documents and Settings\Stephen Kuyath\My Documents\AVR\Pr1
;Device: ATMega128
;========================================================

.nolist
.include "C:\Program Files\Atmel\AVR Tools\AvrAssembler2\Appnotes\m128def.inc"
.list

;===========================
; Declarations

.def temp =r16

;===========================
; Start Program

rjmp Init

;============================
Init: ser temp
out DDRB,temp
out DDRD,temp

clr temp
out PortB,temp
out PortD,temp

;============================
Start:
sbi PortB,0
cbi PortB,0
rjmp Start

Figure 1: LED On Program

Last update: May 24, 2007 1


AVR Studio Assembler/Simulator Tutorial

Step 1: Open AVR Studio 4 IDE. You should see the program banner shown below:

Figure 2: AVR Studio 4 Banner

Step 2: When IDE opens, you will see the programming and simulator environment as well as a
dialog box (Figure 3) requesting information: are you starting a new project or opening a saved
project?

Figure 3: AVR Studio IDE


Step 3: Click on the “New Project” button:

Figure 4: Welcome Dialog Box

Last update: May 24, 2007 2


AVR Studio Assembler/Simulator Tutorial

Step 4: In the next dialog box, choose the Atmel AVR Assembler as the project type:

Figure 5: Choose Atmel AVR Assembler

Step 5: Type in a project name and the initial file name:

Click on this box if you need to change directories

Figure 6: Type Project and Initial File Names

Step 6: Click on the “Next” button

Last update: May 24, 2007 3


AVR Studio Assembler/Simulator Tutorial

Step 7: Choose “AVR Simulator” for the Debug Platform and then scroll down the right window
to choose the ATmega128 AVR processor

Figure 7: Choose Simulator and ATmega128

Step 8: Click on the “Finish” button. You should then see the IDE (you may have to maximize
the editing window to see the same thing as shown in Figure 8):

Figure 8: AVR Studio 4 IDE

Last update: May 24, 2007 4


AVR Studio Assembler/Simulator Tutorial

Step 9: Type in the program as shown in Figure 1. Note the color-coded text. This is done
automatically by the IDE and helps you to make corrections as you go.

Figure 9: Typed Program


Step 10: When you have completed the program save it. It is also good practice to periodically
save your program as you type.

Step 11: Assemble your program. You may do this by selecting “Build” from the “Build Menu”
or by striking the [F7] key:

Figure 10: Program Assembled

Last update: May 24, 2007 5


AVR Studio Assembler/Simulator Tutorial

Step 12: Continue assembling and correcting errors until the program assembles without error
(note the green dot in the lower window and the comment that states: “Assembly complete, 0
errors, 0 warnings”) you are ready to simulate.

Step 13: Simulate the program. To start the simulator you may choose “Start Debugging” from
the “Debug Menu” or you may click on the arrow button as shown below:

Start Debugging button

Note: The arrow points to the next instruction (in


this case the 1st) to be executed

Figure 11:Start Simulation


Step 14: In the I/O View, open the “I/O ATMEGA128,” and the “PortB” views by clicking on
the + symbol.

Figure 12: I/O Views

Last update: May 24, 2007 6


AVR Studio Assembler/Simulator Tutorial

Step 15: Single step through your program by striking the [F11] key:

Figure 13: FF sent to Data Direction Register B (all pins outputs)

Figure 14: bit 0 set


Note: The “sbi PortB,0” (sbi is the “set bit”) instruction has been executed, although the pointer
is pointing at the next instruction. So, bit 0 in PortB is set (equal to 1). It is important to note 2
things:
1. Pin 0 (PinB0) on PortB has not gone high yet, even though bit 0 in PortB is set. PinB0
will go high as the next instruction is executed
2. The instruction: “cbi PortB,0” has not been executed yet.

Last update: May 24, 2007 7


AVR Studio Assembler/Simulator Tutorial

Step 16: Continue stepping through the program until you are sure that the program is executing
as designed.

Note: The next few screens may be a little confusing because the program sets bit 0 in PortB and
then immediately clears bit 0 in PortB. The simulators shows this, but shows that bit 0 on PinB
(the actual pin on the Atmega128) is one cycle behind bit 0 in PortB:

Figure 15: PinB0 is high

Figure 16: PinB0 is low

Last update: May 24, 2007 8

You might also like

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy